27#ifndef GMODELTEMPORAL_HPP
28#define GMODELTEMPORAL_HPP
70 virtual std::string
type(
void)
const = 0;
72 const bool& gradients =
false)
const = 0;
82 bool has_par(
const std::string& name)
const;
137 return (
int)
m_pars.size();
Definition of interface for all GammaLib classes.
Model parameter class interface definition.
Random number generator class definition.
Time class interface definition.
Time container class definition.
Interface class for all GammaLib classes.
Abstract temporal model base class.
virtual void read(const GXmlElement &xml)=0
virtual std::string classname(void) const =0
Return class name.
virtual GModelTemporal * clone(void) const =0
Clones object.
virtual GModelTemporal & operator=(const GModelTemporal &model)
Assignment operator.
GModelTemporal(void)
Void constructor.
bool has_par(const std::string &name) const
Checks if parameter name exists.
void free_members(void)
Delete class members.
virtual double eval(const GTime &srcTime, const bool &gradients=false) const =0
int size(void) const
Return number of parameters.
void copy_members(const GModelTemporal &model)
Copy class members.
virtual std::string type(void) const =0
void init_members(void)
Initialise class members.
virtual std::string print(const GChatter &chatter=NORMAL) const =0
Print content of object.
virtual void clear(void)=0
Clear object.
virtual GModelPar & operator[](const int &index)
Returns model parameter.
std::vector< GModelPar * > m_pars
Parameter pointers.
virtual GTimes mc(const double &rate, const GTime &tmin, const GTime &tmax, GRan &ran) const =0
void autoscale(void)
Autoscale parameters.
virtual void write(GXmlElement &xml) const =0
GModelPar & at(const int &index)
Returns model parameter.
virtual ~GModelTemporal(void)
Destructor.
Random number generator class.