27 #ifndef GMODELSPATIALDIFFUSE_HPP
28 #define GMODELSPATIALDIFFUSE_HPP
64 virtual void clear(
void) = 0;
66 virtual std::string
classname(
void)
const = 0;
68 const bool& gradients =
false)
const = 0;
72 const double& radius)
const = 0;
74 const double& margin = 0.0)
const = 0;
GModelSpatialDiffuse(void)
Void constructor.
virtual void clear(void)=0
Clear object.
Energy value class definition.
Random number generator class definition.
XML element node class interface definition.
Sky direction class interface definition.
Abstract spatial model base class interface definition.
Random number generator class.
virtual void set_region(void) const =0
virtual GSkyDir mc(const GEnergy &energy, const GTime &time, GRan &ran) const =0
Class that handles photons.
void copy_members(const GModelSpatialDiffuse &model)
Copy class members.
virtual double eval(const GPhoton &photon, const bool &gradients=false) const =0
void init_members(void)
Initialise class members.
Abstract interface for the sky region class.
virtual void write(GXmlElement &xml) const =0
virtual std::string print(const GChatter &chatter=NORMAL) const =0
Print content of object.
virtual std::string classname(void) const =0
Return class name.
virtual double mc_norm(const GSkyDir &dir, const double &radius) const =0
virtual GModelSpatialDiffuse & operator=(const GModelSpatialDiffuse &model)
Assignment operator.
virtual bool contains(const GSkyDir &dir, const double &margin=0.0) const =0
void free_members(void)
Delete class members.
virtual GClassCode code(void) const
Return class code.
Abstract spatial model base class.
Abstract diffuse spatial model base class.
virtual GModelSpatialDiffuse * clone(void) const =0
Clones object.
virtual void read(const GXmlElement &xml)=0
Time class interface definition.
Class that handles energies in a unit independent way.
virtual ~GModelSpatialDiffuse(void)
Destructor.