00001 #ifndef IRAWDATAINPUTSVC_H 00002 #define IRAWDATAINPUTSVC_H 00003 00004 #include "GaudiKernel/IInterface.h" 00005 00006 // forward declaration 00007 class RawDataEvent; 00008 namespace DayaBay { 00009 class RawEvent; 00010 } 00011 00013 static const InterfaceID IID_IRawDataInputSvc("IRawDataInputSvc", 0, 0); 00014 00015 class IRawDataInputSvc: virtual public IInterface 00016 { 00017 public: 00019 static const InterfaceID& interfaceID() { 00020 return IID_IRawDataInputSvc; 00021 } 00022 00023 virtual RawDataEvent* currentEvent() = 0; 00024 virtual DayaBay::RawEvent* currentRawEvent() = 0; 00025 virtual DayaBay::RawEvent* currentRawEventClone() = 0; 00026 virtual StatusCode nextEvent() = 0; 00027 00028 public: 00029 unsigned int m_inputSvcVersion; 00030 // Property UsePacked - Load packed data 00031 bool m_usePacked; 00032 // Property UseUnpacked - Load unpacked data 00033 bool m_useUnpacked; 00034 // State variables to fix lack of 'year' in UTC-formatted trigger time 00035 unsigned int m_fileYear; 00036 unsigned int m_fileMonth; 00037 unsigned int m_fileDay; 00038 unsigned int m_utcDay; 00039 }; 00040 00041 #endif