#include <RecordHelper.h>
Public Types | |
typedef coral::AttributeList | AttributeList |
typedef std::vector < FieldHandlerBase< TOutput > * > | FieldVector |
Public Member Functions | |
template<typename TField > | |
void | addField (const std::string &fieldName, void(TOutput::*setter)(const TField)) |
virtual void | extractRecord (const AttributeList &source, TOutput &dest) |
virtual std::vector< std::string > | getColumnList () |
virtual | ~RecordHelper () |
Protected Attributes | |
FieldVector | fields_ |
Description: A microframework to deal with the need to fill rather boring getter/setter classes from Coral classes.
Definition at line 151 of file RecordHelper.h.
typedef coral::AttributeList RecordHelper< TOutput >::AttributeList |
Definition at line 153 of file RecordHelper.h.
typedef std::vector<FieldHandlerBase<TOutput>*> RecordHelper< TOutput >::FieldVector |
A list of field handlers that determine how to handle a record.
Definition at line 155 of file RecordHelper.h.
virtual RecordHelper< TOutput >::~RecordHelper | ( | ) | [inline, virtual] |
Destructor: Wipe out all the field handlers.
Definition at line 187 of file RecordHelper.h.
References RecordHelper< TOutput >::fields_.
void RecordHelper< TOutput >::addField | ( | const std::string & | fieldName, |
void(TOutput::*)(const TField) | setter | ||
) | [inline] |
Definition at line 157 of file RecordHelper.h.
References gather_cfg::cout, RecordHelper< TOutput >::fields_, and mergeVDriftHistosByStation::name.
{ #ifdef RECORDHELPER_DEBUG std::cout << "Adding field " << fieldName << ", type = " << typeid(TField).name() << std::endl; #endif this->fields_.push_back(new typename GroupFieldHandler<TOutput, typename Group<TOutput>::Type , TField>::Type(fieldName, setter)); }
virtual void RecordHelper< TOutput >::extractRecord | ( | const AttributeList & | source, |
TOutput & | dest | ||
) | [inline, virtual] |
Iterates over all known fields and extracts the fields of the record in source to the object in dest.
Definition at line 168 of file RecordHelper.h.
References RecordHelper< TOutput >::fields_.
virtual std::vector<std::string> RecordHelper< TOutput >::getColumnList | ( | ) | [inline, virtual] |
Returns a list of database column names for the added fields.
Definition at line 176 of file RecordHelper.h.
References RecordHelper< TOutput >::fields_.
FieldVector RecordHelper< TOutput >::fields_ [protected] |
List of known fields. TODO: Make private, add base type addField.
Definition at line 195 of file RecordHelper.h.
Referenced by RecordHelper< TOutput >::addField(), RecordHelper< TOutput >::extractRecord(), RecordHelper< TOutput >::getColumnList(), and RecordHelper< TOutput >::~RecordHelper().