BOSS 6.6.4.p03
BESIII Offline Software System
Loading...
Searching...
No Matches
RawDataInputSvc.h
Go to the documentation of this file.
1#ifndef RAWDATACNVSVC_RAWDATAFILEINPUTSVC_H
2#define RAWDATACNVSVC_RAWDATAFILEINPUTSVC_H
3
4//===================================================================
5// RawDataFileInputSvc.h
6//===================================================================
7//
8// Description: This class implements the interface RawDataInputSvc for
9// event selector to read the events for Files.
10//
11//-------------------------------------------------------------------
12
13
14// Include files.
15#include "GaudiKernel/Service.h"
16#include "GaudiKernel/ISvcLocator.h"
17#include "IRawFile/IRawReader.h"
20
21static const InterfaceID IID_RawDataInputSvc("RawDataInputSvc", 1, 0);
22
23class RawDataInputSvc: public Service,
24 virtual public IRawDataInputSvc
25{
26 public:
27
28 static const InterfaceID& interfaceID() { return IID_RawDataInputSvc; }
29
30 // Constructors:
31 RawDataInputSvc(const std::string& name, ISvcLocator* svcloc);
32
33 // Destructor.
34 virtual ~RawDataInputSvc();
35
36 // Implementation of the RawDataInputSvc interface methods.
37 virtual StatusCode initialize();
38 virtual StatusCode finalize();
39
40 virtual RAWEVENT* nextEvent();
41 virtual RAWEVENT* currentEvent() ;
42 virtual bool setCurrentEvent(RAWEVENT* m_onlinere);//TR
43
44 std::string currentFile() const { return m_reader->currentFile(); }
45
46 // 0-NormalNetMode, 1-OnlineMode, 2-OfflineMode, 3-DistBossMode
47 int runMode() { return m_mode; }
48
49 private:
50
51 RAWEVENT* m_re;
52 IRawReader* m_reader; // used by OfflineMode and DistBossMode
53
54 // 0-NormalNetMode, 1-OnlineMode, 2-OfflineMode, 3-DistBossMode
55 int m_mode;
56 bool m_keepRdm;
57
58 // OfflineMode parameter
59 std::vector<std::string> m_inputFiles;
60
61 // DistBossMode parameter
62 std::string m_evtServer;
63
64 // SubDetectorFragments & ROBs
65 const uint32_t** m_sds;
66 const uint32_t** m_robs;
67};
68
69#endif
70
virtual std::string currentFile()=0
virtual bool setCurrentEvent(RAWEVENT *m_onlinere)
virtual StatusCode initialize()
virtual StatusCode finalize()
virtual ~RawDataInputSvc()
virtual RAWEVENT * currentEvent()
std::string currentFile() const
static const InterfaceID & interfaceID()
virtual RAWEVENT * nextEvent()