BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Event/RawDataProviderSvc/include/RawDataProviderSvc/TofRawDataProvider.h
Go to the documentation of this file.
1#ifndef TOFRAWDATAPROVIDER_H
2#define TOFRAWDATAPROVIDER_H
3
4#include "GaudiKernel/IIncidentListener.h"
5#include "GaudiKernel/IMessageSvc.h"
6#include "GaudiKernel/ISvcLocator.h"
8#include "TofData.h"
9
10const double timeDiff = 20.0;
11const double tClockDiff = 1.0;
12const double timeForward = 120.0;
13const double timeBackward = 24.0;
14const double tClockForward = 5.0;
15const double tClockBackward = 1.0;
16
17const double timeDiffMRPC = 5.0;
18const double totForward = 0.0;
19const double totBackward = 50.0;
20
21// RawDataProvider for TOF
22// author: Sun Shengsen
24public:
26 TofRawDataProvider( const char* name );
28
29 // initialize service point
30 StatusCode initialize( bool mode = false, ISvcLocator* svcLoc = 0, IMessageSvc* pMsg = 0 );
31
32 // Incident handler
33 void handle( const Incident& );
34
35 // get multimap or vector of the TofData
36 void tofDataMapFull();
37
38 // online mode
39 TofDataMap& tofDataMapOnlineMode( uint32_t control = 1 );
40 TofDataVector& tofDataVectorOnlineMode( uint32_t control = 1 );
41
42 // event start time
45
46 // tof reconstruction
47 TofDataMap& tofDataMapTof( double estime = 0.0 );
48 TofDataVector& tofDataVectorTof( double estime = 0.0 );
49
50 // emc reconstruction
51 TofDataMap& tofDataMapEmc( double estime = 0.0 );
52 TofDataVector& tofDataVectorEmc( double estime = 0.0 );
53
54private:
55 int m_run, m_event;
56 bool m_hasFilled;
57 TofDataMap m_tofDataMap; // storage of result
58 // OnlineMode
59 TofDataMap m_tofDataMapOnline;
60 TofDataVector m_tofDataVectorOnline;
61 // Event Start Time
62 TofDataMap m_tofDataMapEstime;
63 TofDataVector m_tofDataVectorEstime;
64 // TOF Reconstruction
65 TofDataMap m_tofDataMapTof;
66 TofDataVector m_tofDataVectorTof;
67 // EMC Reconstruction using energy deposit in TOF
68 TofDataMap m_tofDataMapEmc;
69 TofDataVector m_tofDataVectorEmc;
70};
71#endif
std::multimap< unsigned int, TofData * > TofDataMap
RawDataProviderBase(const char *name)
TofDataMap & tofDataMapTof(double estime=0.0)
void handle(const Incident &)
TofDataVector & tofDataVectorTof(double estime=0.0)
TofDataMap & tofDataMapOnlineMode(uint32_t control=1)
TofDataMap & tofDataMapEstime()
TofDataVector & tofDataVectorEmc(double estime=0.0)
TofDataVector & tofDataVectorEstime()
TofDataVector & tofDataVectorOnlineMode(uint32_t control=1)
StatusCode initialize(bool mode=false, ISvcLocator *svcLoc=0, IMessageSvc *pMsg=0)
TofDataMap & tofDataMapEmc(double estime=0.0)