#ifndef __PNDDRCOPTREFLSURF_H__ #define __PNDDRCOPTREFLSURF_H__ /*! \brief Class for reflectivity of surfaces. Models the internal reflection probability of a surface. */ class PndDrcOptReflSurf : public PndDrcOptReflAbs { public: //! Empty constructor PndDrcOptReflSurf(); // implementation of abstract base class function PndDrcOptReflSurf* clone() const; /*! \brief Reflectivity of surface used for mirror surfaces or surfacec with internal reflection. \param ph The photon \param normal Normal vector of surface */ const Drc::Reflectivity reflectivity(PndDrcPhoton& ph, XYZVector normal) const; /*! \brief Set the internal reflection probability \param p The propability */ void setProb(double p){m_prob=p;}; /*! \brief Internal reflection probability \return The propability */ double prob(){return m_prob;}; private: double m_prob; //!< Reflection probability }; #endif