ATLAS Offline Software
TrigConfCoolL1PayloadConverters.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 TrigConfStorage_TrigConfCoolL1PayloadConverters
6 #define TrigConfStorage_TrigConfCoolL1PayloadConverters
7 
8 #include <map>
9 #include <string>
10 #include <vector>
11 #include <sys/types.h>
12 #include <stdint.h>
13 #include "CoolKernel/pointers.h"
14 
15 namespace cool {
16  class IRecord;
17  class Record;
18 }
19 
20 namespace coral {
21  class AttributeList;
22 }
23 
24 namespace TrigConf {
25 
26  class Menu;
27  class BunchGroup;
28  class METSigParam;
29  class TriggerItem;
30  class TriggerThreshold;
31  class BunchGroupSet;
32  class PIT;
33  class TIP;
34  class ThresholdMonitor;
35 
36  namespace TrigConfCoolL1PayloadConverters {
37 
39  cool::Record createLvl1MenuPayload( cool::IFolderPtr, const TrigConf::TriggerItem & item );
40 
42  cool::Record createLvl1ItemDefPayload(cool::IFolderPtr, const TrigConf::TriggerItem & item );
43 
45  cool::Record createLvl1JetWeightPayload(cool::IFolderPtr, const std::vector<int>& jetweights );
46 
48  cool::Record createLvl1METSigPayload(cool::IFolderPtr, const METSigParam& metSigParams );
49 
51  cool::Record createLvl1ThresholdPayload(cool::IFolderPtr, const TrigConf::TriggerThreshold & thr );
52 
54  cool::Record createLvl1ConfigKeyPayload(cool::IFolderPtr, unsigned int lvl1PrescaleKey );
55 
62  cool::Record createLvl1PrescalesPayload(cool::IFolderPtr, int prescale);
63  cool::Record createLvl1PrescalesPayload(cool::IFolderPtr, int64_t prescale);
64 
70  cool::Record createLvl1BGKeyPayload(cool::IFolderPtr, unsigned int lvl1BunchgroupKey);
71 
77  cool::Record createLvl1BGContentPayload(cool::IFolderPtr fld, const TrigConf::BunchGroupSet& bgs);
78 
84  cool::Record createLvl1BGDescPayload( cool::IFolderPtr fld,
85  const TrigConf::BunchGroupSet& bgs,
86  const TrigConf::Menu& lvl1Menu);
87 
89  cool::Record createLvl1InputMapPayload(cool::IFolderPtr, const TrigConf::TIP& tip);
90 
91 
104  cool::Record createLvl1MonMapPayload( cool::IFolderPtr,
105  const std::string& type,
106  const uint16_t& bgId,
107  const std::string& threshName,
108  const std::string& slot,
109  const std::string& con,
110  const std::string& mult,
111  const std::string& start,
112  const std::string& end,
113  const std::string& active,
114  const std::string& monName = std::string(""),
115  const std::string& CounterLogic=std::string(""));
116 
117 
119  void readLvl1ConfigKey( const coral::AttributeList & al, unsigned int & lvl1PrescaleKey );
120 
121 
123  void readLvl1Prescale( const coral::AttributeList & al, int & ps );
124  void readLvl1Prescale( const coral::AttributeList & al, int64_t & ps );
125 
126 
128  int readLvl1BGKey( const coral::AttributeList & al);
129 
131  TrigConf::PIT* readLvl1InputMap( const coral::AttributeList & al); // backward compatible
132 
134 
136  std::vector<TrigConf::ThresholdMonitor*> readLvl1MonMap( const cool::IRecord & payload);
137 
138 
140  std::vector<TrigConf::BunchGroup> readLvl1BGContent( const coral::AttributeList & al);
141 
151  std::pair<std::vector<std::string>, std::map<unsigned int,unsigned char> >
153 
156 
157 
160 
161 
169  void addThresholdsToTriggerItem( const coral::AttributeList & al, TriggerItem * item, const std::vector<TrigConf::TriggerThreshold*>& thrs );
170 
171 
172  }
173 }
174 
175 #endif
TrigConf::BunchGroupSet
Definition: BunchGroupSet.h:19
TrigConf::TrigConfCoolL1PayloadConverters::createLvl1MonMapPayload
cool::Record createLvl1MonMapPayload(cool::IFolderPtr, const std::string &type, const uint16_t &bgId, const std::string &threshName, const std::string &slot, const std::string &con, const std::string &mult, const std::string &start, const std::string &end, const std::string &active, const std::string &monName=std::string(""), const std::string &CounterLogic=std::string(""))
build a COOL db record from a monitoring-mapping string value
Definition: TrigConfCoolL1PayloadConverters.cxx:368
TrigConf::PIT
Definition: PIT.h:13
TrigConf::TrigConfCoolL1PayloadConverters::readLvl1BGDesc
std::pair< std::vector< std::string >, std::map< unsigned int, unsigned char > > readLvl1BGDesc(const coral::AttributeList &al)
build the LVL1 Bunchgroup descriptions from a coral::AttributeList
Definition: TrigConfCoolL1PayloadConverters.cxx:555
TrigConf::METSigParam
Definition: METSigParam.h:12
TrigConf::TrigConfCoolL1PayloadConverters::createLvl1PrescalesPayload
cool::Record createLvl1PrescalesPayload(cool::IFolderPtr, int prescale)
build a COOL db record from a LVL1 prescale value
Definition: TrigConfCoolL1PayloadConverters.cxx:190
TrigConf::TrigConfCoolL1PayloadConverters::createLvl1ConfigKeyPayload
cool::Record createLvl1ConfigKeyPayload(cool::IFolderPtr, unsigned int lvl1PrescaleKey)
build a COOL db record from a LVL1 configuration key
Definition: TrigConfCoolL1PayloadConverters.cxx:182
TrigConf::TrigConfCoolL1PayloadConverters::readLvl1InputMap
TrigConf::PIT * readLvl1InputMap(const coral::AttributeList &al)
Build a LVL1 PIT object from COOL payload.
Definition: TrigConfCoolL1PayloadConverters.cxx:630
mergePhysValFiles.start
start
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:14
TrigConf::TIP
Definition: TIP.h:13
TrigConf::TrigConfCoolL1PayloadConverters::readLvl1BGContent
std::vector< TrigConf::BunchGroup > readLvl1BGContent(const coral::AttributeList &al)
build the LVL1 Bunchgroup code
Definition: TrigConfCoolL1PayloadConverters.cxx:518
TrigConf::TrigConfCoolL1PayloadConverters::readLvl1BGKey
int readLvl1BGKey(const coral::AttributeList &al)
build the LVL1 Bunchgroup key value
Definition: TrigConfCoolL1PayloadConverters.cxx:623
TrigConf::TrigConfCoolL1PayloadConverters::createLvl1METSigPayload
cool::Record createLvl1METSigPayload(cool::IFolderPtr, const METSigParam &metSigParams)
build a COOL db record from a L1 MET significance global parameters
Definition: TrigConfCoolL1PayloadConverters.cxx:91
TrigConf::TrigConfCoolL1PayloadConverters::createLvl1ThresholdPayload
cool::Record createLvl1ThresholdPayload(cool::IFolderPtr, const TrigConf::TriggerThreshold &thr)
build a COOL db record from a LVL1 TriggerItem
Definition: TrigConfCoolL1PayloadConverters.cxx:108
python.PyKernel.AttributeList
AttributeList
Definition: PyKernel.py:36
TrigConf::TrigConfCoolL1PayloadConverters::createLvl1Threshold
TriggerThreshold * createLvl1Threshold(const coral::AttributeList &al)
build a LVL1 TriggerThreshold from a COOL db record
Definition: TrigConfCoolL1PayloadConverters.cxx:417
TrigConf::TrigConfCoolL1PayloadConverters::addThresholdsToTriggerItem
void addThresholdsToTriggerItem(const coral::AttributeList &al, TriggerItem *item, const std::vector< TrigConf::TriggerThreshold * > &thrs)
build a TriggerThreshold definition from a COOL db record and add to the corresponding item
Definition: TrigConfCoolL1PayloadConverters.cxx:407
TrigConf::TrigConfCoolL1PayloadConverters::createLvl1BGDescPayload
cool::Record createLvl1BGDescPayload(cool::IFolderPtr fld, const TrigConf::BunchGroupSet &bgs, const TrigConf::Menu &lvl1Menu)
build a COOL db record from a bunch group description
Definition: TrigConfCoolL1PayloadConverters.cxx:283
cool
Definition: CoolTagInfo.h:12
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
TrigConf
Forward iterator to traverse the main components of the trigger configuration.
Definition: Config.h:22
coral
Definition: ISecondaryEventSelector.h:19
TrigConf::TrigConfCoolL1PayloadConverters::createLvl1ItemDefPayload
cool::Record createLvl1ItemDefPayload(cool::IFolderPtr, const TrigConf::TriggerItem &item)
build a COOL db record from a LVL1 TriggerItem (the conditions)
Definition: TrigConfCoolL1PayloadConverters.cxx:59
TrigConf::Menu
Definition: Menu.h:49
TrigConf::TrigConfCoolL1PayloadConverters::readLvl1ConfigKey
void readLvl1ConfigKey(const coral::AttributeList &al, unsigned int &lvl1PrescaleKey)
build the LVL1 configuration key from a coral::AttributeList
Definition: TrigConfCoolL1PayloadConverters.cxx:595
Trk::active
@ active
Definition: Layer.h:48
xAOD::uint16_t
setWord1 uint16_t
Definition: eFexEMRoI_v1.cxx:88
TrigConf::TrigConfCoolL1PayloadConverters::readLvl1Prescale
void readLvl1Prescale(const coral::AttributeList &al, int &ps)
build the LVL1 prescale value from a coral::AttributeList
Definition: TrigConfCoolL1PayloadConverters.cxx:603
TrigConf::TrigConfCoolL1PayloadConverters::createLvl1TriggerItem
TriggerItem * createLvl1TriggerItem(const coral::AttributeList &al)
build a LVL1 TriggerItem from a COOL db record
Definition: TrigConfCoolL1PayloadConverters.cxx:398
Record
Definition: HephProf.cxx:56
TrigConf::TrigConfCoolL1PayloadConverters::createLvl1JetWeightPayload
cool::Record createLvl1JetWeightPayload(cool::IFolderPtr, const std::vector< int > &jetweights)
build a COOL db record from a L1 Jet Weights vector
Definition: TrigConfCoolL1PayloadConverters.cxx:76
TrigConf::TrigConfCoolL1PayloadConverters::createLvl1BGKeyPayload
cool::Record createLvl1BGKeyPayload(cool::IFolderPtr, unsigned int lvl1BunchgroupKey)
build a COOL db record from a LVL1 bunch group key
Definition: TrigConfCoolL1PayloadConverters.cxx:212
LArConditions2Ntuple.fld
string fld
Definition: LArConditions2Ntuple.py:291
item
Definition: ItemListSvc.h:43
PixelModuleFeMask_create_db.payload
string payload
Definition: PixelModuleFeMask_create_db.py:69
TrigConf::TrigConfCoolL1PayloadConverters::createLvl1BGContentPayload
cool::Record createLvl1BGContentPayload(cool::IFolderPtr fld, const TrigConf::BunchGroupSet &bgs)
build a COOL db record from a bunch group definition value
Definition: TrigConfCoolL1PayloadConverters.cxx:220
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
TrigConf::TrigConfCoolL1PayloadConverters::createLvl1MenuPayload
cool::Record createLvl1MenuPayload(cool::IFolderPtr, const TrigConf::TriggerItem &item)
build a COOL db record from a LVL1 TriggerItem (the item name and version)
Definition: TrigConfCoolL1PayloadConverters.cxx:50
TrigConf::TrigConfCoolL1PayloadConverters::readLvl1MonMap
std::vector< TrigConf::ThresholdMonitor * > readLvl1MonMap(const cool::IRecord &payload)
Build a LVL1 mon counter object from COOL payload.
Definition: TrigConfCoolL1PayloadConverters.cxx:660
TrigConf::TrigConfCoolL1PayloadConverters::createLvl1InputMapPayload
cool::Record createLvl1InputMapPayload(cool::IFolderPtr, const TrigConf::TIP &tip)
build a COOL db record from a PIT-mapping string value
Definition: TrigConfCoolL1PayloadConverters.cxx:351
TrigConf::TrigConfCoolL1PayloadConverters::readLvl1TIPMap
TrigConf::TIP * readLvl1TIPMap(const coral::AttributeList &al)
Definition: TrigConfCoolL1PayloadConverters.cxx:645
TrigConf::TriggerThreshold
Definition: TriggerThreshold.h:20
LikeEnum::Menu
Menu
Definition: LikelihoodEnums.h:10
TrigConf::TriggerItem
Definition: TriggerItem.h:25