ATLAS Offline Software
ZdcByteStreamRawData.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 /*
6  * ZdcByteStreamRawData.cxx
7  *
8  * Created on: Jun 29, 2009
9  * Author: leite
10  *
11  * Based on Athena Algorithm this class must provide 3 methods:
12  *
13  * ZdcByteStreamRawData::initialize (run once at run start)
14  * ZdcByteStreamRawData::execute (run for every event)
15  * ZdcByteStreamRawData::finalize (run one at run end)
16  *
17  * plus some helpers
18  */
19 
20 #include <utility>
21 
22 #include "GaudiKernel/ISvcLocator.h"
23 #include "GaudiKernel/MsgStream.h"
24 #include "GaudiKernel/StatusCode.h"
25 #include "StoreGate/StoreGateSvc.h"
26 
27 #include "ZdcEvent/ZdcDigits.h"
29 
30 #include "ZdcByteStream/ZdcDefs.h"
32 
33 //==================================================================================================
34 ZdcByteStreamRawData::ZdcByteStreamRawData(const std::string& name, ISvcLocator* pSvcLocator) :
35  AthAlgorithm(name, pSvcLocator)
36 {
38  declareProperty("ForceSlicesLUT", m_forceSlicesLut = 0);
39  declareProperty("ForceSlicesFADC", m_forceSlicesFadc = 0);
40 }
41 //==================================================================================================
42 
43 
44 //==================================================================================================
46 {
47  if (!msgLvl(MSG::INFO)) return StatusCode::SUCCESS;
48  msg(MSG::INFO);
49 
53 
54  const ZdcDigitsCollection* ttCollection = nullptr;
55 
56  msg(MSG::DEBUG) << "Looking for ZDC Digits Collection at " << m_ZdcDigitsCollectionLocation << endmsg;
57  //std::cout << "Looking for ZDC Digits Collection at " << m_ZdcDigitsCollectionLocation << std::endl;
58  StatusCode sc = evtStore()->retrieve(ttCollection, m_ZdcDigitsCollectionLocation);
59  if (sc.isFailure() || !ttCollection || ttCollection->empty())
60  {
61  msg() << "No Zdc Digits found" << endmsg;
62  return StatusCode::SUCCESS;
63  }
64 
65  return StatusCode::SUCCESS;
66 }
67 //==================================================================================================
68 
69 
70 
71 //==================================================================================================
72 //FIXME There is no such thing like ZdcDigitsMap
74 {
75  msg() << "Number of ZdcDigits = " << m_ZdcDigitsMap.size() << endmsg;
76 // ZdcDigitsMap::const_iterator mapIter = m_ZdcDigitsMap.begin();
77 // ZdcDigitsMap::const_iterator mapEnd = m_ZdcDigitsMap.end();
78 }
79 //==================================================================================================
80 
81 
82 //==================================================================================================
83 void ZdcByteStreamRawData::printVec(const std::vector<int>& vec) const
84 {
85  std::vector<int>::const_iterator pos;
86  for (pos = vec.begin(); pos != vec.end(); ++pos)
87  {
88  if (pos != vec.begin()) msg() << ",";
89  msg() << *pos;
90  }
91  msg() << "/";
92 }
93 //==================================================================================================
94 
95 /* REMOVE
96 
97  // Set up trigger tower map
98  void ZdcByteStreamRawData::setupZdcDigitsMap(const ZdcDigitsCollection* const ttCollection)
99  {
100  m_ZdcDigitsMap.clear();
101  ZdcDigitsCollection::const_iterator pos = ttCollection->begin();
102  ZdcDigitsCollection::const_iterator pose = ttCollection->end();
103  for (; pos != pose; ++pos) {
104  const ZdcDigits* const tt = *pos;
105  tt->get_ID();
106 
107  //const unsigned int key = m_towerKey->ttKey(tt->phi(), tt->eta());
108  //m_ttMap.insert(std::make_pair(key, tt));
109  }
110  }
111  */
ZdcByteStreamRawData::execute
virtual StatusCode execute() override
Definition: ZdcByteStreamRawData.cxx:45
AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
AthCommonMsg< Algorithm >::msgLvl
bool msgLvl(const MSG::Level lvl) const
Definition: AthCommonMsg.h:30
ZdcByteStreamRawData.h
vec
std::vector< size_t > vec
Definition: CombinationsGeneratorTest.cxx:12
ZdcDigitsCollection.h
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
ZdcByteStreamRawData::m_ZdcDigitsCollectionLocation
std::string m_ZdcDigitsCollectionLocation
Definition: ZdcByteStreamRawData.h:45
ZdcByteStreamRawData::m_forceSlicesLut
int m_forceSlicesLut
REMOVE Force number of LUT slices REMOVE.
Definition: ZdcByteStreamRawData.h:51
ZdcByteStreamRawData::printVec
void printVec(const std::vector< int > &vec) const
Definition: ZdcByteStreamRawData.cxx:83
ZdcByteStreamRawData::printZdcDigits
void printZdcDigits() const
Definition: ZdcByteStreamRawData.cxx:73
AthCommonDataStore< AthCommonMsg< Algorithm > >::evtStore
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:85
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ZdcByteStreamRawData::m_ZdcDigitsMap
ZdcDigitsMap m_ZdcDigitsMap
Definition: ZdcByteStreamRawData.h:55
ZdcByteStreamRawData::m_forceSlicesFadc
int m_forceSlicesFadc
REMOVE Force number of FADC slices REMOVE.
Definition: ZdcByteStreamRawData.h:54
AthAlgorithm
Definition: AthAlgorithm.h:47
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
ZdcDigits.h
python.LumiBlobConversion.pos
pos
Definition: LumiBlobConversion.py:18
ZdcDefs.h
ZdcByteStreamRawData::ZdcByteStreamRawData
ZdcByteStreamRawData(const std::string &name, ISvcLocator *pSvcLocator)
Definition: ZdcByteStreamRawData.cxx:34
DEBUG
#define DEBUG
Definition: page_access.h:11
AthCommonMsg< Algorithm >::msg
MsgStream & msg() const
Definition: AthCommonMsg.h:24
ZdcDigitsCollection
Definition: ZdcDigitsCollection.h:20
StoreGateSvc.h
DataVector::empty
bool empty() const noexcept
Returns true if the collection is empty.
ZdcDefs::ZdcDigitsCollectionLocation
static const std::string ZdcDigitsCollectionLocation
Definition: ZdcDefs.h:20