ATLAS Offline Software
TRT_ByteStream_ConditionsSvc.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRT_BYTESTREAM_CONDITIONSSVC_H
6 #define TRT_BYTESTREAM_CONDITIONSSVC_H
7 
15 //Update, June 2020, W.L:
16 //This service is replaced by the TRT_BSErrContainer object in SG
17 //It's only remaining purpose is to carry information from the
18 //TRT_TRTRawDataProvider to the TRT_TrgRIO_Maker with are both thread-unsafe
19 //legcay tools
20 
21 #include "GaudiKernel/IIncidentListener.h"
22 #include "GaudiKernel/IIncidentSvc.h"
23 
27 #include "GaudiKernel/ServiceHandle.h"
28 #include "StoreGate/StoreGateSvc.h"
29 
30 
31 
34  virtual public ITRT_ConditionsSvc,
35  virtual public ITRT_ByteStream_ConditionsSvc,
36  virtual public IIncidentListener
37 {
38 
39  public:
40 
41  TRT_ByteStream_ConditionsSvc( const std::string&, ISvcLocator* );
43 
44  virtual StatusCode initialize();
45  virtual StatusCode finalize();
46 
47  virtual StatusCode queryInterface( const InterfaceID& riid, void** ppvIf );
48 
50 
51 
53 
57 
59 
60  void handle(const Incident&);
61 
62  void resetSets( void );
63  void resetCounts( void );
64 
66  const std::set<std::pair<uint32_t,uint32_t> > &
67  getL1idErrorSet( void );
68  const std::set<std::pair<uint32_t,uint32_t> > &
69  getBcidErrorSet( void );
70  const std::set<std::pair<uint32_t,uint32_t> > &getRobErrorSet( void );
71  const std::set<uint32_t> & getMissingErrorSet( void );
72  const std::set<uint32_t> & getErrorErrorSet( void );
73  const std::set<uint32_t> & getSidErrorSet( void );
74 
75  std::set<std::pair<uint32_t,uint32_t> > * getRodRobErrorSet( TRTByteStreamErrors::errorTypes ErrType );
76  std::set<std::pair<uint32_t,uint32_t> > * getIdErrorSet( TRTByteStreamErrors::errorTypes ErrType );
77  std::set<uint32_t> * getErrorSet( TRTByteStreamErrors::errorTypes ErrType );
78 
79  void add_l1id_error( uint32_t DTMROC_idx );
80  void add_bcid_error( uint32_t DTMROC_idx );
81  void add_missing_error( uint32_t DTMROC_idx );
82  void add_error_error( uint32_t DTMROC_idx );
83  void add_sid_error( uint32_t DTMROC_idx );
84 
85  void add_l1id_error( uint32_t DTMROC_idx, uint32_t l1id );
86  void add_bcid_error( uint32_t DTMROC_idx, uint32_t bcid );
87 
88  void add_rob_error( uint32_t robSourceId, uint32_t robStatus );
89 
90  private:
91 
93 
94  std::set<uint32_t> m_l1id_errors; // Deprecated
95  std::set<uint32_t> m_bcid_errors; // Deprecated
96  std::set<uint32_t> m_missing_errors;
97  std::set<uint32_t> m_error_errors;
98  std::set<uint32_t> m_sid_errors;
99 
100  std::set<std::pair<uint32_t,uint32_t> > m_l1id_pair_errors;
101  std::set<std::pair<uint32_t,uint32_t> > m_bcid_pair_errors;
102 
103  std::set<std::pair<uint32_t,uint32_t> > m_rob_status_errors;
104 
111 
118 
119  //TRT_BSIdErrContainer* m_IdCont;
120  //TRT_BSErrContainer* m_cont;
121 
122 };
123 
125 inline StatusCode TRT_ByteStream_ConditionsSvc::queryInterface( const InterfaceID& riid, void** ppvIf ) {
126  if ( ITRT_ConditionsSvc::interfaceID() == riid ) {
127  *ppvIf = dynamic_cast<ITRT_ConditionsSvc*>(this);
128  addRef();
129  } else if ( ITRT_ByteStream_ConditionsSvc::interfaceID() == riid ) {
130  *ppvIf = dynamic_cast<ITRT_ByteStream_ConditionsSvc*>(this);
131  addRef();
132  } else {
133  return AthService::queryInterface( riid, ppvIf );
134  }
135  return StatusCode::SUCCESS;
136 }
137 
138 #endif // TRT_BYTESTREAM_CONDITIONSSVC_H
ITRT_ConditionsSvc::interfaceID
static const InterfaceID & interfaceID()
Definition: ITRT_ConditionsSvc.h:45
TRT_ByteStream_ConditionsSvc::getMissingErrorSet
const std::set< uint32_t > & getMissingErrorSet(void)
Definition: TRT_ByteStream_ConditionsSvc.cxx:225
TRT_ByteStream_ConditionsSvc::add_sid_error
void add_sid_error(uint32_t DTMROC_idx)
Definition: TRT_ByteStream_ConditionsSvc.cxx:286
TRT_ByteStream_ConditionsSvc::m_tot_num_missing_errors
long long m_tot_num_missing_errors
Definition: TRT_ByteStream_ConditionsSvc.h:114
TRT_ByteStream_ConditionsSvc::~TRT_ByteStream_ConditionsSvc
virtual ~TRT_ByteStream_ConditionsSvc()
Destructor //.
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
TRT_ByteStream_ConditionsSvc::m_tot_num_bcid_errors
long long m_tot_num_bcid_errors
Definition: TRT_ByteStream_ConditionsSvc.h:113
TRT_ByteStream_ConditionsSvc::m_num_missing_errors
int m_num_missing_errors
Definition: TRT_ByteStream_ConditionsSvc.h:107
TRT_ByteStream_ConditionsSvc::m_num_bcid_errors
int m_num_bcid_errors
Definition: TRT_ByteStream_ConditionsSvc.h:106
TRT_ByteStream_ConditionsSvc::add_error_error
void add_error_error(uint32_t DTMROC_idx)
Definition: TRT_ByteStream_ConditionsSvc.cxx:278
ITRT_ByteStream_ConditionsSvc.h
Service for accessing TRT ByteStream conditions information.
TRT_ByteStream_ConditionsSvc::getL1idErrorSet
const std::set< std::pair< uint32_t, uint32_t > > & getL1idErrorSet(void)
Definition: TRT_ByteStream_ConditionsSvc.cxx:193
ITRT_ConditionsSvc.h
TRT_ByteStream_ConditionsSvc::getBcidErrorSet
const std::set< std::pair< uint32_t, uint32_t > > & getBcidErrorSet(void)
Definition: TRT_ByteStream_ConditionsSvc.cxx:203
TRT_ByteStream_ConditionsSvc::m_tot_num_robStatus_errors
long long m_tot_num_robStatus_errors
Definition: TRT_ByteStream_ConditionsSvc.h:117
TRT_ByteStream_ConditionsSvc::m_rob_status_errors
std::set< std::pair< uint32_t, uint32_t > > m_rob_status_errors
Definition: TRT_ByteStream_ConditionsSvc.h:103
TRT_ByteStream_ConditionsSvc::m_num_l1id_errors
int m_num_l1id_errors
Definition: TRT_ByteStream_ConditionsSvc.h:105
TRT_ByteStream_ConditionsSvc::m_tot_num_error_errors
long long m_tot_num_error_errors
Definition: TRT_ByteStream_ConditionsSvc.h:115
TRT_ByteStream_ConditionsSvc::finalize
virtual StatusCode finalize()
Finalize //.
Definition: TRT_ByteStream_ConditionsSvc.cxx:103
TRT_ByteStream_ConditionsSvc::getRobErrorSet
const std::set< std::pair< uint32_t, uint32_t > > & getRobErrorSet(void)
Definition: TRT_ByteStream_ConditionsSvc.cxx:214
TRT_ByteStream_ConditionsSvc::condSummaryStatus
InDet::TRT_CondFlag condSummaryStatus(const Identifier &)
Evaluation for TRT_ConditionsSummarySvc.
Definition: TRT_ByteStream_ConditionsSvc.cxx:94
TRT_ByteStream_ConditionsSvc::m_num_sid_errors
int m_num_sid_errors
Definition: TRT_ByteStream_ConditionsSvc.h:109
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
ITRT_ByteStream_ConditionsSvc::interfaceID
static const InterfaceID & interfaceID()
Definition: ITRT_ByteStream_ConditionsSvc.h:71
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TRT_ByteStream_ConditionsSvc::resetSets
void resetSets(void)
Definition: TRT_ByteStream_ConditionsSvc.cxx:136
AthService
Definition: AthService.h:32
TRT_ByteStream_ConditionsSvc::m_num_robStatus_errors
int m_num_robStatus_errors
Definition: TRT_ByteStream_ConditionsSvc.h:110
TRT_ByteStream_ConditionsSvc::m_num_error_errors
int m_num_error_errors
Definition: TRT_ByteStream_ConditionsSvc.h:108
TRT_ByteStream_ConditionsSvc::m_bcid_errors
std::set< uint32_t > m_bcid_errors
Definition: TRT_ByteStream_ConditionsSvc.h:95
TRT_ByteStream_ConditionsSvc::m_missing_errors
std::set< uint32_t > m_missing_errors
Definition: TRT_ByteStream_ConditionsSvc.h:96
TRT_ByteStream_ConditionsSvc::add_rob_error
void add_rob_error(uint32_t robSourceId, uint32_t robStatus)
Definition: TRT_ByteStream_ConditionsSvc.cxx:319
TRT_ByteStream_ConditionsSvc::initialize
virtual StatusCode initialize()
Initialize //.
Definition: TRT_ByteStream_ConditionsSvc.cxx:50
TRT_ByteStream_ConditionsSvc::getSidErrorSet
const std::set< uint32_t > & getSidErrorSet(void)
Definition: TRT_ByteStream_ConditionsSvc.cxx:245
TRT_ByteStream_ConditionsSvc::add_missing_error
void add_missing_error(uint32_t DTMROC_idx)
Definition: TRT_ByteStream_ConditionsSvc.cxx:270
TRT_ByteStream_ConditionsSvc::queryInterface
virtual StatusCode queryInterface(const InterfaceID &riid, void **ppvIf)
Query Interface.
Definition: TRT_ByteStream_ConditionsSvc.h:125
ITRT_ConditionsSvc
Definition: ITRT_ConditionsSvc.h:34
TRT_ByteStream_ConditionsSvc
Service for retrieving ByteStream conditions information.
Definition: TRT_ByteStream_ConditionsSvc.h:37
TRT_ByteStream_ConditionsSvc::m_l1id_pair_errors
std::set< std::pair< uint32_t, uint32_t > > m_l1id_pair_errors
Definition: TRT_ByteStream_ConditionsSvc.h:100
TRT_ByteStream_ConditionsSvc::getErrorErrorSet
const std::set< uint32_t > & getErrorErrorSet(void)
Definition: TRT_ByteStream_ConditionsSvc.cxx:235
TRT_ByteStream_ConditionsSvc::m_tot_num_sid_errors
long long m_tot_num_sid_errors
Definition: TRT_ByteStream_ConditionsSvc.h:116
xAOD::bcid
setEventNumber setTimeStamp bcid
Definition: EventInfo_v1.cxx:133
ITRT_ByteStream_ConditionsSvc
Definition: ITRT_ByteStream_ConditionsSvc.h:29
TRT_ByteStream_ConditionsSvc::getNumberOfErrors
int getNumberOfErrors(TRTByteStreamErrors::errorTypes ErrType)
Definition: TRT_ByteStream_ConditionsSvc.cxx:170
TRT_ByteStream_ConditionsSvc::getIdErrorSet
std::set< std::pair< uint32_t, uint32_t > > * getIdErrorSet(TRTByteStreamErrors::errorTypes ErrType)
Definition: TRT_ByteStream_ConditionsSvc.cxx:347
TRT_ByteStream_ConditionsSvc::resetCounts
void resetCounts(void)
The following methods are for HLT, to get the numbers of errors per RoI, so won't necessarily match u...
Definition: TRT_ByteStream_ConditionsSvc.cxx:159
TRT_ByteStream_ConditionsSvc::getRodRobErrorSet
std::set< std::pair< uint32_t, uint32_t > > * getRodRobErrorSet(TRTByteStreamErrors::errorTypes ErrType)
Definition: TRT_ByteStream_ConditionsSvc.cxx:333
TRT_ByteStream_ConditionsSvc::m_sid_errors
std::set< uint32_t > m_sid_errors
Definition: TRT_ByteStream_ConditionsSvc.h:98
TRT_ByteStream_ConditionsSvc::TRT_ByteStream_ConditionsSvc
TRT_ByteStream_ConditionsSvc(const std::string &, ISvcLocator *)
Constructor //.
Definition: TRT_ByteStream_ConditionsSvc.cxx:22
TRT_ByteStream_ConditionsSvc::m_tot_num_l1id_errors
long long m_tot_num_l1id_errors
Definition: TRT_ByteStream_ConditionsSvc.h:112
TRT_ByteStream_ConditionsSvc::m_evtStore
ServiceHandle< StoreGateSvc > m_evtStore
Definition: TRT_ByteStream_ConditionsSvc.h:92
AthService.h
TRTByteStreamErrors::errorTypes
errorTypes
Definition: ITRT_ByteStream_ConditionsSvc.h:18
TRT_ByteStream_ConditionsSvc::getErrorSet
std::set< uint32_t > * getErrorSet(TRTByteStreamErrors::errorTypes ErrType)
Definition: TRT_ByteStream_ConditionsSvc.cxx:363
TRT_ByteStream_ConditionsSvc::add_l1id_error
void add_l1id_error(uint32_t DTMROC_idx)
InDet::TRT_CondFlag
TRT_CondFlag
status flag to be derived from the inheriting tool's conditions info
Definition: ITRT_ConditionsSvc.h:19
TRT_ByteStream_ConditionsSvc::handle
void handle(const Incident &)
Definition: TRT_ByteStream_ConditionsSvc.cxx:129
StoreGateSvc.h
TRT_ByteStream_ConditionsSvc::add_bcid_error
void add_bcid_error(uint32_t DTMROC_idx)
TRT_ByteStream_ConditionsSvc::m_l1id_errors
std::set< uint32_t > m_l1id_errors
Definition: TRT_ByteStream_ConditionsSvc.h:94
TRT_ByteStream_ConditionsSvc::m_bcid_pair_errors
std::set< std::pair< uint32_t, uint32_t > > m_bcid_pair_errors
Definition: TRT_ByteStream_ConditionsSvc.h:101
TRT_ByteStream_ConditionsSvc::m_error_errors
std::set< uint32_t > m_error_errors
Definition: TRT_ByteStream_ConditionsSvc.h:97
ServiceHandle< StoreGateSvc >