-
The coding and design conventions (CDC) document was also updated.
-
The GContainer class was included in support.i to expose correctly base class methods. Const versions of methods have been removed from GLATInstDir, GEnergies, GFits and GTestSuites as they are anyways ignored by SWIG.
-
The GFits class now derives from GContainer and implements all generic container class methods (at(), size(), isempty(), set(), append(), insert(), remove(), reserve(), extend()). The hashdu() method has been renamed to contains() for compliance with other container classes. The hdu() methods have been renamed to at(), also for compliance. Boolean arguments are now passed as const references, and members are returned as const references. HDU access operators[] have been implemented to access FITS extensions without range checking.
-
I went over all .hpp to make sure that the GBase.hpp file is properly included, and no supoerfluous other includes remain. I also checked that no ostream and GLog friends are no longer available. I went over all .i files to make sure that classes are derived from GBase.
-
All classes our now derived from GBase. For this we had to define and to implement the clear() method for all classes. ostream and GLog friends have also been removed, as they are no implemented at the GBase level.
-
The hdu(), image() and table() methods perform now automatic type casting to the appropriate derived class. To achieve this type casting, output typemaps have been defined for GFitsHDU*, GFitsImage* and GFitsTable*. The typemaps analyse the type of the actual pointer and perform the casts as appropriate.