27#ifndef GLATPSFBASE_HPP
28#define GLATPSFBASE_HPP
64 virtual double psf(
const double& offset,
const double& logE,
65 const double& ctheta) = 0;
78 const bool&
front(
void)
const;
Definition of interface for all GammaLib classes.
FITS table abstract base class interface definition.
FITS file class interface definition.
Fermi-LAT response table class definition.
Interface class for all GammaLib classes.
Abstract interface for FITS table.
Abstract Fermi/LAT point spread function base class.
virtual GLATPsfBase * clone(void) const =0
Clones object.
GLATPsfBase(void)
Void constructor.
virtual void read(const GFitsTable &table)=0
double m_scale_par2
PSF scaling parameter 2.
void write_scale(GFits &file) const
Write PSF scale factors.
const double & scale_par1(void) const
Return first scaling parameter.
GLATResponseTable m_rpsf_bins
PSF energy and cos theta binning.
virtual std::string print(const GChatter &chatter=NORMAL) const =0
Print content of object.
void free_members(void)
Delete class members.
virtual double psf(const double &offset, const double &logE, const double &ctheta)=0
bool m_front
PSF is for front section?
const double & scale_index(void) const
Return scaling index.
virtual void write(GFits &file) const =0
void init_members(void)
Initialise class members.
const bool & front(void) const
Signal that point spread function is for front section.
double m_scale_par1
PSF scaling parameter 1.
const double & scale_par2(void) const
Return second scaling parameter.
int nenergies(void) const
Return number of energies in point spread function.
const double & costhetamin(void) const
Return cosine theta minimum.
virtual int version(void) const =0
virtual ~GLATPsfBase(void)
Destructor.
virtual void clear(void)=0
Clear object.
virtual std::string classname(void) const =0
Return class name.
int size(void) const
Return number of bins in point spread function.
double m_scale_index
PSF scaling index.
void read_scale(const GFitsTable &hdu)
Read PSF scale factors from FITS table.
int ncostheta(void) const
Return number of cosine theta bins in point spread function.
GLATPsfBase & operator=(const GLATPsfBase &psf)
Assignment operator.
bool has_phi(void) const
Signal that point spread function has Phi dependence.
double m_min_ctheta
Minimum valid cos(theta)
void copy_members(const GLATPsfBase &psf)
Copy class members.
double scale_factor(const double &energy) const
Return scale factor for energy (in MeV)
Interface for the Fermi LAT Response table class.
const int & ncostheta(void) const
Return number of cosine theta bins in response table.
const int & nenergies(void) const
Return number of energies in response table.