Luiza
v03-01
|
Processor to identify new objects in the sequence of object lists. More...
#include <SelectNewObjects.h>
Public Member Functions | |
virtual Processor * | newProcessor () |
Return a new instance of the processor. More... | |
virtual void | init () |
virtual void | startAnalysis (GloriaDataContainer *data) |
Called before first data loop. More... | |
virtual void | processData (GloriaDataContainer *data) |
virtual void | check (GloriaDataContainer *data) |
Called for every loop - right after processData() call. More... | |
virtual void | concludeAnalysis (GloriaDataContainer *data) |
Called after all data processing loops to finalize the analysis. | |
virtual void | end () |
Public Member Functions inherited from luiza::Processor | |
Processor (const std::string &typeName) | |
Default constructor. More... | |
virtual | ~Processor () |
Destructor. | |
virtual const std::string & | type () const |
Return type name for the processor (as set in constructor). | |
virtual const std::string & | name () const |
Return name of this processor. | |
virtual const std::string & | logLevelName () const |
Return name of the local verbosity level of this processor - "" if not set. | |
virtual StringParameters * | parameters () |
Return parameters defined for this Processor. | |
virtual void | printDescription () |
Print information about this processor in ASCII steering file format. | |
virtual void | printDescriptionXML (std::ostream &stream=std::cout) |
Print information about this processor in XML steering file format. | |
template<class T > | |
void | printParameters () |
Print the parameters and their values depending on the given verbosity level. | |
void | printParameters () |
Print the parameters and their values with verbosity level MESSAGE. | |
const std::string & | description () |
Description of processor. | |
bool | isFirstEvent () |
True if first event in processEvent(evt) - use this e.g. to initialize histograms etc. | |
GloriaCollectionType | getGloriaInType (const std::string &colName) |
Return the input type for the collection colName. More... | |
GloriaCollectionType | getGloriaOutType (const std::string &colName) |
Return the output type for the collection colName. More... | |
bool | isInputCollectionName (const std::string ¶meterName) |
Check if parameter defines collection. More... | |
bool | isOutputCollectionName (const std::string ¶meterName) |
True if the given parameter defines an LCIO output collection */. | |
Protected Member Functions | |
void | printEndMessage () const |
Print end message. | |
Protected Member Functions inherited from luiza::Processor | |
void | setReturnValue (bool val) |
Set the return value for this processor - typically at end of processEvent(). More... | |
void | setReturnValue (const std::string &name, bool val) |
Set a named return value for this processor - typically at end of processEvent() More... | |
template<class T > | |
void | registerProcessorParameter (const std::string &name, const std::string &description, T ¶meter, const T &defaultVal, int setSize=0) |
Register a steering variable for this processor - call in constructor of processor. More... | |
void | registerInputCollection (const GloriaCollectionType &type, const std::string &name, const std::string &description, std::string ¶meter, const std::string &defaultVal, int setSize=0) |
Register parameter describing input collection. More... | |
void | registerOutputCollection (const GloriaCollectionType &type, const std::string &name, const std::string &description, std::string ¶meter, const std::string &defaultVal, int setSize=0) |
Register parameter describing output collection. More... | |
void | registerInputCollections (const GloriaCollectionType &type, const std::string &name, const std::string &description, StringVec ¶meter, const StringVec &defaultVal, int setSize=0) |
Register parameter describing input collections. More... | |
template<class T > | |
void | registerOptionalParameter (const std::string &name, const std::string &description, T ¶meter, const T &defaultVal, int setSize=0) |
Same as registerProcessorParameter except that the parameter is optional. More... | |
bool | parameterSet (const std::string &name) |
Tests whether the parameter has been set in the steering file. | |
template<class T > | |
void | message (const std::string &message) const |
Print message according to verbosity level. More... | |
template<class T > | |
void | message (const std::basic_ostream< char, std::char_traits< char > > &m) const |
Similar to message(const std::string& message) More... | |
std::stringstream & | log () const |
Returns an empty stringstream that is used by the message method. | |
virtual void | setProcessorParameters (StringParameters *parameters) |
Allow friend class CCProcessor to change/reset processor parameters. | |
virtual void | updateParameters () |
Allow friend class CCProcessor to update processor parameters. | |
virtual void | updateTelescopeParameters (std::string name) |
Allow to update processor parameters for given telescope name. More... | |
virtual void | updateTelescopeParameters (GloriaFitsHeader *header) |
Update processor parameters based on FITS header. More... | |
Protected Attributes | |
string | _inputCollectionName |
Name of the collection containing input table. | |
string | _outputCollectionName |
Name of the output table collection (for selected rows) | |
bool | _permanentCollection |
Flag the output collection to be permanent. | |
double | _matchingTolerance |
Position matching tolerance for object and reference stars. | |
double | _signalThreshold |
Threshold for the new object signal value, in units of noise. | |
std::vector< std::string > | _signalColumns |
Names of the signal and noise columns in the object table. | |
std::vector< std::string > | _positionColumns |
Names of the position columns in the object table. | |
std::vector< int > | _imageSize |
Size of the image corresponding to the object list given. | |
int | _edgeCut |
Edge cut to remove new objects identified very close to the image edge. | |
Protected Attributes inherited from luiza::Processor | |
std::string | _description |
Describes what the processor does. Set in constructor. | |
Processor to identify new objects in the sequence of object lists.
This processor matches objects from the input object list with objects from the previous list (previous frame). If an object is found which was not present in the previous list, it is considered as the new objects candidate. Additional cut can be applied on the signal to noise ratio. If astrometry is stored in the object list, it is also checked that the object was within the previous field of view. Selected rows from the input object list are copied to the output table.
InputCollectionName | - Name of the collection containing input tables. |
OutputCollectionName | Name of the collection where the resulting table should be stored. If missing, input collection table will be modified. |
PermanentCollection | Flag output collection, as permanent, not deleted after loop is finished (default is false) |
MatchingTolerance | Tolerance for object position matching, given in degrees |
SignalThreshold | - Threshold for the signal value, given in units of noise level (above background level). For signal below this threshold given object is considered a background fluctuation and is not included in the output list. |
SignalColumns | Names of the object table columns from which object brightness and noise level should be taken. These are 'Signal' and 'Noise' by default. |
PositionColumns | Names of the object table columns from which object position should be taken. These are 'RA' and 'DEC' by default (default column names for Luiza astrometry processor), but can be changed by user. |
ImageSize | Size of the image from which the object list was created. If not given, it is taken from astometry parameters (assuming that the reference point was set to the centre of the image). |
EdgeCut | New objects which are found closer to the image edge than given number of pixels (on the old or new frame) are not considered as new objects. |
|
virtual |
Called for every loop - right after processData() call.
Can be used to check processing and/or produce check plots.
Reimplemented from luiza::Processor.
References _inputCollectionName, _outputCollectionName, gloria::GloriaFitsTable::GetRowNumber(), gloria::GloriaDataContainer::GetTableCollection(), and gloria::GloriaDataContainer::TableCollectionExists().
|
virtual |
Called after data processing for clean up.
Reimplemented from luiza::Processor.
References printEndMessage().
|
virtual |
Called at the begin of the job before anything is read. Use to initialize the processor, e.g. book histograms.
Reimplemented from luiza::Processor.
References _inputCollectionName, _outputCollectionName, _positionColumns, _signalColumns, gloria::GloriaFitsTable::AddColumn(), gloria::GloriaFitsTable::GetVectorOf(), luiza::Processor::name(), and luiza::Processor::parameters().
|
inlinevirtual |
Return a new instance of the processor.
Has to be implemented by subclasses.
Implements luiza::Processor.
|
virtual |
Called for every data loop
Reimplemented from luiza::Processor.
References _edgeCut, _imageSize, _inputCollectionName, _matchingTolerance, _outputCollectionName, _permanentCollection, _positionColumns, _signalColumns, _signalThreshold, gloria::GloriaFitsTable::AddColumn(), gloria::GloriaFitsTable::AdjustColumns(), gloria::GloriaFitsTable::ClearTable(), gloria::GloriaFitsTable::ColumnExists(), gloria::GloriaFitsTable::CopyTableRow(), gloria::GloriaDataContainer::CreateTableCollection(), gloria::GloriaFitsTable::EmptyClone(), gloria::GloriaFitsTable::EmptyTable(), gloria::GloriaFitsTable::GetColumn(), gloria::GloriaSkyCatalog::GetObjectNumber(), gloria::GloriaFitsTable::GetRowNumber(), gloria::GloriaDataContainer::GetTableCollection(), gloria::GloriaFitsTable::GetVectorOf(), gloria::GloriaFitsTable::InsertColumn(), gloria::GloriaSkyCatalog::MatchObjectTable(), luiza::Processor::setReturnValue(), and gloria::GloriaDataContainer::TableCollectionExists().
|
virtual |
Called before first data loop.
Can be used to create permanent data structures, if needed.
Reimplemented from luiza::Processor.