-
All files needed for SPI interface implementation have been created by copying the existing COMPTEL interface and by making the relevant modifications. TODOs have been added at the relevant sections of the code to signal the code that needs to be implemented. A dummy unit test has been created by cloning the relevant C++ and Python tests from the COMPTEL interface. The code compiles and all unit tests pass successfully. This essentially closes action #744.
-
The read() and write() methods now handle the reading and writing of instrument specific model scale factors. The spatial() method uses the scale factors to scale the IRF accordingly, if required.
-
A vector of GModelPar objects has been added to the GModel class that can hold instrument specific model scaling factors. The name of each parameter specifies the instrument, which will be converted automatically in upper case. The scale factors can be set and accessed using the scale() methods. If the scale method is called for an instrument for which no instrument specific scale factor has been defined, unity is returned (hence the model will not be scaled). The class now provides the protected methods read_scales() and write_scales() for reading and writing of scale factors from and to a XML file. The scale factors are written to an optional <scaling> tag, which contains a list of tags of type <instrument ... />. These methods are used by the GModelSky class for reading and writing the scale factors.
-
The model parameter constructor allows allocating of a GModelPar object using a parameter name, a parameter value and an optional parameter scaling factor. This allows for one-line allocation of a GModelPar object.
-
Also added a clarifying comment to GModelRadialDisk::update(). No code change.
-
Fixes Bug #694.
-
As result of a copy-paste error, the normalization minimum has been set to 0.1 while the minimum value of the energy cut-off has not been set.
-
The file was corrected so that no more warnings occur during Doxygen documentation generation.
-
Since we have to query the parameter to determine it's status, the isvalid(), isundefined() and isnotanumber() methods now call query(). This implies that the methods had to be passed non-const, as query() modifies the members of the parameter.
-
The parameter validity is checked before returning a value. This ensures that invalid values are not inadvertedly passed to the executable. The isvalid() method can be used to ensure that a parameter is valid before accessing it.
-
It is recommended to pass all arguments to exceptions by reference to avoid memory allocation during exception throwing.
-
The indent parameter allows to signal whether a line is indented. The total length of the parameter name is reduced by the amount of indentation.
-
Before, GTIs have been printed in the native GammaLib system.
-
Write the MJD reference into 2 keywords, splitting into the integer and the fractional part, assures the highest accuracy for the reference time. We use this format now as the default, and only write in a single floating point value if the FITS file contains already a single floating point value keyword.
-
The reference() method returns the native GammaLib time reference().
-
The GTime class now represents the time in a GammaLib native time reference. The reference is no longer stored as a class member. Conversion methods have been added to convert the time into any possible reference system. The time reference systems is represented by the new class GTimeReference. The met() method has been removed, and replaced by the secs() method which returns the time in the native format in units of seconds. This is the way how GTime stores the time. An additional method days() gives the time in the same reference in units of days.
-
This class implements a time reference.
-
The class has been adapted to the new GTime interface. In addition, it now stores the time reference that is used when reading and writing data from and to a FITS file. In that way, the original time reference system is preserved, while times are always stored in the native GammaLib time reference.
-
The GTime interface has been reworked, and some adaption was needed. One of the main changes was the replacement of the met() method by the secs() method. The secs() method returns now the time in seconds in the native GammaLib time reference.
-
The std::vector<GTime> typedef has been replaced by the GTimes time container class.
-
The std::vector<GTime> typedef has been replaced by a time container class.