ATLAS Offline Software
Loading...
Searching...
No Matches
L1CaloPprChanExtraContainer.h
Go to the documentation of this file.
1// -*- C++ -*-
2
3/*
4 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
5*/
6
7#ifndef TRIGT1CALOCALIBCONDITIONS_L1CALOPPRCHANCALIBCONTAINER_H
8#define TRIGT1CALOCALIBCONDITIONS_L1CALOPPRCHANCALIBCONTAINER_H
9
10#include <map>
11#include <string>
12#include <vector>
14#include "GaudiKernel/DataObject.h"
18
20
21/***
22* Container of L1CaloPprChanCalib objects. Automatically created using:
23*
24* python/CreateClassesForFolder.py --db frontier://ATLF/();schema=ATLAS_COOLONL_TRIGGER;dbname=CONDBR2 --exclude ModuleId,PprDacScanResultsTimeStamp,PprPedestalRunResultsTimeStamp,PprNoiseRunResultsTimeStamp,PprTimingResultsTimeStamp,PprSatBcidResultsTimeStamp,PprFirFilterResultsTimeStamp,PprLutValuesResultsTimeStamp,DacOffset,DacSlope,FullDelayData,SyncDelayBcid,InBcidNegedge,rateCpEtThresh,rateJepEtThresh /TRIGGER/L1Calo/V2/Calibration/Physics/PprChanCalib
25*/
26class L1CaloPprChanExtraContainer : public DataObject, virtual public AbstractL1CaloPersistentCondition
27{
28private:
30public:
32 L1CaloPprChanExtraContainer(const std::string& folderKey);
34
35 // interface of AbstractL1CaloPersistentCondition
37 virtual void makeTransient(const std::map<std::string, const CondAttrListCollection*>&);
38 virtual DataObject* makePersistent() const;
39 virtual std::vector<std::string> coolInputKeys() const { return {m_coolFolderKey}; }
40 virtual std::string coolOutputKey() const { return m_coolFolderKey; }
41 virtual void clear() { m_pprChanExtras.clear(); }
42
43 // getters
44 const L1CaloPprChanExtra* pprChanExtra(unsigned int channelId) const;
45 const L1CaloPprChanExtra* pprChanExtra(const L1CaloCoolChannelId& channelId) const {
46 return pprChanExtra(channelId.id());
47 }
48
49 using iterator = std::vector<L1CaloPprChanExtra>::iterator;
50 iterator begin() { return m_pprChanExtras.begin(); }
51 iterator end() { return m_pprChanExtras.end(); }
52 using const_iterator = std::vector<L1CaloPprChanExtra>::const_iterator;
53 const_iterator begin() const { return m_pprChanExtras.begin(); }
54 const_iterator end() const { return m_pprChanExtras.end(); }
55
56 // setters
58
59private:
60 std::vector<L1CaloPprChanExtra> m_pprChanExtras;
61 std::string m_coolFolderKey = "/TRIGGER/L1Calo/V2/Calibration/Physics/PprChanExtra";
62};
63
65
66#endif // TRIGT1CALOCALIBCONDITIONS_L1CALOPPRCHANCALIBCONTAINER_H
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
virtual void makeTransient(const std::map< std::string, const CondAttrListCollection * > &condAttrListCollectionMap)
AbstractL1CaloPersistentCondition(const std::string &condType)
This class is a collection of AttributeLists where each one is associated with a channel number.
Encapsulates the ID of one channel of conditions data in COOL, ie the ID of a row in a table.
virtual DataObject * makePersistent() const
std::vector< L1CaloPprChanExtra > m_pprChanExtras
virtual std::string coolOutputKey() const
virtual void makeTransient(const std::map< std::string, const CondAttrListCollection * > &)
std::vector< L1CaloPprChanExtra >::const_iterator const_iterator
const L1CaloPprChanExtra * pprChanExtra(unsigned int channelId) const
void addPprChanExtra(const L1CaloPprChanExtra &pprChanExtra)
virtual std::vector< std::string > coolInputKeys() const
const L1CaloPprChanExtra * pprChanExtra(const L1CaloCoolChannelId &channelId) const
std::vector< L1CaloPprChanExtra >::iterator iterator
Folder <-> Object mapping for /TRIGGER/L1Calo/V2/Calibration/Physics/PprChanCalib .