Luiza  v03-01
SelectNewObjects.h
1 // -*- mode: c++; mode: auto-fill; mode: flyspell-prog; -*-
2 
3 #ifndef SelectNewObjects_h
4 #define SelectNewObjects_h 1
5 
6 #include "luiza/Processor.h"
7 #include "gloria/GloriaSkyCatalog.h"
8 #include "gloria/GloriaAstrometry.h"
9 
10 using namespace gloria;
11 
12 namespace luiza {
13 
14 
16 
79  class SelectNewObjects : public Processor {
80 
81  public:
82 
83  virtual Processor* newProcessor() { return new SelectNewObjects ; }
84 
85 
87 
91  virtual void init() ;
92 
94 
96  virtual void startAnalysis( GloriaDataContainer* data ) ;
97 
100  virtual void processData( GloriaDataContainer* data ) ;
101 
102 
103  virtual void check( GloriaDataContainer* data ) ;
104 
105 
107 
108  virtual void concludeAnalysis( GloriaDataContainer* data ) ;
109 
112  virtual void end() ;
113 
114 
115  protected:
116 
118  void printEndMessage() const ;
119 
122 
125 
128 
129 
132 
135 
137  std::vector<std::string> _signalColumns;
138 
140  std::vector<std::string> _positionColumns;
141 
142 
144  std::vector<int> _imageSize;
145 
146 
148  int _edgeCut;
149 
150  // Previous frame is stored as a catalog - allow using standard matching tools
151  GloriaSkyCatalog *_previousFrame;
152  std::vector<long> *_newFlagVec;
153 
154  GloriaAstrometry _previousAstro;
155  bool _astroStored;
156  int _oldSizeX, _oldSizeY;
157 
158  int _nLoops ;
159  int _nInputTables ;
160  } ;
161 
162 } // end namespace luiza
163 #endif
164 
165 
166 
namespace for data storing and exchange formats
Definition: GloriaAstrometry.h:15
Processor to identify new objects in the sequence of object lists.
Definition: SelectNewObjects.h:79
std::vector< std::string > _signalColumns
Names of the signal and noise columns in the object table.
Definition: SelectNewObjects.h:137
int _edgeCut
Edge cut to remove new objects identified very close to the image edge.
Definition: SelectNewObjects.h:148
double _matchingTolerance
Position matching tolerance for object and reference stars.
Definition: SelectNewObjects.h:131
Class for storing all data processed in Luiza.
Definition: GloriaDataContainer.h:82
Base class for Luiza processors.
Definition: Processor.h:55
Class for storing catalogs of sky objects (eg. stars)
Definition: GloriaSkyCatalog.h:36
string _inputCollectionName
Name of the collection containing input table.
Definition: SelectNewObjects.h:121
virtual Processor * newProcessor()
Return a new instance of the processor.
Definition: SelectNewObjects.h:83
std::vector< std::string > _positionColumns
Names of the position columns in the object table.
Definition: SelectNewObjects.h:140
Namespace for Luiza framework.
Definition: CCCollection.h:6
double _signalThreshold
Threshold for the new object signal value, in units of noise.
Definition: SelectNewObjects.h:134
std::vector< int > _imageSize
Size of the image corresponding to the object list given.
Definition: SelectNewObjects.h:144
string _outputCollectionName
Name of the output table collection (for selected rows)
Definition: SelectNewObjects.h:124
bool _permanentCollection
Flag the output collection to be permanent.
Definition: SelectNewObjects.h:127