BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
RawDataInputSvc.h
Go to the documentation of this file.
1#pragma once
2
3#include "GaudiKernel/Service.h"
4
5#include "IRawFile/IRawReader.h"
6#include "RawDataCnv/SniperJSON.h"
7
8#include "RawDataCnvSvc/IRawDataInputSvc.h"
9
10class RawDataInputSvc : public extends<Service, IRawDataInputSvc> {
11public:
12 // Constructors:
13 RawDataInputSvc( const std::string& name, ISvcLocator* svcloc );
14
15 // Implementation of the RawDataInputSvc interface methods.
16 StatusCode initialize();
17 StatusCode finalize();
18
21 bool setCurrentEvent( RAWEVENT* m_onlinere ); // TR
22
23 std::string currentFile() const { return m_reader->currentFile(); }
24 uint32_t runNo() { return m_reader->runNo(); }
25 const SniperJSON& config( const std::string& key ) { return m_json[key]; }
26 OfflineRevise* offlineRevisor() { return m_revisor; }
27
28 // 0-NormalNetMode, 1-OnlineMode, 2-OfflineMode, 3-DistBossMode
29 int runMode() { return m_mode; }
30
31private:
32 RAWEVENT* m_re;
33 IRawReader* m_reader; // used by OfflineMode and DistBossMode
34 OfflineRevise* m_revisor;
35
36 // 0-NormalNetMode, 1-OnlineMode, 2-OfflineMode, 3-DistBossMode
37 int m_mode;
38 bool m_keepRdm;
39
40 // OfflineMode parameter
41 std::vector<std::string> m_inputFiles;
42
43 // DistBossMode parameter
44 std::string m_evtServer;
45
46 // The config file for offline revision
47 std::string m_conf4Revise;
48
49 // SubDetectorFragments & ROBs
50 const uint32_t** m_sds;
51 const uint32_t** m_robs;
52
53 // configurations in json
54 SniperJSON m_json;
55};
*************DOUBLE PRECISION m_pi *DOUBLE PRECISION m_HvecTau2 DOUBLE PRECISION m_HvClone2 DOUBLE PRECISION m_gamma1 DOUBLE PRECISION m_gamma2 DOUBLE PRECISION m_thet1 DOUBLE PRECISION m_thet2 INTEGER m_IFPHOT *COMMON c_Taupair $ !Spin Polarimeter vector first Tau $ !Spin Polarimeter vector second Tau $ !Clone Spin Polarimeter vector first Tau $ !Clone Spin Polarimeter vector second Tau $ !Random Euler angle for cloning st tau $ !Random Euler angle for cloning st tau $ !Random Euler angle for cloning st tau $ !Random Euler angle for cloning nd tau $ !Random Euler angle for cloning nd tau $ !Random Euler angle for cloning nd tau $ !phi of HvecTau1 $ !theta of HvecTau1 $ !phi of HvecTau2 $ !theta of HvecTau2 $ !super key
Definition Taupair.h:42
bool setCurrentEvent(RAWEVENT *m_onlinere)
StatusCode initialize()
StatusCode finalize()
const SniperJSON & config(const std::string &key)
RAWEVENT * currentEvent()
std::string currentFile() const
RawDataInputSvc(const std::string &name, ISvcLocator *svcloc)
OfflineRevise * offlineRevisor()
RAWEVENT * nextEvent()