ATLAS Offline Software
Loading...
Searching...
No Matches
L1CaloReadoutConfigContainerJSON Class Reference

#include <L1CaloReadoutConfigContainerJSON.h>

Inheritance diagram for L1CaloReadoutConfigContainerJSON:
Collaboration diagram for L1CaloReadoutConfigContainerJSON:

Public Types

using const_iterator = std::vector<L1CaloReadoutConfigJSON>::const_iterator

Public Member Functions

 L1CaloReadoutConfigContainerJSON ()
 L1CaloReadoutConfigContainerJSON (const std::string &folderKey)
virtual ~L1CaloReadoutConfigContainerJSON ()=default
virtual void makeTransient (const std::map< std::string, const CondAttrListCollection * > &) override
virtual DataObject * makePersistent () const override
virtual void clear () override
const L1CaloReadoutConfigJSONreadoutConfigJSON (unsigned int channelId) const
const L1CaloReadoutConfigJSONreadoutConfigJSON (const L1CaloCoolChannelId &channelId) const
const_iterator begin () const
const_iterator end () const
void addReadoutConfigJSON (const L1CaloReadoutConfigJSON &readoutConfigJSON)
virtual void makeTransient (const std::map< std::string, const AthenaAttributeList * > &condAttributeList)
std::string specificationName (int specId) const
std::string specificationType (int specId) const
void addSpecification (int specId, const std::string &specName, const std::string &specType)
coral::AttributeListSpecification * createAttributeListSpecification () const
virtual std::string conditionType () const
virtual std::vector< std::string > coolInputKeys () const
virtual std::string coolOutputKey () const

Private Types

enum  eAttrSpecification {
  ebaselinePointer , enumFadcSlices , el1aFadcSlice , enumLutSlices ,
  el1aLutSlice , enumProcSlices , el1aProcSlice , enumTopoSlices ,
  el1aTopoSlice , enumFexSlices , el1aFexSlice , elatencyPpmFadc ,
  elatencyPpmLut , elatencyCpmInput , elatencyCpmHits , elatencyCpmRoi ,
  elatencyJemInput , elatencyJemRoi , elatencyCpCmxBackplane , elatencyCpCmxLocal ,
  elatencyCpCmxCable , elatencyCpCmxSystem , elatencyCpCmxInfo , elatencyJetCmxBackplane ,
  elatencyJetCmxLocal , elatencyJetCmxCable , elatencyJetCmxSystem , elatencyJetCmxInfo ,
  elatencyJetCmxRoi , elatencyEnergyCmxBackplane , elatencyEnergyCmxLocal , elatencyEnergyCmxCable ,
  elatencyEnergyCmxSystem , elatencyEnergyCmxInfo , elatencyEnergyCmxRoi , elatencyTopo ,
  einternalLatencyJemJet , einternalLatencyJemSum , ebcOffsetJemJet , ebcOffsetJemSum ,
  ebcOffsetCmx , ebcOffsetTopo , eformatTypePpm , eformatTypeCpJep ,
  eformatTypeTopo , ecompressionThresholdPpm , ecompressionThresholdCpJep , ecompressionThresholdTopo ,
  ecompressionBaselinePpm , ereadout80ModePpm , einputReadoutModeFex , ereadoutOffsetEfex ,
  ereadoutOffsetGfex , ereadoutOffsetJfex , ereadoutOffsetPh1Topo
}
typedef std::map< int, std::string > AttrSpecificationMap

Private Attributes

std::vector< L1CaloReadoutConfigJSONm_readoutConfigsJSON
AttrSpecificationMap m_attrSpecificationNameMap
AttrSpecificationMap m_attrSpecificationTypeMap
std::string m_strConditionType

Detailed Description

Definition at line 27 of file L1CaloReadoutConfigContainerJSON.h.

Member Typedef Documentation

◆ AttrSpecificationMap

typedef std::map<int, std::string> AbstractL1CaloPersistentCondition::AttrSpecificationMap
privateinherited

Definition at line 50 of file AbstractL1CaloPersistentCondition.h.

◆ const_iterator

Member Enumeration Documentation

◆ eAttrSpecification

Enumerator
ebaselinePointer 
enumFadcSlices 
el1aFadcSlice 
enumLutSlices 
el1aLutSlice 
enumProcSlices 
el1aProcSlice 
enumTopoSlices 
el1aTopoSlice 
enumFexSlices 
el1aFexSlice 
elatencyPpmFadc 
elatencyPpmLut 
elatencyCpmInput 
elatencyCpmHits 
elatencyCpmRoi 
elatencyJemInput 
elatencyJemRoi 
elatencyCpCmxBackplane 
elatencyCpCmxLocal 
elatencyCpCmxCable 
elatencyCpCmxSystem 
elatencyCpCmxInfo 
elatencyJetCmxBackplane 
elatencyJetCmxLocal 
elatencyJetCmxCable 
elatencyJetCmxSystem 
elatencyJetCmxInfo 
elatencyJetCmxRoi 
elatencyEnergyCmxBackplane 
elatencyEnergyCmxLocal 
elatencyEnergyCmxCable 
elatencyEnergyCmxSystem 
elatencyEnergyCmxInfo 
elatencyEnergyCmxRoi 
elatencyTopo 
einternalLatencyJemJet 
einternalLatencyJemSum 
ebcOffsetJemJet 
ebcOffsetJemSum 
ebcOffsetCmx 
ebcOffsetTopo 
eformatTypePpm 
eformatTypeCpJep 
eformatTypeTopo 
ecompressionThresholdPpm 
ecompressionThresholdCpJep 
ecompressionThresholdTopo 
ecompressionBaselinePpm 
ereadout80ModePpm 
einputReadoutModeFex 
ereadoutOffsetEfex 
ereadoutOffsetGfex 
ereadoutOffsetJfex 
ereadoutOffsetPh1Topo 

Definition at line 30 of file L1CaloReadoutConfigContainerJSON.h.

Constructor & Destructor Documentation

◆ L1CaloReadoutConfigContainerJSON() [1/2]

L1CaloReadoutConfigContainerJSON::L1CaloReadoutConfigContainerJSON ( )

Definition at line 19 of file L1CaloReadoutConfigContainerJSON.cxx.

20 : AbstractL1CaloPersistentCondition("CondAttrListCollection")
21{
22 this->addSpecification(ebaselinePointer, "baselinePointer", "unsigned int");
23 this->addSpecification(enumFadcSlices, "numFadcSlices", "unsigned int");
24 this->addSpecification(el1aFadcSlice, "l1aFadcSlice", "unsigned int");
25 this->addSpecification(enumLutSlices, "numLutSlices", "unsigned int");
26 this->addSpecification(el1aLutSlice, "l1aLutSlice", "unsigned int");
27 this->addSpecification(enumProcSlices, "numProcSlices", "unsigned int");
28 this->addSpecification(el1aProcSlice, "l1aProcSlice", "unsigned int");
29 this->addSpecification(enumTopoSlices, "numTopoSlices", "unsigned int");
30 this->addSpecification(el1aTopoSlice, "l1aTopoSlice", "unsigned int");
31 this->addSpecification(enumFexSlices, "numFexSlices", "unsigned int");
32 this->addSpecification(el1aFexSlice, "l1aFexSlice", "unsigned int");
33 this->addSpecification(elatencyPpmFadc, "latencyPpmFadc", "unsigned int");
34 this->addSpecification(elatencyPpmLut, "latencyPpmLut", "unsigned int");
35 this->addSpecification(elatencyCpmInput, "latencyCpmInput", "unsigned int");
36 this->addSpecification(elatencyCpmHits, "latencyCpmHits", "unsigned int");
37 this->addSpecification(elatencyCpmRoi, "latencyCpmRoi", "unsigned int");
38 this->addSpecification(elatencyJemInput, "latencyJemInput", "unsigned int");
39 this->addSpecification(elatencyJemRoi, "latencyJemRoi", "unsigned int");
40 this->addSpecification(elatencyCpCmxBackplane, "latencyCpCmxBackplane", "unsigned int");
41 this->addSpecification(elatencyCpCmxLocal, "latencyCpCmxLocal", "unsigned int");
42 this->addSpecification(elatencyCpCmxCable, "latencyCpCmxCable", "unsigned int");
43 this->addSpecification(elatencyCpCmxSystem, "latencyCpCmxSystem", "unsigned int");
44 this->addSpecification(elatencyCpCmxInfo, "latencyCpCmxInfo", "unsigned int");
45 this->addSpecification(elatencyJetCmxBackplane, "latencyJetCmxBackplane", "unsigned int");
46 this->addSpecification(elatencyJetCmxLocal, "latencyJetCmxLocal", "unsigned int");
47 this->addSpecification(elatencyJetCmxCable, "latencyJetCmxCable", "unsigned int");
48 this->addSpecification(elatencyJetCmxSystem, "latencyJetCmxSystem", "unsigned int");
49 this->addSpecification(elatencyJetCmxInfo, "latencyJetCmxInfo", "unsigned int");
50 this->addSpecification(elatencyJetCmxRoi, "latencyJetCmxRoi", "unsigned int");
51 this->addSpecification(elatencyEnergyCmxBackplane, "latencyEnergyCmxBackplane", "unsigned int");
52 this->addSpecification(elatencyEnergyCmxLocal, "latencyEnergyCmxLocal", "unsigned int");
53 this->addSpecification(elatencyEnergyCmxCable, "latencyEnergyCmxCable", "unsigned int");
54 this->addSpecification(elatencyEnergyCmxSystem, "latencyEnergyCmxSystem", "unsigned int");
55 this->addSpecification(elatencyEnergyCmxInfo, "latencyEnergyCmxInfo", "unsigned int");
56 this->addSpecification(elatencyEnergyCmxRoi, "latencyEnergyCmxRoi", "unsigned int");
57 this->addSpecification(elatencyTopo, "latencyTopo", "unsigned int");
58 this->addSpecification(einternalLatencyJemJet, "internalLatencyJemJet", "unsigned int");
59 this->addSpecification(einternalLatencyJemSum, "internalLatencyJemSum", "unsigned int");
60 this->addSpecification(ebcOffsetJemJet, "bcOffsetJemJet", "unsigned int");
61 this->addSpecification(ebcOffsetJemSum, "bcOffsetJemSum", "unsigned int");
62 this->addSpecification(ebcOffsetCmx, "bcOffsetCmx", "int");
63 this->addSpecification(ebcOffsetTopo, "bcOffsetTopo", "int");
64 this->addSpecification(eformatTypePpm, "formatTypePpm", "string");
65 this->addSpecification(eformatTypeCpJep, "formatTypeCpJep", "string");
66 this->addSpecification(eformatTypeTopo, "formatTypeTopo", "string");
67 this->addSpecification(ecompressionThresholdPpm, "compressionThresholdPpm", "unsigned int");
68 this->addSpecification(ecompressionThresholdCpJep, "compressionThresholdCpJep", "unsigned int");
69 this->addSpecification(ecompressionThresholdTopo, "compressionThresholdTopo", "unsigned int");
70 this->addSpecification(ecompressionBaselinePpm, "compressionBaselinePpm", "unsigned int");
71 this->addSpecification(ereadout80ModePpm, "readout80ModePpm", "unsigned int");
72 this->addSpecification(einputReadoutModeFex, "inputReadoutModeFex", "string");
73 this->addSpecification(ereadoutOffsetEfex, "readoutOffsetEfex", "unsigned int");
74 this->addSpecification(ereadoutOffsetGfex, "readoutOffsetGfex", "unsigned int");
75 this->addSpecification(ereadoutOffsetJfex, "readoutOffsetJfex", "unsigned int");
76 this->addSpecification(ereadoutOffsetPh1Topo, "readoutOffsetPh1Topo", "unsigned int");
77
78
79}
AbstractL1CaloPersistentCondition(const std::string &condType)
void addSpecification(int specId, const std::string &specName, const std::string &specType)

◆ L1CaloReadoutConfigContainerJSON() [2/2]

L1CaloReadoutConfigContainerJSON::L1CaloReadoutConfigContainerJSON ( const std::string & folderKey)

◆ ~L1CaloReadoutConfigContainerJSON()

virtual L1CaloReadoutConfigContainerJSON::~L1CaloReadoutConfigContainerJSON ( )
virtualdefault

Member Function Documentation

◆ addReadoutConfigJSON()

void L1CaloReadoutConfigContainerJSON::addReadoutConfigJSON ( const L1CaloReadoutConfigJSON & readoutConfigJSON)

Definition at line 249 of file L1CaloReadoutConfigContainerJSON.cxx.

250{
251 // insert into the correct position mainting the sorted vector
252 m_readoutConfigsJSON.insert(std::lower_bound(std::begin(m_readoutConfigsJSON),
253 std::end(m_readoutConfigsJSON),
254 readoutConfigJSON.channelId(),
255 [](const L1CaloReadoutConfigJSON& el, unsigned int va) -> bool {
256 return el.channelId() < va;
257 }),
259}
const L1CaloReadoutConfigJSON * readoutConfigJSON(unsigned int channelId) const
std::vector< L1CaloReadoutConfigJSON > m_readoutConfigsJSON

◆ addSpecification()

void AbstractL1CaloPersistentCondition::addSpecification ( int specId,
const std::string & specName,
const std::string & specType )
inherited

Definition at line 26 of file AbstractL1CaloPersistentCondition.cxx.

26 {
27 m_attrSpecificationNameMap[specId] = specName;
28 m_attrSpecificationTypeMap[specId] = specType;
29}

◆ begin()

const_iterator L1CaloReadoutConfigContainerJSON::begin ( ) const
inline

Definition at line 49 of file L1CaloReadoutConfigContainerJSON.h.

49{ return m_readoutConfigsJSON.begin(); }

◆ clear()

virtual void L1CaloReadoutConfigContainerJSON::clear ( )
inlineoverridevirtual

Reimplemented from AbstractL1CaloPersistentCondition.

Definition at line 40 of file L1CaloReadoutConfigContainerJSON.h.

40{ m_readoutConfigsJSON.clear(); }

◆ conditionType()

virtual std::string AbstractL1CaloPersistentCondition::conditionType ( ) const
inlinevirtualinherited

◆ coolInputKeys()

◆ coolOutputKey()

◆ createAttributeListSpecification()

coral::AttributeListSpecification * AbstractL1CaloPersistentCondition::createAttributeListSpecification ( ) const
inherited

Definition at line 31 of file AbstractL1CaloPersistentCondition.cxx.

31 {
32
33 coral::AttributeListSpecification* attrSpecification = new coral::AttributeListSpecification();
34
35 AttrSpecificationMap::const_iterator it_name = m_attrSpecificationNameMap.begin();
36 AttrSpecificationMap::const_iterator it_type = m_attrSpecificationTypeMap.begin();
37
38 for(;it_name!=m_attrSpecificationNameMap.end();++it_name,++it_type) {
39 attrSpecification->extend(it_name->second, it_type->second);
40 }
41 return attrSpecification;
42}

◆ end()

const_iterator L1CaloReadoutConfigContainerJSON::end ( ) const
inline

Definition at line 50 of file L1CaloReadoutConfigContainerJSON.h.

50{ return m_readoutConfigsJSON.end(); }

◆ makePersistent()

DataObject * L1CaloReadoutConfigContainerJSON::makePersistent ( ) const
overridevirtual

Reimplemented from AbstractL1CaloPersistentCondition.

Definition at line 83 of file L1CaloReadoutConfigContainerJSON.cxx.

84{
85
86 auto* attrSpecification = this->createAttributeListSpecification();
87 if(!attrSpecification || !attrSpecification->size()) return nullptr;
88
89 auto attrListCollection = std::make_unique<CondAttrListCollection>(true);
90 for(const auto& item : m_readoutConfigsJSON) {
91 AthenaAttributeList attrList(*attrSpecification);
92 attrList[specificationName(ebaselinePointer)].setValue(item.baselinePointer());
93 attrList[specificationName(enumFadcSlices)].setValue(item.numFadcSlices());
94 attrList[specificationName(el1aFadcSlice)].setValue(item.l1aFadcSlice());
95 attrList[specificationName(enumLutSlices)].setValue(item.numLutSlices());
96 attrList[specificationName(el1aLutSlice)].setValue(item.l1aLutSlice());
97 attrList[specificationName(enumProcSlices)].setValue(item.numProcSlices());
98 attrList[specificationName(el1aProcSlice)].setValue(item.l1aProcSlice());
99 attrList[specificationName(enumTopoSlices)].setValue(item.numTopoSlices());
100 attrList[specificationName(el1aTopoSlice)].setValue(item.l1aTopoSlice());
101 attrList[specificationName(enumFexSlices)].setValue(item.numFexSlices());
102 attrList[specificationName(el1aFexSlice)].setValue(item.l1aFexSlice());
103 attrList[specificationName(elatencyPpmFadc)].setValue(item.latencyPpmFadc());
104 attrList[specificationName(elatencyPpmLut)].setValue(item.latencyPpmLut());
105 attrList[specificationName(elatencyCpmInput)].setValue(item.latencyCpmInput());
106 attrList[specificationName(elatencyCpmHits)].setValue(item.latencyCpmHits());
107 attrList[specificationName(elatencyCpmRoi)].setValue(item.latencyCpmRoi());
108 attrList[specificationName(elatencyJemInput)].setValue(item.latencyJemInput());
109 attrList[specificationName(elatencyJemRoi)].setValue(item.latencyJemRoi());
110 attrList[specificationName(elatencyCpCmxBackplane)].setValue(item.latencyCpCmxBackplane());
111 attrList[specificationName(elatencyCpCmxLocal)].setValue(item.latencyCpCmxLocal());
112 attrList[specificationName(elatencyCpCmxCable)].setValue(item.latencyCpCmxCable());
113 attrList[specificationName(elatencyCpCmxSystem)].setValue(item.latencyCpCmxSystem());
114 attrList[specificationName(elatencyCpCmxInfo)].setValue(item.latencyCpCmxInfo());
115 attrList[specificationName(elatencyJetCmxBackplane)].setValue(item.latencyJetCmxBackplane());
116 attrList[specificationName(elatencyJetCmxLocal)].setValue(item.latencyJetCmxLocal());
117 attrList[specificationName(elatencyJetCmxCable)].setValue(item.latencyJetCmxCable());
118 attrList[specificationName(elatencyJetCmxSystem)].setValue(item.latencyJetCmxSystem());
119 attrList[specificationName(elatencyJetCmxInfo)].setValue(item.latencyJetCmxInfo());
120 attrList[specificationName(elatencyJetCmxRoi)].setValue(item.latencyJetCmxRoi());
121 attrList[specificationName(elatencyEnergyCmxBackplane)].setValue(item.latencyEnergyCmxBackplane());
122 attrList[specificationName(elatencyEnergyCmxLocal)].setValue(item.latencyEnergyCmxLocal());
123 attrList[specificationName(elatencyEnergyCmxCable)].setValue(item.latencyEnergyCmxCable());
124 attrList[specificationName(elatencyEnergyCmxSystem)].setValue(item.latencyEnergyCmxSystem());
125 attrList[specificationName(elatencyEnergyCmxInfo)].setValue(item.latencyEnergyCmxInfo());
126 attrList[specificationName(elatencyEnergyCmxRoi)].setValue(item.latencyEnergyCmxRoi());
127 attrList[specificationName(elatencyTopo)].setValue(item.latencyTopo());
128 attrList[specificationName(einternalLatencyJemJet)].setValue(item.internalLatencyJemJet());
129 attrList[specificationName(einternalLatencyJemSum)].setValue(item.internalLatencyJemSum());
130 attrList[specificationName(ebcOffsetJemJet)].setValue(item.bcOffsetJemJet());
131 attrList[specificationName(ebcOffsetJemSum)].setValue(item.bcOffsetJemSum());
132 attrList[specificationName(ebcOffsetCmx)].setValue(item.bcOffsetCmx());
133 attrList[specificationName(ebcOffsetTopo)].setValue(item.bcOffsetTopo());
134 attrList[specificationName(eformatTypePpm)].setValue(item.formatTypePpm());
135 attrList[specificationName(eformatTypeCpJep)].setValue(item.formatTypeCpJep());
136 attrList[specificationName(eformatTypeTopo)].setValue(item.formatTypeTopo());
137 attrList[specificationName(ecompressionThresholdPpm)].setValue(item.compressionThresholdPpm());
138 attrList[specificationName(ecompressionThresholdCpJep)].setValue(item.compressionThresholdCpJep());
139 attrList[specificationName(ecompressionThresholdTopo)].setValue(item.compressionThresholdTopo());
140 attrList[specificationName(ecompressionBaselinePpm)].setValue(item.compressionBaselinePpm());
141 attrList[specificationName(ereadout80ModePpm)].setValue(item.readout80ModePpm());
142 attrList[specificationName(einputReadoutModeFex)].setValue(item.inputReadoutModeFex());
143 attrList[specificationName(ereadoutOffsetEfex)].setValue(item.readoutOffsetEfex());
144 attrList[specificationName(ereadoutOffsetGfex)].setValue(item.readoutOffsetGfex());
145 attrList[specificationName(ereadoutOffsetJfex)].setValue(item.readoutOffsetJfex());
146 attrList[specificationName(ereadoutOffsetPh1Topo)].setValue(item.readoutOffsetPh1Topo());
147
148 attrListCollection->add(item.channelId(), attrList);
149 }
150 return static_cast<DataObject*>(attrListCollection.release());
151}
coral::AttributeListSpecification * createAttributeListSpecification() const

◆ makeTransient() [1/2]

void AbstractL1CaloPersistentCondition::makeTransient ( const std::map< std::string, const AthenaAttributeList * > & condAttributeList)
virtual

Reimplemented from AbstractL1CaloPersistentCondition.

Definition at line 30 of file AbstractL1CaloPersistentCondition.cxx.

21 {
22 std::cout << "ERROR - The makeTransient(const map<std::string, const AthenaAttributeList*>) method you are calling is not implemented by the current class !" << std::endl;
23 return;
24}

◆ makeTransient() [2/2]

void L1CaloReadoutConfigContainerJSON::makeTransient ( const std::map< std::string, const CondAttrListCollection * > & condAttrListCollectionMap)
overridevirtual

Reimplemented from AbstractL1CaloPersistentCondition.

Definition at line 153 of file L1CaloReadoutConfigContainerJSON.cxx.

154{
155 clear();
156
157
158 if (condAttrListCollectionMap.empty()) return;
159 auto it = condAttrListCollectionMap.rbegin();
160
161
162
163 auto attrListCollection = it->second;
164 for(const auto& [chanNum, attrListAux] : *attrListCollection) {
165
166 const coral::Blob& blob=attrListAux["json"].data<coral::Blob>();
167 std::string s((char*)blob.startingAddress(),blob.size());
168 nlohmann::json attrList = nlohmann::json::parse(s);
169
170
171 try {
172
173 auto baselinePointer = attrList[specificationName(ebaselinePointer)];
174 auto numFadcSlices = attrList[specificationName(enumFadcSlices)];
175 auto l1aFadcSlice = attrList[specificationName(el1aFadcSlice)];
176 auto numLutSlices = attrList[specificationName(enumLutSlices)];
177 auto l1aLutSlice = attrList[specificationName(el1aLutSlice)];
178 auto numProcSlices = attrList[specificationName(enumProcSlices)];
179 auto l1aProcSlice = attrList[specificationName(el1aProcSlice)];
180 auto numTopoSlices = attrList[specificationName(enumTopoSlices)];
181 auto l1aTopoSlice = attrList[specificationName(el1aTopoSlice)];
182 auto numFexSlices = attrList[specificationName(enumFexSlices)];
183 auto l1aFexSlice = attrList[specificationName(el1aFexSlice)];
184 auto latencyPpmFadc = attrList[specificationName(elatencyPpmFadc)];
185 auto latencyPpmLut = attrList[specificationName(elatencyPpmLut)];
186 auto latencyCpmInput = attrList[specificationName(elatencyCpmInput)];
187 auto latencyCpmHits = attrList[specificationName(elatencyCpmHits)];
188 auto latencyCpmRoi = attrList[specificationName(elatencyCpmRoi)];
189 auto latencyJemInput = attrList[specificationName(elatencyJemInput)];
190 auto latencyJemRoi = attrList[specificationName(elatencyJemRoi)];
191 auto latencyCpCmxBackplane = attrList[specificationName(elatencyCpCmxBackplane)];
192 auto latencyCpCmxLocal = attrList[specificationName(elatencyCpCmxLocal)];
193 auto latencyCpCmxCable = attrList[specificationName(elatencyCpCmxCable)];
194 auto latencyCpCmxSystem = attrList[specificationName(elatencyCpCmxSystem)];
195 auto latencyCpCmxInfo = attrList[specificationName(elatencyCpCmxInfo)];
196 auto latencyJetCmxBackplane = attrList[specificationName(elatencyJetCmxBackplane)];
197 auto latencyJetCmxLocal = attrList[specificationName(elatencyJetCmxLocal)];
198 auto latencyJetCmxCable = attrList[specificationName(elatencyJetCmxCable)];
199 auto latencyJetCmxSystem = attrList[specificationName(elatencyJetCmxSystem)];
200 auto latencyJetCmxInfo = attrList[specificationName(elatencyJetCmxInfo)];
201 auto latencyJetCmxRoi = attrList[specificationName(elatencyJetCmxRoi)];
202 auto latencyEnergyCmxBackplane = attrList[specificationName(elatencyEnergyCmxBackplane)];
203 auto latencyEnergyCmxLocal = attrList[specificationName(elatencyEnergyCmxLocal)];
204 auto latencyEnergyCmxCable = attrList[specificationName(elatencyEnergyCmxCable)];
205 auto latencyEnergyCmxSystem = attrList[specificationName(elatencyEnergyCmxSystem)];
206 auto latencyEnergyCmxInfo = attrList[specificationName(elatencyEnergyCmxInfo)];
207 auto latencyEnergyCmxRoi = attrList[specificationName(elatencyEnergyCmxRoi)];
208 auto latencyTopo = attrList[specificationName(elatencyTopo)];
209 auto internalLatencyJemJet = attrList[specificationName(einternalLatencyJemJet)];
210 auto internalLatencyJemSum = attrList[specificationName(einternalLatencyJemSum)];
211 auto bcOffsetJemJet = attrList[specificationName(ebcOffsetJemJet)];
212 auto bcOffsetJemSum = attrList[specificationName(ebcOffsetJemSum)];
213 auto bcOffsetCmx = attrList[specificationName(ebcOffsetCmx)];
214 auto bcOffsetTopo = attrList[specificationName(ebcOffsetTopo)];
215 auto formatTypePpm = attrList[specificationName(eformatTypePpm)];
216 auto formatTypeCpJep = attrList[specificationName(eformatTypeCpJep)];
217 auto formatTypeTopo = attrList[specificationName(eformatTypeTopo)];
218 auto compressionThresholdPpm = attrList[specificationName(ecompressionThresholdPpm)];
219 auto compressionThresholdCpJep = attrList[specificationName(ecompressionThresholdCpJep)];
220 auto compressionThresholdTopo = attrList[specificationName(ecompressionThresholdTopo)];
221 auto compressionBaselinePpm = attrList[specificationName(ecompressionBaselinePpm)];
222 auto readout80ModePpm = attrList[specificationName(ereadout80ModePpm)];
223 auto inputReadoutModeFex = attrList[specificationName(einputReadoutModeFex)];
224 auto readoutOffsetEfex = attrList[specificationName(ereadoutOffsetEfex)];
225 auto readoutOffsetGfex = attrList[specificationName(ereadoutOffsetGfex)];
226 auto readoutOffsetJfex = attrList[specificationName(ereadoutOffsetJfex)];
227 auto readoutOffsetPh1Topo = attrList[specificationName(ereadoutOffsetPh1Topo)];
228
229
230 addReadoutConfigJSON(L1CaloReadoutConfigJSON(chanNum, baselinePointer, numFadcSlices, l1aFadcSlice, numLutSlices, l1aLutSlice, numProcSlices, l1aProcSlice, numTopoSlices, l1aTopoSlice, numFexSlices, l1aFexSlice, latencyPpmFadc, latencyPpmLut, latencyCpmInput, latencyCpmHits, latencyCpmRoi, latencyJemInput, latencyJemRoi, latencyCpCmxBackplane, latencyCpCmxLocal, latencyCpCmxCable, latencyCpCmxSystem, latencyCpCmxInfo, latencyJetCmxBackplane, latencyJetCmxLocal, latencyJetCmxCable, latencyJetCmxSystem, latencyJetCmxInfo, latencyJetCmxRoi, latencyEnergyCmxBackplane, latencyEnergyCmxLocal, latencyEnergyCmxCable, latencyEnergyCmxSystem, latencyEnergyCmxInfo, latencyEnergyCmxRoi, latencyTopo, internalLatencyJemJet, internalLatencyJemSum, bcOffsetJemJet, bcOffsetJemSum, bcOffsetCmx, bcOffsetTopo, formatTypePpm, formatTypeCpJep, formatTypeTopo, compressionThresholdPpm, compressionThresholdCpJep, compressionThresholdTopo, compressionBaselinePpm, readout80ModePpm, inputReadoutModeFex, readoutOffsetEfex, readoutOffsetGfex, readoutOffsetJfex, readoutOffsetPh1Topo));
231 }
232 catch(const std::exception& e) { std::cout << "ERROR - Caught exception during creation of AthenaAttributeList object from ReadoutConfigJSON " << e.what() <<std::endl; }
233
234
235 }}
void addReadoutConfigJSON(const L1CaloReadoutConfigJSON &readoutConfigJSON)

◆ readoutConfigJSON() [1/2]

const L1CaloReadoutConfigJSON * L1CaloReadoutConfigContainerJSON::readoutConfigJSON ( const L1CaloCoolChannelId & channelId) const
inline

◆ readoutConfigJSON() [2/2]

const L1CaloReadoutConfigJSON * L1CaloReadoutConfigContainerJSON::readoutConfigJSON ( unsigned int channelId) const

Definition at line 237 of file L1CaloReadoutConfigContainerJSON.cxx.

238{
239 auto it = std::lower_bound(std::begin(m_readoutConfigsJSON),
240 std::end(m_readoutConfigsJSON),
241 channelId,
242 [](const L1CaloReadoutConfigJSON& el, unsigned int val) -> bool {
243 return el.channelId() < val;
244 });
245 if(it == std::end(m_readoutConfigsJSON)) return nullptr;
246 return &(*it);
247}

◆ specificationName()

std::string AbstractL1CaloPersistentCondition::specificationName ( int specId) const
inherited

Definition at line 44 of file AbstractL1CaloPersistentCondition.cxx.

44 {
45 return m_attrSpecificationNameMap.find(specId)->second;
46}

◆ specificationType()

std::string AbstractL1CaloPersistentCondition::specificationType ( int specId) const
inherited

Definition at line 48 of file AbstractL1CaloPersistentCondition.cxx.

48 {
49 return m_attrSpecificationTypeMap.find(specId)->second;
50}

Member Data Documentation

◆ m_attrSpecificationNameMap

AttrSpecificationMap AbstractL1CaloPersistentCondition::m_attrSpecificationNameMap
privateinherited

Definition at line 51 of file AbstractL1CaloPersistentCondition.h.

◆ m_attrSpecificationTypeMap

AttrSpecificationMap AbstractL1CaloPersistentCondition::m_attrSpecificationTypeMap
privateinherited

Definition at line 52 of file AbstractL1CaloPersistentCondition.h.

◆ m_readoutConfigsJSON

std::vector<L1CaloReadoutConfigJSON> L1CaloReadoutConfigContainerJSON::m_readoutConfigsJSON
private

Definition at line 56 of file L1CaloReadoutConfigContainerJSON.h.

◆ m_strConditionType

std::string AbstractL1CaloPersistentCondition::m_strConditionType
privateinherited

Definition at line 53 of file AbstractL1CaloPersistentCondition.h.


The documentation for this class was generated from the following files: