00001 
00002 
00003 
00004 
00005 
00006 
00007 #ifndef SOURCETABLE_H
00008 #define SOURCETABLE_H
00009 
00010 #include "CameoSet.h"
00011 #include "MergeTable.h"
00012 #include "Table.h"
00013 
00014 
00015 class SourceTable : public Table<Numeric>
00016 {
00017 public:
00019   SourceTable(TableData<Numeric>* aDataPtr, TableInfo* aInfoPtr)
00020     : Table<Numeric>(aDataPtr, aInfoPtr) { }
00021 
00023   ~SourceTable() { }
00024 
00027   void insertUserSupplied();
00028 
00034   void copyPassband(const MergeTable& aMergeTable,
00035                     const CameoSet& aCameoTables);
00036 
00042   void insertAstrometricData(const MergeTable& aMergeTable,
00043                              const CameoSet& aCameoTables);
00044 
00051   void calcMergedClass(const MergeTable& aMergeTable,
00052                        const CameoSet& aCameoTables);
00053 
00058   void finishOff();
00059 
00061   void fillExtinctionValues();
00062 
00064   void writeAsBinary();
00065 
00066 private:
00067   enum SourceClass
00068   {
00069     Saturated = -9,
00070     ProbGalaxy = -3,
00071     ProbStar,
00072     Star,
00073     Noise,
00074     Galaxy
00075   };
00076 };
00077 
00078 #endif