The Astro-WISE class hierarchy¶
At the heart of the Astro-WISE library lies the persistence class hierarchy, These classes provide the definition of the object that are operated on when processing and analyzing data. Since these classes are persistent, the results of these operations will be automatically saved in a database.
Below is an overview of this class hierachy. Remember that derived classes
inherit attributes and methods from base classes. For example, BaseFrame
,
the base class for all classes representing image data, inherits from
DataObject
, which represents all objects that represent some sort of data
on disk.
DBObject
|
+DataObject--------------+---------------+
| |
+--AssociateList * +--Astrom
+--BaseCatalog +--AstrometricCorrection *
| | +--AstrometricParameters *
| +--AstrometricCatalog * +--BaseAtmostphericExtinction
| +--Catalog * | |
| | | | +--AtmostphericExtinction *
| | +--PhotSrcCatalog * | | |
| | | | +--AtmosphericExtinctionFrames *
| +--PhotRefCatalog | | +--AtmostphericExtinctionZerpoint *
| | | |
+--BaseFrame | +--AtmostphericExtinctionCurve *
| | | +--AtmosphericExtinctionCoefficient *
| +--BaseFlatFrame |
| | | +--Chip
| | +--DomeFlatFrame * +--Config
| | +--MasterFlatFrame * | |
| | +--TwilightFlatFrame * | +--AddImageCalibsConfig
| | | +--AplastromConfig
| +--BiasFrame * | +--AssociateConfig
| +--FringeFrame * | +--AstromConfig
| +--IlluminationCorrectionFrame * | +--PreastromConfig
| +--NightSkyFlatFrame * | +--PrephotomConfig
| +--QuickCheckFrame * | +--MakeSscConfig
| +--RawFrame * | +--SextractorConfig
| | | | +--SwarpConfig
| | +--RawBiasFrame * |
| | +--RawDarkFrame * +--DarkCurrent *
| | +--RawDomeFlatFrame * +--Filter
| | +--RawScienceFrame * +--GAstrometric *
| | +--RawTwilightFlatFrame * +--DarkCurrent *
| | +--Imstat
| +--ReducedScienceFrame * +--Instrument
| +--RegriddedBaseFrame +--Lamp
| | | +--PhotTransformation
| | +--CoaddedRegriddedFrame * +--ReadNoise *
| | +--RegriddedFrame * +--SubWinStat *
| |
| +--ShutterCheckFrame *
| +--WeightFrame *
|
+--GainLinearity *
+--IlluminationCorrection *
+--PhotometricReport
| |
| +--PhotometricSkyReport
|
+--PhotExtinctionCurve
+--PhotometricExtinctionReport *
+--PhotometricParameters *
+--PhotSkyBrightness
+--PixelMap
| |
| +--ColdPixelMap *
| +--CosmicMap *
| +--HotPixelMap *
| +--LinearityMap *
| +--SatelliteMap *
| +--SaturatedPixelMap *
|
+--RawFitsData
+--SourceList *
The class hierarchy of Astro-WISE. Asterisks mark objects that have amake()
method.
The following key classes are defined in the hierarchy:
DBObject
- All objects deriving from DBObjects are persistent. Hence, all these objects can be saved and retrieved from a database
DataObject
- All DataObject objects have associated bulk data (FITS files, catalogs) which can be stored and retrieved from a central data server
BaseFrame
- All objects derived from BaseFrame describe the contents of associated FITS images and have methods that operate on these images
Catalog
- All Catalog objects describe LDAC catalogs and define methods that operate on these catalogs
Config
- These objects store the contents of the configuration files of external packages (SExtractor, SWarp, LDAC)
All classes that define a make method (marked by asterisk in above figure) also derive from the mixin [1] class ProcessTarget.
ProcessTarget
- Classes that also derive from this class have make() methods and quality control flags (QCFlag() properties)
[1] | A ‘mixin’ class is a class that adds behaviour to another class in a derived class using multiple inheritance |