ATLAS Offline Software
ALFA_Decoder_charge.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ALFA_DECODER_CHARGE_H
6 #define ALFA_DECODER_CHARGE_H
7 
8 #include <stdint.h>
9 #include <map>
10 #include <string>
11 #include "eformat/ROBFragment.h"
12 #include "eformat/FullEventFragment.h"
13 
15 
16 #include "GaudiKernel/ToolHandle.h"
17 #include "GaudiKernel/ServiceHandle.h"
18 #include "GaudiKernel/IToolSvc.h"
19 #include "GaudiKernel/MsgStream.h"
20 
21 #include "ByteStreamData/RawEvent.h"
22 
26 
30 
32 
33 
34 class ISvcLocator;
35 class StatusCode;
36 
38 
39  public:
40 
41 
42  // Collection type
45 
46  // constructor
47  ALFA_Decoder_charge (const std::string& type, const std::string& name, const IInterface* parent);
48 
49  // AlgTool InterfaceID
50  static const InterfaceID& interfaceID();
51 
52  // destructor
53  virtual ~ALFA_Decoder_charge();
54 
55  virtual StatusCode initialize();
56  virtual StatusCode finalize();
57 
58  StatusCode fillCollection(const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment *robFrag, ALFA_RawDataContainer_charge* rdoCont, std::vector<unsigned int>* vecHash = NULL);
59 
62 
63  inline const eformat::FullEventFragment<const uint32_t*> * eventFragment() const { return m_event; }
64  inline const eformat::ROBFragment<const uint32_t*> * robFragment() const { return m_robFrag; }
65 
66 
67 private:
68  const eformat::FullEventFragment<const uint32_t*> * m_event = nullptr;
70 
71  unsigned int m_fragment_number = 0U;
72 
75 
76  // Methods for the decoding
80 
81  };
82 
83 #endif
84 
ALFA_RawDataContainer_charge.h
ALFA_Decoder_charge::eventFragment
const eformat::FullEventFragment< const uint32_t * > * eventFragment() const
Definition: ALFA_Decoder_charge.h:63
ALFA_RawDataCollection_charge
RDOs : Chamber Service Module, collection of RawData.
Definition: ALFA_RawDataCollection_charge.h:19
ALFA_Decoder_charge::robFragment
const eformat::ROBFragment< const uint32_t * > * robFragment() const
Definition: ALFA_Decoder_charge.h:64
ALFA_Decoder_charge::m_fragment_number
unsigned int m_fragment_number
Definition: ALFA_Decoder_charge.h:71
ALFA_RawDataReadOut_charge
Definition: ALFA_RawDataReadOut_charge.h:28
ALFA_Decoder_charge::m_ALFA_RawDataCollection_charge
ALFA_RawDataCollection_charge m_ALFA_RawDataCollection_charge
Definition: ALFA_Decoder_charge.h:44
ALFA_RawDataReadOut_charge.h
ALFA_Decoder_charge::m_robDataProvider
ServiceHandle< IROBDataProviderSvc > m_robDataProvider
Service for reading bytestream.
Definition: ALFA_Decoder_charge.h:74
ALFA_Decoder_charge
Definition: ALFA_Decoder_charge.h:37
ALFA_RawData_charge.h
ALFA_Decoder_charge::getCollection
ALFA_RawDataCollection_charge * getCollection(unsigned int MotherBoardId, ALFA_RawDataContainer_charge *cont)
Definition: ALFA_Decoder_charge.cxx:463
ALFA_Decoder_charge::interfaceID
static const InterfaceID & interfaceID()
Definition: ALFA_Decoder_charge.cxx:10
ALFA_Decoder_charge::initialize
virtual StatusCode initialize()
Definition: ALFA_Decoder_charge.cxx:41
ALFA_RawData_charge
Definition: ALFA_RawData_charge.h:21
eformat::ROBFragment
Definition: L1CaloBsDecoderUtil.h:12
RawEvent.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
ALFA_Decoder_charge::~ALFA_Decoder_charge
virtual ~ALFA_Decoder_charge()
Definition: ALFA_Decoder_charge.cxx:33
ALFA_Decoder_charge::m_robFrag
const eformat::ROBFragment< const uint32_t * > * m_robFrag
Definition: ALFA_Decoder_charge.h:69
ALFA_Decoder_charge::m_event
const eformat::FullEventFragment< const uint32_t * > * m_event
Definition: ALFA_Decoder_charge.h:68
ALFA_Decoder_charge::getRawData_charge
ALFA_RawData_charge * getRawData_charge(unsigned int PMFId, ALFA_RawDataCollection_charge *coll)
ALFA_RawDataContainerReadOut.h
ALFA_RawDataCollectionReadOut
Definition: ALFA_RawDataCollectionReadOut.h:32
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
ALFA_RawDataContainer_charge
This container provides acces to the PMF RDOs.
Definition: ALFA_RawDataContainer_charge.h:21
ALFA_Decoder_charge::m_ALFA_RawData_charge
ALFA_RawData_charge m_ALFA_RawData_charge
Definition: ALFA_Decoder_charge.h:43
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
ALFA_Decoder_charge::fillCollection
StatusCode fillCollection(const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment *robFrag, ALFA_RawDataContainer_charge *rdoCont, std::vector< unsigned int > *vecHash=NULL)
Definition: ALFA_Decoder_charge.cxx:97
AthAlgTool
Definition: AthAlgTool.h:26
ALFA_Decoder_charge::m_ALFA_RawDataContainerReadOut
ALFA_RawDataContainerReadOut * m_ALFA_RawDataContainerReadOut
Definition: ALFA_Decoder_charge.h:79
ALFA_Decoder_charge::m_ALFA_RawDataReadOut_charge
ALFA_RawDataReadOut_charge * m_ALFA_RawDataReadOut_charge
Definition: ALFA_Decoder_charge.h:77
ALFA_RawDataCollection_charge.h
ALFA_Decoder_charge::m_ALFA_RawDataCollectionReadOut
ALFA_RawDataCollectionReadOut * m_ALFA_RawDataCollectionReadOut
Definition: ALFA_Decoder_charge.h:78
ALFA_RawDataContainerReadOut
Definition: ALFA_RawDataContainerReadOut.h:31
IROBDataProviderSvc.h
ALFA_Decoder_charge::ALFA_Decoder_charge
ALFA_Decoder_charge(const std::string &type, const std::string &name, const IInterface *parent)
Definition: ALFA_Decoder_charge.cxx:19
ServiceHandle< IROBDataProviderSvc >
ALFA_RawDataCollectionReadOut.h
ALFA_Decoder_charge::finalize
virtual StatusCode finalize()
Definition: ALFA_Decoder_charge.cxx:78