Updated about 12 years ago by Knödlseder Jürgen
GBase¶
GBase
is the interface class for all classes in GammaLib. The class in an abstract base class which defines the methods that all GammaLib classes are required to implement. Below the interface definition:
class GBase { public: virtual ~GBase(void) {} virtual void clear(void) = 0; virtual GBase* clone(void) const = 0; virtual std::string print(void) const = 0; };A number of classes in GammaLib will not be derived from
GBase
. These are for example registry classes, which will be derived from GRegistry. Below a list of classes that will not be derived from GBase
(with the reason for not basing the class on GBase
in parentheses):
GException
(special)GLog
(special)GFunction
(reduce implementation load)GIntegrand
(reduce implementation load)GOptimizerFunction
(reduce implementation load)GRegistry
(interface class)GSparseNumeric
(internal)GSparseSymbolic
(internal)GTestSuite
(reduce implementation load)