| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

DataLoaderAlg Class Reference

#include <DataLoaderAlg.h>

Inheritance diagram for DataLoaderAlg:

[legend]
Collaboration diagram for DataLoaderAlg:
[legend]
List of all members.

Public Member Functions

 DataLoaderAlg (const std::string &name, ISvcLocator *pSvcLocator)
virtual ~DataLoaderAlg ()
virtual StatusCode initialize ()
virtual StatusCode execute ()
virtual StatusCode finalize ()
DayaBay::ReadoutHeaderGetCurrentHeaderObject () const
virtual StatusCode sysInitialize ()
virtual StatusCode sysExecute ()
virtual StatusCode preExecute ()
virtual StatusCode postExecute ()
virtual StatusCode sysFinalize ()
IDataProviderSvcarcSvc () const
void putTES (DataObject *obj, std::string location) const
TYPE * getTES (std::string location) const
TYPE * getAES (std::string location, int index) const
std::vector< DataObject * > getAEScollection (std::string location) const
int getExecNum ()
std::string Location () const
void put (IDataProviderSvc *svc, DataObject *object, const std::string &address, const bool useRootInTES=true) const
void put (DataObject *object, const std::string &address, const bool useRootInTES=true) const
Gaudi::Utils::GetData< TYPE
>::return_type 
get (IDataProviderSvc *svc, const std::string &location, const bool useRootInTES=true) const
Gaudi::Utils::GetData< TYPE
>::return_type 
get (const std::string &location, const bool useRootInTES=true) const
TYPE * getDet (IDataProviderSvc *svc, const std::string &location) const
TYPE * getDet (const std::string &location) const
bool exist (IDataProviderSvc *svc, const std::string &location, const bool useRootInTES=true) const
bool exist (const std::string &location, const bool useRootInTES=true) const
bool existDet (IDataProviderSvc *svc, const std::string &location) const
bool existDet (const std::string &location) const
TYPE * getOrCreate (IDataProviderSvc *svc, const std::string &location, const bool useRootInTES=true) const
TYPE * getOrCreate (const std::string &location, const bool useRootInTES=true) const
bool registerContext () const
INTupleSvcevtColSvc () const
IAlgContextSvccontextSvc () const
TOOL * tool (const std::string &type, const std::string &name, const IInterface *parent=0, bool create=true) const
TOOL * tool (const std::string &type, const IInterface *parent=0, bool create=true) const
SERVICE * svc (const std::string &name, const bool create=true) const
IUpdateManagerSvcupdMgrSvc () const
IDataProviderSvcfastContainersSvc () const
StatusCode Error (const std::string &msg, const StatusCode st=StatusCode::FAILURE, const size_t mx=10) const
StatusCode Warning (const std::string &msg, const StatusCode st=StatusCode::FAILURE, const size_t mx=10) const
StatusCode Print (const std::string &msg, const StatusCode st=StatusCode::SUCCESS, const MSG::Level lev=MSG::INFO) const
StatusCode Assert (const bool ok, const std::string &message="", const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const
StatusCode Assert (const bool ok, const char *message, const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const
StatusCode Exception (const std::string &msg, const GaudiException &exc, const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const
StatusCode Exception (const std::string &msg, const std::exception &exc, const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const
StatusCode Exception (const std::string &msg="no message", const StatusCode sc=StatusCode(StatusCode::FAILURE, true)) const
MsgStreammsgStream (const MSG::Level level) const
MsgStreamalways () const
MsgStreamfatal () const
MsgStreamerr () const
MsgStreamerror () const
MsgStreamwarning () const
MsgStreaminfo () const
MsgStreamdebug () const
MsgStreamverbose () const
MsgStreammsg () const
const Statisticscounters () const
StatEntitycounter (const std::string &tag) const
MSG::Level msgLevel () const
bool msgLevel (const MSG::Level level) const
void resetMsgStream () const
bool typePrint () const
bool propsPrint () const
bool statPrint () const
bool errorsPrint () const
long printStat (const MSG::Level level=MSG::ALWAYS) const
long printErrors (const MSG::Level level=MSG::ALWAYS) const
long printProps (const MSG::Level level=MSG::ALWAYS) const
void registerCondition (const std::string &condition, StatusCode(CallerClass::*mf)()=NULL)
void registerCondition (const std::string &condition, CondType *&condPtrDest, StatusCode(CallerClass::*mf)()=NULL)
void registerCondition (char *condition, StatusCode(CallerClass::*mf)()=NULL)
void registerCondition (TargetClass *condition, StatusCode(CallerClass::*mf)()=NULL)
StatusCode runUpdate ()
TransientFastContainer< T > * getFastContainer (const std::string &location, typename TransientFastContainer< T >::size_type initial=0)
StatusCode release (const IInterface *interface) const
unsigned long release ()
const std::string & context () const
const std::string & rootInTES () const
double globalTimeOffset () const
virtual StatusCode sysStart ()
virtual StatusCode sysReinitialize ()
virtual StatusCode sysRestart ()
virtual StatusCode sysStop ()
virtual StatusCode sysBeginRun ()
virtual StatusCode sysEndRun ()
virtual const std::string & name () const
virtual const std::string & version () const
virtual StatusCode configure ()
virtual StatusCode terminate ()
virtual StatusCode start ()
virtual StatusCode stop ()
virtual StatusCode reinitialize ()
virtual StatusCode restart ()
virtual bool isExecuted () const
virtual void setExecuted (bool state)
virtual void resetExecuted ()
virtual StatusCode beginRun ()
virtual StatusCode endRun ()
virtual Gaudi::StateMachine::State FSMState () const
virtual Gaudi::StateMachine::State targetFSMState () const
virtual bool isEnabled () const
virtual bool filterPassed () const
virtual void setFilterPassed (bool state)
StatusCode service (const std::string &name, T *&psvc, bool createIf=true) const
StatusCode service (const std::string &svcType, const std::string &svcName, T *&psvc) const
void setOutputLevel (int level)
IAuditorSvcauditorSvc () const
IChronoStatSvcchronoSvc () const
IChronoStatSvcchronoStatService () const
IDataProviderSvcdetSvc () const
IDataProviderSvcdetDataService () const
IConversionSvcdetCnvSvc () const
IConversionSvcdetDataCnvService () const
IDataProviderSvceventSvc () const
IDataProviderSvcevtSvc () const
IDataProviderSvceventDataService () const
IConversionSvceventCnvSvc () const
IConversionSvceventDataCnvService () const
IHistogramSvchistoSvc () const
IHistogramSvchistogramDataService () const
IMessageSvcmsgSvc () const
IMessageSvcmessageService () const
INTupleSvcntupleSvc () const
INTupleSvcntupleService () const
IRndmGenSvcrandSvc () const
IToolSvctoolSvc () const
IExceptionSvcexceptionSvc () const
ISvcLocatorserviceLocator () const
ISvcLocatorsvcLoc () const
StatusCode createSubAlgorithm (const std::string &type, const std::string &name, Algorithm *&pSubAlg)
std::vector< Algorithm * > * subAlgorithms () const
virtual StatusCode setProperty (const Property &p)
virtual StatusCode setProperty (const std::string &s)
virtual StatusCode setProperty (const std::string &n, const std::string &v)
StatusCode setProperty (const std::string &name, const TYPE &value)
virtual StatusCode getProperty (Property *p) const
virtual const PropertygetProperty (const std::string &name) const
virtual StatusCode getProperty (const std::string &n, std::string &v) const
virtual const std::vector<
Property * > & 
getProperties () const
StatusCode setProperties ()
PropertydeclareProperty (const std::string &name, T &property, const std::string &doc="none") const
PropertydeclareRemoteProperty (const std::string &name, IProperty *rsvc, const std::string &rname="") const
IMonitorSvcmonitorSvc () const
void declareInfo (const std::string &name, const T &var, const std::string &desc) const
void declareInfo (const std::string &name, const std::string &format, const void *var, int size, const std::string &desc) const
unsigned long addRef ()
StatusCode queryInterface (const InterfaceID &riid, void **)

Static Public Member Functions

static const InterfaceIDinterfaceID ()
static const InterfaceIDinterfaceID ()
static const InterfaceIDinterfaceID ()

Public Attributes

 SUCCESS
 NO_INTERFACE
 VERSMISMATCH
 LAST_ERROR

Protected Types

typedef std::map< std::string,
StatEntity
Statistics
typedef std::map< std::string,
unsigned int > 
Counter
typedef std::vector< IAlgTool * > AlgTools
typedef std::pair< IInterface *,
std::string > 
ServiceEntry
typedef std::vector< ServiceEntryServices

Protected Member Functions

DayaBay::ReadoutHeaderMakeHeaderObject ()
void InitializeHeader (DayaBay::HeaderObject *header)
void AppendInputHeader (const DayaBay::HeaderObject *header) const
StatusCode releaseTool (const IAlgTool *tool) const
StatusCode releaseSvc (const IInterface *svc) const
bool isInitialized () const
bool isFinalized () const
int outputLevel () const
IntegerPropertyoutputLevelProperty ()
void initOutputLevel (Property &prop)

Protected Attributes

DayaBay::HeaderObjectm_headerObject
bool m_pullMode
std::string m_location

Static Protected Attributes

static const bool IgnoreRootInTES
static const bool UseRootInTES

Private Member Functions

StatusCode openNextFile ()
StatusCode readNextEvent (DayaBay::RawEvent *&nextEvent)
StatusCode loadEventData (DayaBay::RawEvent *event, DayaBay::ReadoutHeader *readoutHeader)
StatusCode findTriggerTime (DayaBay::RawEvent *event, TimeStamp &triggerTime)
Site::Site_t convertSite (unsigned int daqSiteId)
DetectorId::DetectorId_t convertDetector (unsigned int daqDetectorId)
int convertConnector (unsigned int daqChannelId)
int convertBoard (unsigned int daqSlotId)
DayaBay::Trigger::TriggerType_t convertTriggerType (DayaBay::LocalTriggerData *ltbData, const DayaBay::Detector *detector)
TimeStamp convertTriggerTime (DayaBay::LocalTriggerData *ltbData)
DayaBay::FeeGain::FeeGain_t convertAdcRange (unsigned int daqAdcRange)
StatusCode unpackEvent (DayaBay::RawEvent *event, DayaBay::Readout *readout)
StatusCode unpackLtbModule (DayaBay::RawModule *module, DayaBay::Readout *readout)
StatusCode unpackFeeModule (DayaBay::RawModule *module, DayaBay::ReadoutPmtCrate *readout)

Private Attributes

std::vector< std::string > m_inputFiles
bool m_usePacked
bool m_useUnpacked
DayaBay::RawDataReaderm_reader
unsigned int m_fileIndex
unsigned int m_fileYear
unsigned int m_fileMonth
unsigned int m_fileDay
unsigned int m_utcDay

Detailed Description

Definition at line 32 of file DataLoaderAlg.h.


Member Typedef Documentation

typedef std::map< std::string, StatEntity > DybAlgorithm< DayaBay::ReadoutHeader >::Statistics [protected, inherited]

Reimplemented from DybBaseAlg.

typedef std::map< std::string, unsigned int > DybAlgorithm< DayaBay::ReadoutHeader >::Counter [protected, inherited]

Reimplemented from DybBaseAlg.

typedef std::vector< IAlgTool * > DybAlgorithm< DayaBay::ReadoutHeader >::AlgTools [protected, inherited]

Reimplemented from DybBaseAlg.

typedef std::pair< IInterface *, std::string > DybAlgorithm< DayaBay::ReadoutHeader >::ServiceEntry [protected, inherited]

Reimplemented from DybBaseAlg.

typedef std::vector< ServiceEntry > DybAlgorithm< DayaBay::ReadoutHeader >::Services [protected, inherited]

Reimplemented from DybBaseAlg.


Constructor & Destructor Documentation

DataLoaderAlg::DataLoaderAlg ( const std::string &  name,
ISvcLocator pSvcLocator 
)

Definition at line 14 of file DataLoaderAlg.cc.

00015   : DybAlgorithm<DayaBay::ReadoutHeader>(name,pSvcLocator)
00016   , m_inputFiles()
00017   , m_usePacked(true)
00018   , m_useUnpacked(true)
00019   , m_reader(0)
00020   , m_fileIndex(0)
00021   , m_fileYear(0)
00022   , m_fileMonth(0)
00023   , m_fileDay(0)
00024   , m_utcDay(0)
00025 {
00026   declareProperty("InputFiles",m_inputFiles,
00027                   "List of input data files");
00028   declareProperty("UsePacked",m_usePacked=true,"Load Packed Data");
00029   declareProperty("UseUnpacked",m_useUnpacked=true,"Load Unpacked Data");
00030 }

DataLoaderAlg::~DataLoaderAlg (  )  [virtual]

Definition at line 32 of file DataLoaderAlg.cc.

00033 {
00034 }


Member Function Documentation

StatusCode DataLoaderAlg::initialize (  )  [virtual]

Reimplemented from DybAlgorithm< DayaBay::ReadoutHeader >.

Definition at line 36 of file DataLoaderAlg.cc.

00037 {
00038   // Initialize the data loader
00039   m_fileIndex = 0;
00040   return StatusCode::SUCCESS;
00041 }

StatusCode DataLoaderAlg::execute (  )  [virtual]

Reimplemented from DybAlgorithm< DayaBay::ReadoutHeader >.

Definition at line 43 of file DataLoaderAlg.cc.

00044 {
00045   // Load one readout event
00046 
00047   // Get next event data
00048   DayaBay::RawEvent* event = 0;
00049   StatusCode sc = this->readNextEvent(event);
00050   if( !sc.isSuccess() ) return sc;
00051 
00052   // Create output header
00053   DayaBay::ReadoutHeader* readoutHeader = MakeHeaderObject();
00054 
00055   // Load data into header
00056   sc = this->loadEventData(event, readoutHeader);
00057 
00058   delete event;
00059   return sc;
00060 }

StatusCode DataLoaderAlg::finalize (  )  [virtual]

Reimplemented from DybAlgorithm< DayaBay::ReadoutHeader >.

Definition at line 62 of file DataLoaderAlg.cc.

00063 {
00064 
00065   // Delete old file reader
00066   if(m_reader){
00067     delete m_reader;
00068     m_reader=0;
00069   }
00070   m_fileIndex=0;
00071   return StatusCode::SUCCESS;
00072 }

StatusCode DataLoaderAlg::openNextFile (  )  [private]

Definition at line 76 of file DataLoaderAlg.cc.

00077 {
00078   // Open the next input data file.
00079 
00080   // Delete old file reader
00081   if(m_reader){
00082     delete m_reader;
00083     m_reader=0;
00084   }
00085 
00086   // Check if there are more files
00087   if(m_fileIndex >= m_inputFiles.size()){
00088     warning() << "No more files to read" << endreq; 
00089     return StatusCode::FAILURE;
00090   }
00091 
00092   // Create new file reader
00093   m_reader = new DayaBay::RawDataReader;
00094   if(!m_reader){
00095     error() << "Failed to create new file reader" << endreq;
00096     return StatusCode::FAILURE;
00097   }
00098 
00099   // Open next file
00100   if(!m_reader->open( m_inputFiles[m_fileIndex].c_str() )){
00101     error() << "Failed to open input file: " << m_inputFiles[m_fileIndex] 
00102             << endreq;
00103     delete m_reader;
00104     m_reader=0;
00105     return StatusCode::FAILURE;
00106   }
00107 
00108   return StatusCode::SUCCESS;
00109 }

StatusCode DataLoaderAlg::readNextEvent ( DayaBay::RawEvent *&  nextEvent  )  [private]

Definition at line 111 of file DataLoaderAlg.cc.

00112 {
00113   // Read the next event record
00114 
00115   DayaBay::RawEvent* event = 0;
00116   while( !event ){
00117 
00118     // Check if reader is ready
00119     if(!m_reader){
00120       StatusCode sc = this->openNextFile();
00121       if(! sc.isSuccess() ){
00122         return sc;
00123       }
00124     }
00125 
00126     // Read the next record
00127     DayaBay::RawRecord* record = m_reader->nextRecord();
00128     if(!record){
00129       error() << "Failed to read next record from file: " 
00130               << m_inputFiles[m_fileIndex] << endreq;
00131       return StatusCode::FAILURE;
00132     }
00133 
00134     // Check the record type
00135     if( !record->isDataSeparator() ){
00136       // Not a data separator record.
00137       std::stringstream message;
00138       record->dump( message );
00139       info() << message.str() << endreq;
00140       if( record->isFileStart() ){
00141         DayaBay::RawFileStart* fileStart = dynamic_cast<DayaBay::RawFileStart*>(record);
00142         if(fileStart){
00143           this->m_fileYear = fileStart->date() % 10000;
00144           this->m_fileMonth = (fileStart->date() / 10000) % 100;
00145           this->m_fileDay = (fileStart->date() / 1000000) % 100;
00146           this->m_utcDay = 0;
00147         }
00148       }
00149       if( record->isFileEnd() ){
00150         // End of file.  Close and increment file index
00151         delete m_reader;
00152         m_reader = 0;
00153         m_fileIndex++;
00154       }
00155       delete record;
00156       continue;
00157     }
00158 
00159     // Process the data separator
00160     DayaBay::RawDataSeparator* dataSeparator = 
00161       dynamic_cast<DayaBay::RawDataSeparator*>(record);
00162     if( !dataSeparator ){
00163       error() << "Failed to process data separator" << endreq;
00164       std::stringstream message;
00165       record->dump( message );
00166       error() << message.str() << endreq;
00167       delete record;
00168       return StatusCode::FAILURE;
00169     }
00170     // Get Payload data
00171     DayaBay::RawData* data = dataSeparator->data();
00172     if( !data ){
00173       error() << "Failed to load payload data" << endreq;
00174       std::stringstream message;
00175       record->dump( message );
00176       error() << message.str() << endreq;
00177       delete record;
00178       return StatusCode::FAILURE;
00179     }
00180     // Check for event data
00181     if( !data->isEventType() ){
00182       // Not event data
00183       std::stringstream message;
00184       data->dump( message );
00185       info() << message.str() << endreq;
00186       delete data;
00187       delete record;
00188       continue;
00189     }
00190 
00191     // Found event data
00192     event = dynamic_cast<DayaBay::RawEvent*>(data);
00193     if( !event ){
00194       error() << "Failed to read event" << endreq;
00195       std::stringstream message;
00196       data->dump( message );
00197       error() << message.str() << endreq;
00198       delete data;
00199       delete record;
00200       return StatusCode::FAILURE;
00201     }
00202   }
00203 
00204   nextEvent = event;
00205   return StatusCode::SUCCESS;
00206 }

StatusCode DataLoaderAlg::loadEventData ( DayaBay::RawEvent event,
DayaBay::ReadoutHeader readoutHeader 
) [private]

Definition at line 209 of file DataLoaderAlg.cc.

00211 {
00212   // Fill Readout 
00213 
00214   // Find the trigger time
00215   TimeStamp triggerTime;
00216   StatusCode sc = this->findTriggerTime(event,triggerTime);
00217   if(!sc.isSuccess()){
00218     warning() << "Failed to find trigger time for event: " << event->eventId()
00219               << endreq;
00220   }
00221 
00222   // Set the context
00223   Site::Site_t site = this->convertSite( event->siteId() );
00224   Context context(site,
00225                   SimFlag::kData,
00226                   triggerTime,
00227                   (DetectorId::DetectorId_t)(event->detectorId()));
00228 
00229   readoutHeader->setContext(context);
00230   readoutHeader->setEarliest(triggerTime);
00231   readoutHeader->setLatest(triggerTime);
00232 
00233   // Construct the readout
00234   DayaBay::Detector detector(this->convertSite(event->siteId()),
00235                              this->convertDetector(event->detectorId()));
00236 
00237   DayaBay::Readout* readout = 0;
00238   if( detector.isAD() || detector.isWaterShield() ){
00239     readout = new DayaBay::ReadoutPmtCrate();
00240   }else if( detector.detectorId() == DetectorId::kRPC){
00241     readout = new DayaBay::ReadoutRpcCrate();
00242   }else{
00243     error() << "Unknown detector: \"" << detector.detName() << "\","
00244             << " cannot make readout." << endreq;
00245     return StatusCode::FAILURE;
00246   }
00247 
00248   // Need to set detector for proper persistency
00249   readout->setDetector(detector);
00250   
00251   // Fill readout
00252   if(m_usePacked){
00253     // Packed data
00254     readout->setRawEvent( event->clone() );
00255   }
00256 
00257   if(m_useUnpacked){
00258     // Unpacked data
00259     sc = this->unpackEvent(event, readout);
00260     if( !sc.isSuccess() ){
00261       delete readout;
00262       return sc;
00263     }
00264   }
00265   // Add the readout to the header
00266   readoutHeader->setReadout( readout );
00267   readout->setHeader( readoutHeader );
00268 
00269   return StatusCode::SUCCESS;
00270 }

StatusCode DataLoaderAlg::findTriggerTime ( DayaBay::RawEvent event,
TimeStamp triggerTime 
) [private]

Definition at line 273 of file DataLoaderAlg.cc.

00275 {
00276   // Find the trigger time for this event
00277   if(!event){
00278     error() << "Cannot find time of invalid event" << endreq;
00279     return StatusCode::FAILURE;
00280   }
00281   // Search raw data block for trigger time
00282   bool foundTriggerTime = false;
00283   while( DayaBay::RawModule* module = event->nextModule() ){
00284     if( module->isLocalTriggerModule() ){
00285       while( DayaBay::DataFragment* fragment = module->nextDataFragment() ){
00286         if( fragment->isLocalTriggerData() ){
00287           DayaBay::LocalTriggerData* ltbData = 
00288             dynamic_cast<DayaBay::LocalTriggerData*>(fragment);
00289           if(!ltbData){
00290             error() << "Failed to access local trigger data fragment" << endreq;
00291             return StatusCode::FAILURE;
00292           }
00293           triggerTime = this->convertTriggerTime(ltbData);
00294           foundTriggerTime = true;
00295           break;
00296         }
00297         delete fragment;
00298       }
00299       if( foundTriggerTime ) break;
00300     }
00301     delete module;
00302   }
00303   event->resetModule();
00304   if(!foundTriggerTime)   return StatusCode::FAILURE;
00305   return StatusCode::SUCCESS;
00306 }

Site::Site_t DataLoaderAlg::convertSite ( unsigned int  daqSiteId  )  [private]

Definition at line 357 of file DataLoaderAlg.cc.

00358 {
00359   // Convert site definition from DAQ to Offline convention 
00360   switch(daqSiteId){
00361   case 1:
00362     return Site::kDayaBay;
00363   case 2:
00364     return Site::kLingAo;
00365   case 3:
00366     return Site::kFar;
00367   case 4:
00368     return Site::kMid;
00369   case 6:
00370     return Site::kSAB;
00371   default:
00372     break;
00373   }
00374   return Site::kUnknown;
00375 }

DetectorId::DetectorId_t DataLoaderAlg::convertDetector ( unsigned int  daqDetectorId  )  [private]

Definition at line 377 of file DataLoaderAlg.cc.

00379 {
00380   // Convert detector definition from DAQ to Offline convention 
00381   switch(daqDetectorId){
00382   case 1:
00383     return DetectorId::kAD1;
00384   case 2:
00385     return DetectorId::kAD2;
00386   case 3:
00387     return DetectorId::kAD3;
00388   case 4:
00389     return DetectorId::kAD4;
00390   case 5:
00391     return DetectorId::kIWS;
00392   case 6:
00393     return DetectorId::kOWS;
00394   case 7:
00395     return DetectorId::kRPC;
00396   default:
00397     break;
00398   }
00399   return DetectorId::kUnknown;
00400 }

int DataLoaderAlg::convertConnector ( unsigned int  daqChannelId  )  [private]

Definition at line 407 of file DataLoaderAlg.cc.

00408 {
00409   return daqChannelId+1;
00410 }

int DataLoaderAlg::convertBoard ( unsigned int  daqSlotId  )  [private]

Definition at line 402 of file DataLoaderAlg.cc.

00403 {
00404   return daqSlotId;
00405 }

DayaBay::Trigger::TriggerType_t DataLoaderAlg::convertTriggerType ( DayaBay::LocalTriggerData ltbData,
const DayaBay::Detector detector 
) [private]

Definition at line 412 of file DataLoaderAlg.cc.

00415 {
00416   // Convert Online trigger type to Offline convention
00417   unsigned int triggerType = DayaBay::Trigger::kUnknown;
00418   if(ltbData->isManualTrigger())
00419     triggerType |= DayaBay::Trigger::kManual;
00420   if(ltbData->isCrossTrigger())
00421     triggerType |= DayaBay::Trigger::kCross;
00422   if(ltbData->isPeriodicTrigger())
00423     triggerType |= DayaBay::Trigger::kPeriodic;
00424   if(ltbData->isMultiplicityTrigger())
00425     triggerType |= DayaBay::Trigger::kMult;
00426   // FIXME: Need to add all Esum trigger types to offline convention
00427   if(ltbData->isEsumAdcTrigger())
00428     triggerType |= DayaBay::Trigger::kESum;
00429   if(ltbData->isEsumCompHighTrigger())
00430     triggerType |= DayaBay::Trigger::kESum;
00431   if(ltbData->isEsumCompLowTrigger())
00432     triggerType |= DayaBay::Trigger::kESum;
00433   if(ltbData->isEsumCompAllTrigger())
00434     triggerType |= DayaBay::Trigger::kESum;
00435 
00436   switch(detector->detectorId()){
00437   case DetectorId::kAD1:
00438     triggerType |= DayaBay::Trigger::kAD1;
00439     break;
00440   case DetectorId::kAD2:
00441     triggerType |= DayaBay::Trigger::kAD2;
00442     break;
00443   case DetectorId::kAD3:
00444     triggerType |= DayaBay::Trigger::kAD3;
00445     break;
00446   case DetectorId::kAD4:
00447     triggerType |= DayaBay::Trigger::kAD4;
00448     break;
00449   case DetectorId::kIWS:
00450     triggerType |= DayaBay::Trigger::kIWS;
00451     break;
00452   case DetectorId::kOWS:
00453     triggerType |= DayaBay::Trigger::kOWS;
00454     break;
00455   default:
00456     break;
00457  }
00458 
00459   return static_cast<DayaBay::Trigger::TriggerType_t>(triggerType);
00460 }

TimeStamp DataLoaderAlg::convertTriggerTime ( DayaBay::LocalTriggerData ltbData  )  [private]

Definition at line 309 of file DataLoaderAlg.cc.

00310 {
00311   //Unpack Trigger time from raw LTB data block
00312   TimeStamp triggerTime;
00313   if(ltbData->isUnixTime()){
00314     triggerTime = TimeStamp(ltbData->unixtime(),
00315                             ltbData->nanosecond()+ltbData->accumulation());
00316   }else if(ltbData->isUtcTime()){
00317     // This data format provides no 'year'
00318     // Estimate the year from the file start time
00319     if(  ltbData->days()  <  this->m_utcDay ){
00320       // Catch case where file spans new year
00321       this->m_fileYear++;
00322     }
00323     triggerTime = TimeStamp(this->m_fileYear,
00324                             1 /*month*/,
00325                             ltbData->days()+1 /*day in year*/,
00326                             ltbData->hour(),
00327                             ltbData->minute(),
00328                             ltbData->second(),
00329                             ltbData->nanosecond()+ltbData->accumulation(),
00330                             true /*UTC*/);
00331     this->m_utcDay = ltbData->days();
00332   }else{
00333     // Date format from LTB Data version 0
00334     // The trigger times in this format have many issues; see DocDB-4635
00335     // Override using the file start time
00336     // Fix bug caused by 61s in a minute and 61m in an hour
00337     unsigned int seconds = ltbData->hour()*61*61 
00338       + ltbData->minute()*61 
00339       + ltbData->second();
00340     unsigned int hour = seconds / 3600;
00341     unsigned int minute = (seconds - hour*3600) / 60;
00342     unsigned int second = (seconds - (hour*3600 + minute*60));
00343     int timezoneOffset = -8*60*60; /* 8hr offset of PRC from UTC */
00344     triggerTime = TimeStamp(this->m_fileYear,  //ltbData->year(),
00345                             this->m_fileMonth, //ltbData->month(),
00346                             this->m_fileDay,   //ltbData->day(),
00347                             hour,
00348                             minute,
00349                             second,
00350                             (int)(ltbData->clock()*12.5) /* 80MHz clock */,
00351                             true /*use UTC with timezone offset*/,
00352                             timezoneOffset);
00353   }
00354   return triggerTime;
00355 }

DayaBay::FeeGain::FeeGain_t DataLoaderAlg::convertAdcRange ( unsigned int  daqAdcRange  )  [private]

Definition at line 462 of file DataLoaderAlg.cc.

00464 {
00465   // Convert ADC Range definition from DAQ to Offline convention 
00466   switch(daqAdcRange){
00467   case 0:
00468     return DayaBay::FeeGain::kHigh;
00469   case 1:
00470     return DayaBay::FeeGain::kLow;
00471   default:
00472     break;
00473   }
00474   return DayaBay::FeeGain::kUnknown;
00475 }

StatusCode DataLoaderAlg::unpackEvent ( DayaBay::RawEvent event,
DayaBay::Readout readout 
) [private]

Definition at line 478 of file DataLoaderAlg.cc.

00480 {
00481   // Unpack raw data into readout object
00482 
00483   // Loop over modules
00484   while( DayaBay::RawModule* module = event->nextModule() ){
00485     StatusCode sc;
00486     if( module->isLocalTriggerModule() ){
00487       sc = this->unpackLtbModule(module, readout);
00488     }else if( module->isPmtFeeModule() ){
00489       sc = this->unpackFeeModule(module, 
00490                      dynamic_cast<DayaBay::ReadoutPmtCrate*>(readout));
00491     }else if( module->isFlashAdcModule() ){
00492       //sc = this->unpackFlashAdcModule(module, readout);
00493     }else if( module->isRpcRomModule() ){
00494       //sc = this->unpackRpcRomModule(module, readout);
00495     }else if( module->isRpcRtmModule() ){
00496       //sc = this->unpackRpcRomModule(module, readout);
00497     }else{
00498       warning() << "Cannot unpack unknown module type: " 
00499                 << module->moduleType()<< endreq;
00500       sc = StatusCode::FAILURE;
00501     }
00502     if( !sc.isSuccess() ){
00503       // Gracefully continue even if there is trouble reading a module
00504       continue;
00505     }
00506     delete module;
00507   }
00508 
00509   return StatusCode::SUCCESS;
00510 }

StatusCode DataLoaderAlg::unpackLtbModule ( DayaBay::RawModule module,
DayaBay::Readout readout 
) [private]

Definition at line 512 of file DataLoaderAlg.cc.

00514 {
00515   // Unpack the trigger data module
00516   bool firstTriggerFragment = true;
00517   TimeStamp triggerTime;
00518 
00519   while( DayaBay::DataFragment* fragment = module->nextDataFragment() ){
00520     if( fragment->isLocalTriggerData() ){
00521       // Process the trigger data fragment
00522       DayaBay::LocalTriggerData* ltbData = 
00523         dynamic_cast<DayaBay::LocalTriggerData*>(fragment);
00524       if(!ltbData){
00525         warning() << "Bad Local Trigger Data fragment" << endreq;
00526         continue;
00527       }
00528       triggerTime = this->convertTriggerTime(ltbData);
00529       if(firstTriggerFragment){
00530         // Set trigger time, type, number according to first trigger data block
00531         readout->setTriggerTime( triggerTime );
00532         readout->setTriggerType(this->convertTriggerType(ltbData, 
00533                                                       &(readout->detector())));
00534         // Get Trigger Number from head fragment
00535         DayaBay::HeadFragment* headFragment = module->headFragment();
00536         if( headFragment ){
00537           readout->setTriggerNumber( headFragment->triggerNumber() );
00538           delete headFragment;
00539         }else{
00540           warning() << "Missing head fragment!" << endreq;
00541         }
00542         firstTriggerFragment = false;
00543       }else{
00544         if(triggerTime != readout->triggerTime()){
00545           TimeStamp dtTrigger( triggerTime );
00546           dtTrigger.Subtract( readout->triggerTime() );
00547           debug() << "Additional trigger at dT = " <<  dtTrigger.GetSeconds()
00548                   << " [s]" << endreq;
00549         }
00550       }
00551     }else{
00552       warning() << "Unknown LTB data fragment type: " << fragment->dataType() 
00553                 << endreq;
00554     }
00555     delete fragment;
00556   }
00557   return StatusCode::SUCCESS;
00558 }

StatusCode DataLoaderAlg::unpackFeeModule ( DayaBay::RawModule module,
DayaBay::ReadoutPmtCrate readout 
) [private]

Definition at line 560 of file DataLoaderAlg.cc.

00562 {
00563   // Unpack the front-end electronics data module
00564   if(!readout){
00565     warning() << "Trying to add FEE data to a non-PMT readout"
00566               << endreq;
00567     return StatusCode::FAILURE;
00568   }
00569 
00570   while( DayaBay::DataFragment* fragment = module->nextDataFragment() ){
00571     if( fragment->isFeePeakData() ){
00572       // Process the FEE peak-finding data fragment
00573       DayaBay::FeePeakData* feePeakData = 
00574         dynamic_cast<DayaBay::FeePeakData*>(fragment);
00575       if(!feePeakData){
00576         warning() << "Bad FEE Peak-finding Data fragment" << endreq;
00577         continue;
00578       }
00579       // Add channel data to readout
00580       DayaBay::FeeChannelId channelId(
00581                           this->convertBoard(module->slot()),
00582                           this->convertConnector(feePeakData->channel()),
00583                           readout->detector().site(),
00584                           readout->detector().detectorId()); 
00585 
00586       DayaBay::ReadoutPmtChannel& feeChannel = readout->channel(channelId);
00587       if(feeChannel.channelId() != channelId){
00588         // New channel, initialize
00589         feeChannel.setChannelId(channelId);
00590         feeChannel.setMode(0x1); // Peak-finding
00591         feeChannel.setReadout(readout);
00592       }
00593       // Add hit data
00594       feeChannel.tdc().push_back( feePeakData->tdc() );
00595       feeChannel.tdcHitCount().push_back( feePeakData->tdcHitCount() );
00596       feeChannel.adc().push_back( feePeakData->adc() );
00597       feeChannel.adcRange().push_back( 
00598                            this->convertAdcRange(feePeakData->adcRange()) );
00599       feeChannel.adcCycle().push_back( feePeakData->peakCycle() );
00600       if( feePeakData->hasAdcPedestal() )
00601         feeChannel.pedestal().push_back( feePeakData->adcPedestal() ); 
00602     }else{
00603       warning() << "Unknown FEE data fragment type: " << fragment->dataType() 
00604                 << endreq;
00605     }
00606     delete fragment;
00607   }
00608   return StatusCode::SUCCESS;
00609 }

DayaBay::ReadoutHeader * DybAlgorithm< DayaBay::ReadoutHeader >::GetCurrentHeaderObject (  )  const [inherited]

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::sysInitialize (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::sysExecute (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::preExecute (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::postExecute (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::sysFinalize (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

IDataProviderSvc * DybAlgorithm< DayaBay::ReadoutHeader >::arcSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

void DybAlgorithm< DayaBay::ReadoutHeader >::putTES ( DataObject obj,
std::string  location 
) const [inherited]

Reimplemented from DybBaseAlg.

TYPE * DybAlgorithm< DayaBay::ReadoutHeader >::getTES ( std::string  location  )  const [inherited]

Reimplemented from DybBaseAlg.

TYPE * DybAlgorithm< DayaBay::ReadoutHeader >::getAES ( std::string  location,
int  index 
) const [inherited]

Reimplemented from DybBaseAlg.

std::vector< DataObject * > DybAlgorithm< DayaBay::ReadoutHeader >::getAEScollection ( std::string  location  )  const [inherited]

Reimplemented from DybBaseAlg.

int DybAlgorithm< DayaBay::ReadoutHeader >::getExecNum (  )  [inherited]

Reimplemented from DybBaseAlg.

std::string DybAlgorithm< DayaBay::ReadoutHeader >::Location (  )  const [inherited]

Reimplemented from DybBaseAlg.

void DybAlgorithm< DayaBay::ReadoutHeader >::put ( IDataProviderSvc svc,
DataObject object,
const std::string &  address,
const bool  useRootInTES = true 
) const [inherited]

Reimplemented from DybBaseAlg.

void DybAlgorithm< DayaBay::ReadoutHeader >::put ( DataObject object,
const std::string &  address,
const bool  useRootInTES = true 
) const [inherited]

Reimplemented from DybBaseAlg.

Gaudi::Utils::GetData< TYPE >::return_type DybAlgorithm< DayaBay::ReadoutHeader >::get ( IDataProviderSvc svc,
const std::string &  location,
const bool  useRootInTES = true 
) const [inherited]

Reimplemented from DybBaseAlg.

Gaudi::Utils::GetData< TYPE >::return_type DybAlgorithm< DayaBay::ReadoutHeader >::get ( const std::string &  location,
const bool  useRootInTES = true 
) const [inherited]

Reimplemented from DybBaseAlg.

TYPE * DybAlgorithm< DayaBay::ReadoutHeader >::getDet ( IDataProviderSvc svc,
const std::string &  location 
) const [inherited]

Reimplemented from DybBaseAlg.

TYPE * DybAlgorithm< DayaBay::ReadoutHeader >::getDet ( const std::string &  location  )  const [inherited]

Reimplemented from DybBaseAlg.

bool DybAlgorithm< DayaBay::ReadoutHeader >::exist ( IDataProviderSvc svc,
const std::string &  location,
const bool  useRootInTES = true 
) const [inherited]

Reimplemented from DybBaseAlg.

bool DybAlgorithm< DayaBay::ReadoutHeader >::exist ( const std::string &  location,
const bool  useRootInTES = true 
) const [inherited]

Reimplemented from DybBaseAlg.

bool DybAlgorithm< DayaBay::ReadoutHeader >::existDet ( IDataProviderSvc svc,
const std::string &  location 
) const [inherited]

Reimplemented from DybBaseAlg.

bool DybAlgorithm< DayaBay::ReadoutHeader >::existDet ( const std::string &  location  )  const [inherited]

Reimplemented from DybBaseAlg.

TYPE * DybAlgorithm< DayaBay::ReadoutHeader >::getOrCreate ( IDataProviderSvc svc,
const std::string &  location,
const bool  useRootInTES = true 
) const [inherited]

Reimplemented from DybBaseAlg.

TYPE * DybAlgorithm< DayaBay::ReadoutHeader >::getOrCreate ( const std::string &  location,
const bool  useRootInTES = true 
) const [inherited]

Reimplemented from DybBaseAlg.

bool DybAlgorithm< DayaBay::ReadoutHeader >::registerContext (  )  const [inherited]

Reimplemented from DybBaseAlg.

INTupleSvc * DybAlgorithm< DayaBay::ReadoutHeader >::evtColSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

IAlgContextSvc * DybAlgorithm< DayaBay::ReadoutHeader >::contextSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

TOOL * DybAlgorithm< DayaBay::ReadoutHeader >::tool ( const std::string &  type,
const std::string &  name,
const IInterface parent = 0,
bool  create = true 
) const [inherited]

Reimplemented from DybBaseAlg.

TOOL * DybAlgorithm< DayaBay::ReadoutHeader >::tool ( const std::string &  type,
const IInterface parent = 0,
bool  create = true 
) const [inherited]

Reimplemented from DybBaseAlg.

SERVICE * DybAlgorithm< DayaBay::ReadoutHeader >::svc ( const std::string &  name,
const bool  create = true 
) const [inherited]

Reimplemented from DybBaseAlg.

IUpdateManagerSvc * DybAlgorithm< DayaBay::ReadoutHeader >::updMgrSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

IDataProviderSvc * DybAlgorithm< DayaBay::ReadoutHeader >::fastContainersSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::Error ( const std::string &  msg,
const StatusCode  st = StatusCode::FAILURE,
const size_t  mx = 10 
) const [inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::Warning ( const std::string &  msg,
const StatusCode  st = StatusCode::FAILURE,
const size_t  mx = 10 
) const [inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::Print ( const std::string &  msg,
const StatusCode  st = StatusCode::SUCCESS,
const MSG::Level  lev = MSG::INFO 
) const [inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::Assert ( const bool  ok,
const std::string &  message = "",
const StatusCode  sc = StatusCode(StatusCode::FAILURE, true) 
) const [inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::Assert ( const bool  ok,
const char *  message,
const StatusCode  sc = StatusCode(StatusCode::FAILURE, true) 
) const [inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::Exception ( const std::string &  msg,
const GaudiException exc,
const StatusCode  sc = StatusCode(StatusCode::FAILURE, true) 
) const [inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::Exception ( const std::string &  msg,
const std::exception &  exc,
const StatusCode  sc = StatusCode(StatusCode::FAILURE, true) 
) const [inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::Exception ( const std::string &  msg = "no message",
const StatusCode  sc = StatusCode(StatusCode::FAILURE, true) 
) const [inherited]

Reimplemented from DybBaseAlg.

MsgStream & DybAlgorithm< DayaBay::ReadoutHeader >::msgStream ( const MSG::Level  level  )  const [inherited]

Reimplemented from DybBaseAlg.

MsgStream & DybAlgorithm< DayaBay::ReadoutHeader >::always (  )  const [inherited]

Reimplemented from DybBaseAlg.

MsgStream & DybAlgorithm< DayaBay::ReadoutHeader >::fatal (  )  const [inherited]

Reimplemented from DybBaseAlg.

MsgStream & DybAlgorithm< DayaBay::ReadoutHeader >::err (  )  const [inherited]

Reimplemented from DybBaseAlg.

MsgStream & DybAlgorithm< DayaBay::ReadoutHeader >::error (  )  const [inherited]

Reimplemented from DybBaseAlg.

MsgStream & DybAlgorithm< DayaBay::ReadoutHeader >::warning (  )  const [inherited]

Reimplemented from DybBaseAlg.

MsgStream & DybAlgorithm< DayaBay::ReadoutHeader >::info (  )  const [inherited]

Reimplemented from DybBaseAlg.

MsgStream & DybAlgorithm< DayaBay::ReadoutHeader >::debug (  )  const [inherited]

Reimplemented from DybBaseAlg.

MsgStream & DybAlgorithm< DayaBay::ReadoutHeader >::verbose (  )  const [inherited]

Reimplemented from DybBaseAlg.

MsgStream & DybAlgorithm< DayaBay::ReadoutHeader >::msg (  )  const [inherited]

Reimplemented from DybBaseAlg.

const Statistics & DybAlgorithm< DayaBay::ReadoutHeader >::counters (  )  const [inherited]

Reimplemented from DybBaseAlg.

StatEntity & DybAlgorithm< DayaBay::ReadoutHeader >::counter ( const std::string &  tag  )  const [inherited]

Reimplemented from DybBaseAlg.

MSG::Level DybAlgorithm< DayaBay::ReadoutHeader >::msgLevel (  )  const [inherited]

Reimplemented from DybBaseAlg.

bool DybAlgorithm< DayaBay::ReadoutHeader >::msgLevel ( const MSG::Level  level  )  const [inherited]

Reimplemented from DybBaseAlg.

void DybAlgorithm< DayaBay::ReadoutHeader >::resetMsgStream (  )  const [inherited]

Reimplemented from DybBaseAlg.

bool DybAlgorithm< DayaBay::ReadoutHeader >::typePrint (  )  const [inherited]

Reimplemented from DybBaseAlg.

bool DybAlgorithm< DayaBay::ReadoutHeader >::propsPrint (  )  const [inherited]

Reimplemented from DybBaseAlg.

bool DybAlgorithm< DayaBay::ReadoutHeader >::statPrint (  )  const [inherited]

Reimplemented from DybBaseAlg.

bool DybAlgorithm< DayaBay::ReadoutHeader >::errorsPrint (  )  const [inherited]

Reimplemented from DybBaseAlg.

long DybAlgorithm< DayaBay::ReadoutHeader >::printStat ( const MSG::Level  level = MSG::ALWAYS  )  const [inherited]

Reimplemented from DybBaseAlg.

long DybAlgorithm< DayaBay::ReadoutHeader >::printErrors ( const MSG::Level  level = MSG::ALWAYS  )  const [inherited]

Reimplemented from DybBaseAlg.

long DybAlgorithm< DayaBay::ReadoutHeader >::printProps ( const MSG::Level  level = MSG::ALWAYS  )  const [inherited]

Reimplemented from DybBaseAlg.

void DybAlgorithm< DayaBay::ReadoutHeader >::registerCondition ( const std::string &  condition,
StatusCode(CallerClass::*)()  mf = NULL 
) [inherited]

Reimplemented from DybBaseAlg.

void DybAlgorithm< DayaBay::ReadoutHeader >::registerCondition ( const std::string &  condition,
CondType *&  condPtrDest,
StatusCode(CallerClass::*)()  mf = NULL 
) [inherited]

Reimplemented from DybBaseAlg.

void DybAlgorithm< DayaBay::ReadoutHeader >::registerCondition ( char *  condition,
StatusCode(CallerClass::*)()  mf = NULL 
) [inherited]

Reimplemented from DybBaseAlg.

void DybAlgorithm< DayaBay::ReadoutHeader >::registerCondition ( TargetClass *  condition,
StatusCode(CallerClass::*)()  mf = NULL 
) [inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::runUpdate (  )  [inherited]

Reimplemented from DybBaseAlg.

TransientFastContainer< T > * DybAlgorithm< DayaBay::ReadoutHeader >::getFastContainer ( const std::string &  location,
typename TransientFastContainer< T >::size_type  initial = 0 
) [inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::release ( const IInterface interface  )  const [inherited]

Reimplemented from DybBaseAlg.

unsigned long DybAlgorithm< DayaBay::ReadoutHeader >::release (  )  [inherited]

Reimplemented from DybBaseAlg.

const std::string & DybAlgorithm< DayaBay::ReadoutHeader >::context (  )  const [inherited]

Reimplemented from DybBaseAlg.

const std::string & DybAlgorithm< DayaBay::ReadoutHeader >::rootInTES (  )  const [inherited]

Reimplemented from DybBaseAlg.

double DybAlgorithm< DayaBay::ReadoutHeader >::globalTimeOffset (  )  const [inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::sysStart (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::sysReinitialize (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::sysRestart (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::sysStop (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::sysBeginRun (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::sysEndRun (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual const std::string & DybAlgorithm< DayaBay::ReadoutHeader >::name (  )  const [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual const std::string & DybAlgorithm< DayaBay::ReadoutHeader >::version (  )  const [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::configure (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::terminate (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::start (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::stop (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::reinitialize (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::restart (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual bool DybAlgorithm< DayaBay::ReadoutHeader >::isExecuted (  )  const [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual void DybAlgorithm< DayaBay::ReadoutHeader >::setExecuted ( bool  state  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual void DybAlgorithm< DayaBay::ReadoutHeader >::resetExecuted (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::beginRun (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::endRun (  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual Gaudi::StateMachine::State DybAlgorithm< DayaBay::ReadoutHeader >::FSMState (  )  const [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual Gaudi::StateMachine::State DybAlgorithm< DayaBay::ReadoutHeader >::targetFSMState (  )  const [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual bool DybAlgorithm< DayaBay::ReadoutHeader >::isEnabled (  )  const [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual bool DybAlgorithm< DayaBay::ReadoutHeader >::filterPassed (  )  const [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual void DybAlgorithm< DayaBay::ReadoutHeader >::setFilterPassed ( bool  state  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::service ( const std::string &  name,
T *&  psvc,
bool  createIf = true 
) const [inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::service ( const std::string &  svcType,
const std::string &  svcName,
T *&  psvc 
) const [inherited]

Reimplemented from DybBaseAlg.

void DybAlgorithm< DayaBay::ReadoutHeader >::setOutputLevel ( int  level  )  [inherited]

Reimplemented from DybBaseAlg.

IAuditorSvc * DybAlgorithm< DayaBay::ReadoutHeader >::auditorSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

IChronoStatSvc * DybAlgorithm< DayaBay::ReadoutHeader >::chronoSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

IChronoStatSvc * DybAlgorithm< DayaBay::ReadoutHeader >::chronoStatService (  )  const [inherited]

Reimplemented from DybBaseAlg.

IDataProviderSvc * DybAlgorithm< DayaBay::ReadoutHeader >::detSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

IDataProviderSvc * DybAlgorithm< DayaBay::ReadoutHeader >::detDataService (  )  const [inherited]

Reimplemented from DybBaseAlg.

IConversionSvc * DybAlgorithm< DayaBay::ReadoutHeader >::detCnvSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

IConversionSvc * DybAlgorithm< DayaBay::ReadoutHeader >::detDataCnvService (  )  const [inherited]

Reimplemented from DybBaseAlg.

IDataProviderSvc * DybAlgorithm< DayaBay::ReadoutHeader >::eventSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

IDataProviderSvc * DybAlgorithm< DayaBay::ReadoutHeader >::evtSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

IDataProviderSvc * DybAlgorithm< DayaBay::ReadoutHeader >::eventDataService (  )  const [inherited]

Reimplemented from DybBaseAlg.

IConversionSvc * DybAlgorithm< DayaBay::ReadoutHeader >::eventCnvSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

IConversionSvc * DybAlgorithm< DayaBay::ReadoutHeader >::eventDataCnvService (  )  const [inherited]

Reimplemented from DybBaseAlg.

IHistogramSvc * DybAlgorithm< DayaBay::ReadoutHeader >::histoSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

IHistogramSvc * DybAlgorithm< DayaBay::ReadoutHeader >::histogramDataService (  )  const [inherited]

Reimplemented from DybBaseAlg.

IMessageSvc * DybAlgorithm< DayaBay::ReadoutHeader >::msgSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

IMessageSvc * DybAlgorithm< DayaBay::ReadoutHeader >::messageService (  )  const [inherited]

Reimplemented from DybBaseAlg.

INTupleSvc * DybAlgorithm< DayaBay::ReadoutHeader >::ntupleSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

INTupleSvc * DybAlgorithm< DayaBay::ReadoutHeader >::ntupleService (  )  const [inherited]

Reimplemented from DybBaseAlg.

IRndmGenSvc * DybAlgorithm< DayaBay::ReadoutHeader >::randSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

IToolSvc * DybAlgorithm< DayaBay::ReadoutHeader >::toolSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

IExceptionSvc * DybAlgorithm< DayaBay::ReadoutHeader >::exceptionSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

ISvcLocator * DybAlgorithm< DayaBay::ReadoutHeader >::serviceLocator (  )  const [inherited]

Reimplemented from DybBaseAlg.

ISvcLocator * DybAlgorithm< DayaBay::ReadoutHeader >::svcLoc (  )  const [inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::createSubAlgorithm ( const std::string &  type,
const std::string &  name,
Algorithm *&  pSubAlg 
) [inherited]

Reimplemented from DybBaseAlg.

std::vector< Algorithm * > * DybAlgorithm< DayaBay::ReadoutHeader >::subAlgorithms (  )  const [inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::setProperty ( const Property p  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::setProperty ( const std::string &  s  )  [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::setProperty ( const std::string &  n,
const std::string &  v 
) [virtual, inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::setProperty ( const std::string &  name,
const TYPE &  value 
) [inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::getProperty ( Property p  )  const [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual const Property & DybAlgorithm< DayaBay::ReadoutHeader >::getProperty ( const std::string &  name  )  const [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::getProperty ( const std::string &  n,
std::string &  v 
) const [virtual, inherited]

Reimplemented from DybBaseAlg.

virtual const std::vector< Property * > & DybAlgorithm< DayaBay::ReadoutHeader >::getProperties (  )  const [virtual, inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::setProperties (  )  [inherited]

Reimplemented from DybBaseAlg.

Property * DybAlgorithm< DayaBay::ReadoutHeader >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc = "none" 
) const [inherited]

Reimplemented from DybBaseAlg.

Property * DybAlgorithm< DayaBay::ReadoutHeader >::declareRemoteProperty ( const std::string &  name,
IProperty rsvc,
const std::string &  rname = "" 
) const [inherited]

Reimplemented from DybBaseAlg.

IMonitorSvc * DybAlgorithm< DayaBay::ReadoutHeader >::monitorSvc (  )  const [inherited]

Reimplemented from DybBaseAlg.

void DybAlgorithm< DayaBay::ReadoutHeader >::declareInfo ( const std::string &  name,
const T &  var,
const std::string &  desc 
) const [inherited]

Reimplemented from DybBaseAlg.

void DybAlgorithm< DayaBay::ReadoutHeader >::declareInfo ( const std::string &  name,
const std::string &  format,
const void *  var,
int  size,
const std::string &  desc 
) const [inherited]

Reimplemented from DybBaseAlg.

unsigned long DybAlgorithm< DayaBay::ReadoutHeader >::addRef (  )  [inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::queryInterface ( const InterfaceID riid,
void **   
) [inherited]

Reimplemented from DybBaseAlg.

static const InterfaceID & DybAlgorithm< DayaBay::ReadoutHeader >::interfaceID (  )  [static, inherited]

Reimplemented from DybBaseAlg.

static const InterfaceID & DybAlgorithm< DayaBay::ReadoutHeader >::interfaceID (  )  [static, inherited]

Reimplemented from DybBaseAlg.

static const InterfaceID & DybAlgorithm< DayaBay::ReadoutHeader >::interfaceID (  )  [static, inherited]

Reimplemented from DybBaseAlg.

DayaBay::ReadoutHeader * DybAlgorithm< DayaBay::ReadoutHeader >::MakeHeaderObject (  )  [protected, inherited]

void DybAlgorithm< DayaBay::ReadoutHeader >::InitializeHeader ( DayaBay::HeaderObject header  )  [protected, inherited]

Reimplemented from DybBaseAlg.

void DybAlgorithm< DayaBay::ReadoutHeader >::AppendInputHeader ( const DayaBay::HeaderObject header  )  const [protected, inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::releaseTool ( const IAlgTool tool  )  const [protected, inherited]

Reimplemented from DybBaseAlg.

StatusCode DybAlgorithm< DayaBay::ReadoutHeader >::releaseSvc ( const IInterface svc  )  const [protected, inherited]

Reimplemented from DybBaseAlg.

bool DybAlgorithm< DayaBay::ReadoutHeader >::isInitialized (  )  const [protected, inherited]

Reimplemented from DybBaseAlg.

bool DybAlgorithm< DayaBay::ReadoutHeader >::isFinalized (  )  const [protected, inherited]

Reimplemented from DybBaseAlg.

int DybAlgorithm< DayaBay::ReadoutHeader >::outputLevel (  )  const [protected, inherited]

Reimplemented from DybBaseAlg.

IntegerProperty & DybAlgorithm< DayaBay::ReadoutHeader >::outputLevelProperty (  )  [protected, inherited]

Reimplemented from DybBaseAlg.

void DybAlgorithm< DayaBay::ReadoutHeader >::initOutputLevel ( Property prop  )  [protected, inherited]

Reimplemented from DybBaseAlg.


Member Data Documentation

std::vector<std::string> DataLoaderAlg::m_inputFiles [private]

Definition at line 70 of file DataLoaderAlg.h.

bool DataLoaderAlg::m_usePacked [private]

Definition at line 72 of file DataLoaderAlg.h.

bool DataLoaderAlg::m_useUnpacked [private]

Definition at line 74 of file DataLoaderAlg.h.

DayaBay::RawDataReader* DataLoaderAlg::m_reader [private]

Definition at line 77 of file DataLoaderAlg.h.

unsigned int DataLoaderAlg::m_fileIndex [private]

Definition at line 79 of file DataLoaderAlg.h.

unsigned int DataLoaderAlg::m_fileYear [private]

Definition at line 81 of file DataLoaderAlg.h.

unsigned int DataLoaderAlg::m_fileMonth [private]

Definition at line 82 of file DataLoaderAlg.h.

unsigned int DataLoaderAlg::m_fileDay [private]

Definition at line 83 of file DataLoaderAlg.h.

unsigned int DataLoaderAlg::m_utcDay [private]

Definition at line 84 of file DataLoaderAlg.h.

DybAlgorithm< DayaBay::ReadoutHeader >::SUCCESS [inherited]

Reimplemented from DybBaseAlg.

DybAlgorithm< DayaBay::ReadoutHeader >::NO_INTERFACE [inherited]

Reimplemented from DybBaseAlg.

DybAlgorithm< DayaBay::ReadoutHeader >::VERSMISMATCH [inherited]

Reimplemented from DybBaseAlg.

DybAlgorithm< DayaBay::ReadoutHeader >::LAST_ERROR [inherited]

Reimplemented from DybBaseAlg.

DayaBay::HeaderObject * DybAlgorithm< DayaBay::ReadoutHeader >::m_headerObject [protected, inherited]

Reimplemented from DybBaseAlg.

bool DybAlgorithm< DayaBay::ReadoutHeader >::m_pullMode [protected, inherited]

Reimplemented from DybBaseAlg.

std::string DybAlgorithm< DayaBay::ReadoutHeader >::m_location [protected, inherited]

Reimplemented from DybBaseAlg.

const bool DybAlgorithm< DayaBay::ReadoutHeader >::IgnoreRootInTES [static, protected, inherited]

Reimplemented from DybBaseAlg.

const bool DybAlgorithm< DayaBay::ReadoutHeader >::UseRootInTES [static, protected, inherited]

Reimplemented from DybBaseAlg.


The documentation for this class was generated from the following files:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:41:10 2011 for DataDebug by doxygen 1.4.7