CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
TrackerTopologyEP Class Reference
Inheritance diagram for TrackerTopologyEP:
edm::ESProducer edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider

Public Types

using ReturnType = std::unique_ptr< TrackerTopology >
 

Public Member Functions

ReturnType produce (const TrackerTopologyRcd &)
 
 TrackerTopologyEP (const edm::ParameterSet &)
 
- Public Member Functions inherited from edm::ESProducer
 ESProducer ()
 
 ESProducer (const ESProducer &)=delete
 
ESProxyIndex const * getTokenIndices (unsigned int iIndex) const
 
ESProducer const & operator= (const ESProducer &)=delete
 
template<typename Record >
void updateFromMayConsumes (unsigned int iIndex, const Record &iRecord)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &) final
 
 ~ESProducer ()(false) override
 
- Public Member Functions inherited from edm::ESProxyFactoryProducer
 ESProxyFactoryProducer ()
 
 ESProxyFactoryProducer (const ESProxyFactoryProducer &)=delete
 
const ESProxyFactoryProduceroperator= (const ESProxyFactoryProducer &)=delete
 
 ~ESProxyFactoryProducer () noexcept(false) override
 
- Public Member Functions inherited from edm::eventsetup::DataProxyProvider
void createKeyedProxies (EventSetupRecordKey const &key, unsigned int nConcurrentIOVs)
 
 DataProxyProvider ()
 
 DataProxyProvider (const DataProxyProvider &)=delete
 
const ComponentDescriptiondescription () const
 
void fillRecordsNotAllowingConcurrentIOVs (std::set< EventSetupRecordKey > &recordsNotAllowingConcurrentIOVs) const
 
virtual void initConcurrentIOVs (EventSetupRecordKey const &key, unsigned int nConcurrentIOVs)
 
bool isUsingRecord (const EventSetupRecordKey &key) const
 
KeyedProxieskeyedProxies (const EventSetupRecordKey &iRecordKey, unsigned int iovIndex=0)
 
const DataProxyProvideroperator= (const DataProxyProvider &)=delete
 
void setAppendToDataLabel (const edm::ParameterSet &)
 
void setDescription (const ComponentDescription &iDescription)
 
std::set< EventSetupRecordKeyusingRecords () const
 
virtual ~DataProxyProvider () noexcept(false)
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
- Static Public Member Functions inherited from edm::eventsetup::DataProxyProvider
static void prevalidate (ConfigurationDescriptions &)
 

Private Member Functions

void fillParameters (const PTrackerParameters &, TrackerTopology::PixelBarrelValues &pxbVals, TrackerTopology::PixelEndcapValues &pxfVals, TrackerTopology::TECValues &tecVals, TrackerTopology::TIBValues &tibVals, TrackerTopology::TIDValues &tidVals, TrackerTopology::TOBValues &tobVals)
 

Private Attributes

const edm::ESGetToken< PTrackerParameters, PTrackerParametersRcdtoken_
 

Additional Inherited Members

- Protected Types inherited from edm::ESProxyFactoryProducer
using EventSetupRecordKey = eventsetup::EventSetupRecordKey
 
- Protected Types inherited from edm::eventsetup::DataProxyProvider
using KeyedProxiesVector = std::vector< std::pair< DataKey, std::shared_ptr< DataProxy >>>
 
- Protected Member Functions inherited from edm::ESProducer
template<typename T >
auto setWhatProduced (T *iThis, const es::Label &iLabel={})
 
template<typename T >
auto setWhatProduced (T *iThis, const char *iLabel)
 
template<typename T >
auto setWhatProduced (T *iThis, const std::string &iLabel)
 
template<typename T , typename TDecorator >
auto setWhatProduced (T *iThis, const TDecorator &iDec, const es::Label &iLabel={})
 
template<typename T , typename TReturn , typename TRecord >
auto setWhatProduced (T *iThis, TReturn(T::*iMethod)(const TRecord &), const es::Label &iLabel={})
 
template<typename T , typename TReturn , typename TRecord , typename TArg >
ESConsumesCollectorT< TRecord > setWhatProduced (T *iThis, TReturn(T::*iMethod)(const TRecord &), const TArg &iDec, const es::Label &iLabel={})
 
- Protected Member Functions inherited from edm::ESProxyFactoryProducer
template<class TFactory >
void registerFactory (std::unique_ptr< TFactory > iFactory, const std::string &iLabel=std::string())
 
virtual void registerFactoryWithKey (const EventSetupRecordKey &iRecord, std::unique_ptr< eventsetup::ProxyFactoryBase > iFactory, const std::string &iLabel=std::string())
 
KeyedProxiesVector registerProxies (const EventSetupRecordKey &, unsigned int iovIndex) override
 
- Protected Member Functions inherited from edm::eventsetup::DataProxyProvider
template<class T >
void usingRecord ()
 
void usingRecordWithKey (const EventSetupRecordKey &key)
 

Detailed Description

Definition at line 19 of file TrackerTopologyEP.cc.

Member Typedef Documentation

Definition at line 23 of file TrackerTopologyEP.cc.

Constructor & Destructor Documentation

TrackerTopologyEP::TrackerTopologyEP ( const edm::ParameterSet conf)

Definition at line 41 of file TrackerTopologyEP.cc.

42  : token_(setWhatProduced(this).consumesFrom<PTrackerParameters, PTrackerParametersRcd>(edm::ESInputTag())) {
43  edm::LogInfo("TRACKER") << "TrackerTopologyEP::TrackerTopologyEP";
44 }
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
Definition: ESProducer.h:138
const edm::ESGetToken< PTrackerParameters, PTrackerParametersRcd > token_

Member Function Documentation

void TrackerTopologyEP::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 46 of file TrackerTopologyEP.cc.

References edm::ConfigurationDescriptions::add().

46  {
48  descriptions.add("trackerTopology", ttc);
49 }
void add(std::string const &label, ParameterSetDescription const &psetDescription)
void TrackerTopologyEP::fillParameters ( const PTrackerParameters ptp,
TrackerTopology::PixelBarrelValues pxbVals,
TrackerTopology::PixelEndcapValues pxfVals,
TrackerTopology::TECValues tecVals,
TrackerTopology::TIBValues tibVals,
TrackerTopology::TIDValues tidVals,
TrackerTopology::TOBValues tobVals 
)
private

Definition at line 67 of file TrackerTopologyEP.cc.

References TrackerTopology::PixelEndcapValues::bladeMask_, TrackerTopology::PixelEndcapValues::bladeStartBit_, DEFINE_FWK_EVENTSETUP_MODULE, TrackerTopology::PixelEndcapValues::diskMask_, TrackerTopology::PixelEndcapValues::diskStartBit_, TrackerTopology::PixelBarrelValues::ladderMask_, TrackerTopology::PixelBarrelValues::ladderStartBit_, TrackerTopology::PixelBarrelValues::layerMask_, TrackerTopology::TIBValues::layerMask_, TrackerTopology::TOBValues::layerMask_, TrackerTopology::PixelBarrelValues::layerStartBit_, TrackerTopology::TIBValues::layerStartBit_, TrackerTopology::TOBValues::layerStartBit_, TrackerTopology::TIDValues::module_fw_bwMask_, TrackerTopology::TIDValues::module_fw_bwStartBit_, TrackerTopology::PixelBarrelValues::moduleMask_, TrackerTopology::PixelEndcapValues::moduleMask_, TrackerTopology::TECValues::moduleMask_, TrackerTopology::TIBValues::moduleMask_, TrackerTopology::TIDValues::moduleMask_, TrackerTopology::TOBValues::moduleMask_, TrackerTopology::PixelBarrelValues::moduleStartBit_, TrackerTopology::PixelEndcapValues::moduleStartBit_, TrackerTopology::TECValues::moduleStartBit_, TrackerTopology::TIBValues::moduleStartBit_, TrackerTopology::TIDValues::moduleStartBit_, TrackerTopology::TOBValues::moduleStartBit_, TrackerTopology::PixelEndcapValues::panelMask_, TrackerTopology::PixelEndcapValues::panelStartBit_, TrackerTopology::TECValues::petal_fw_bwMask_, TrackerTopology::TECValues::petal_fw_bwStartBit_, TrackerTopology::TECValues::petalMask_, TrackerTopology::TECValues::petalStartBit_, TrackerTopology::TECValues::ringMask_, TrackerTopology::TIDValues::ringMask_, TrackerTopology::TECValues::ringStartBit_, TrackerTopology::TIDValues::ringStartBit_, TrackerTopology::TOBValues::rod_fw_bwMask_, TrackerTopology::TOBValues::rod_fw_bwStartBit_, TrackerTopology::TOBValues::rodMask_, TrackerTopology::TOBValues::rodStartBit_, TrackerTopology::PixelEndcapValues::sideMask_, TrackerTopology::TECValues::sideMask_, TrackerTopology::TIDValues::sideMask_, TrackerTopology::PixelEndcapValues::sideStartBit_, TrackerTopology::TECValues::sideStartBit_, TrackerTopology::TIDValues::sideStartBit_, TrackerTopology::TECValues::sterMask_, TrackerTopology::TIBValues::sterMask_, TrackerTopology::TIDValues::sterMask_, TrackerTopology::TOBValues::sterMask_, TrackerTopology::TECValues::sterStartBit_, TrackerTopology::TIBValues::sterStartBit_, TrackerTopology::TIDValues::sterStartBit_, TrackerTopology::TOBValues::sterStartBit_, TrackerTopology::TIBValues::str_fw_bwMask_, TrackerTopology::TIBValues::str_fw_bwStartBit_, TrackerTopology::TIBValues::str_int_extMask_, TrackerTopology::TIBValues::str_int_extStartBit_, TrackerTopology::TIBValues::strMask_, TrackerTopology::TIBValues::strStartBit_, PTrackerParameters::vitems, TrackerTopology::TECValues::wheelMask_, TrackerTopology::TIDValues::wheelMask_, TrackerTopology::TECValues::wheelStartBit_, and TrackerTopology::TIDValues::wheelStartBit_.

Referenced by produce().

73  {
74  pxbVals.layerStartBit_ = ptp.vitems[0].vpars[0]; // 16
75  pxbVals.ladderStartBit_ = ptp.vitems[0].vpars[1]; // 8
76  pxbVals.moduleStartBit_ = ptp.vitems[0].vpars[2]; // 2
77  pxbVals.layerMask_ = ptp.vitems[0].vpars[3]; // 0xF
78  pxbVals.ladderMask_ = ptp.vitems[0].vpars[4]; // 0xFF
79  pxbVals.moduleMask_ = ptp.vitems[0].vpars[5]; // 0x3F
80 
81  pxfVals.sideStartBit_ = ptp.vitems[1].vpars[0];
82  pxfVals.diskStartBit_ = ptp.vitems[1].vpars[1];
83  pxfVals.bladeStartBit_ = ptp.vitems[1].vpars[2];
84  pxfVals.panelStartBit_ = ptp.vitems[1].vpars[3];
85  pxfVals.moduleStartBit_ = ptp.vitems[1].vpars[4];
86  pxfVals.sideMask_ = ptp.vitems[1].vpars[5];
87  pxfVals.diskMask_ = ptp.vitems[1].vpars[6];
88  pxfVals.bladeMask_ = ptp.vitems[1].vpars[7];
89  pxfVals.panelMask_ = ptp.vitems[1].vpars[8];
90  pxfVals.moduleMask_ = ptp.vitems[1].vpars[9];
91 
92  // TEC: 6
93  tecVals.sideStartBit_ = ptp.vitems[5].vpars[0];
94  tecVals.wheelStartBit_ = ptp.vitems[5].vpars[1];
95  tecVals.petal_fw_bwStartBit_ = ptp.vitems[5].vpars[2];
96  tecVals.petalStartBit_ = ptp.vitems[5].vpars[3];
97  tecVals.ringStartBit_ = ptp.vitems[5].vpars[4];
98  tecVals.moduleStartBit_ = ptp.vitems[5].vpars[5];
99  tecVals.sterStartBit_ = ptp.vitems[5].vpars[6];
100  tecVals.sideMask_ = ptp.vitems[5].vpars[7];
101  tecVals.wheelMask_ = ptp.vitems[5].vpars[8];
102  tecVals.petal_fw_bwMask_ = ptp.vitems[5].vpars[9];
103  tecVals.petalMask_ = ptp.vitems[5].vpars[10];
104  tecVals.ringMask_ = ptp.vitems[5].vpars[11];
105  tecVals.moduleMask_ = ptp.vitems[5].vpars[12];
106  tecVals.sterMask_ = ptp.vitems[5].vpars[13];
107 
108  // TIB: 3
109  tibVals.layerStartBit_ = ptp.vitems[2].vpars[0];
110  tibVals.str_fw_bwStartBit_ = ptp.vitems[2].vpars[1];
111  tibVals.str_int_extStartBit_ = ptp.vitems[2].vpars[2];
112  tibVals.strStartBit_ = ptp.vitems[2].vpars[3];
113  tibVals.moduleStartBit_ = ptp.vitems[2].vpars[4];
114  tibVals.sterStartBit_ = ptp.vitems[2].vpars[5];
115  tibVals.layerMask_ = ptp.vitems[2].vpars[6];
116  tibVals.str_fw_bwMask_ = ptp.vitems[2].vpars[7];
117  tibVals.str_int_extMask_ = ptp.vitems[2].vpars[8];
118  tibVals.strMask_ = ptp.vitems[2].vpars[9];
119  tibVals.moduleMask_ = ptp.vitems[2].vpars[10];
120  tibVals.sterMask_ = ptp.vitems[2].vpars[11];
121 
122  // TID: 4
123  tidVals.sideStartBit_ = ptp.vitems[3].vpars[0];
124  tidVals.wheelStartBit_ = ptp.vitems[3].vpars[1];
125  tidVals.ringStartBit_ = ptp.vitems[3].vpars[2];
126  tidVals.module_fw_bwStartBit_ = ptp.vitems[3].vpars[3];
127  tidVals.moduleStartBit_ = ptp.vitems[3].vpars[4];
128  tidVals.sterStartBit_ = ptp.vitems[3].vpars[5];
129  tidVals.sideMask_ = ptp.vitems[3].vpars[6];
130  tidVals.wheelMask_ = ptp.vitems[3].vpars[7];
131  tidVals.ringMask_ = ptp.vitems[3].vpars[8];
132  tidVals.module_fw_bwMask_ = ptp.vitems[3].vpars[9];
133  tidVals.moduleMask_ = ptp.vitems[3].vpars[10];
134  tidVals.sterMask_ = ptp.vitems[3].vpars[11];
135 
136  // TOB: 5
137  tobVals.layerStartBit_ = ptp.vitems[4].vpars[0];
138  tobVals.rod_fw_bwStartBit_ = ptp.vitems[4].vpars[1];
139  tobVals.rodStartBit_ = ptp.vitems[4].vpars[2];
140  tobVals.moduleStartBit_ = ptp.vitems[4].vpars[3];
141  tobVals.sterStartBit_ = ptp.vitems[4].vpars[4];
142  tobVals.layerMask_ = ptp.vitems[4].vpars[5];
143  tobVals.rod_fw_bwMask_ = ptp.vitems[4].vpars[6];
144  tobVals.rodMask_ = ptp.vitems[4].vpars[7];
145  tobVals.moduleMask_ = ptp.vitems[4].vpars[8];
146  tobVals.sterMask_ = ptp.vitems[4].vpars[9];
147 }
std::vector< Item > vitems
unsigned int module_fw_bwStartBit_
TrackerTopologyEP::ReturnType TrackerTopologyEP::produce ( const TrackerTopologyRcd iRecord)

Definition at line 51 of file TrackerTopologyEP.cc.

References fillParameters(), edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::getRecord(), and token_.

51  {
52  edm::LogInfo("TrackerTopologyEP") << "TrackerTopologyEP::produce(const TrackerTopologyRcd& iRecord)";
53  auto ptp = iRecord.getRecord<PTrackerParametersRcd>().getTransientHandle(token_);
54 
61 
62  fillParameters(*ptp, pxbVals, pxfVals, tecVals, tibVals, tidVals, tobVals);
63 
64  return std::make_unique<TrackerTopology>(pxbVals, pxfVals, tecVals, tibVals, tidVals, tobVals);
65 }
void fillParameters(const PTrackerParameters &, TrackerTopology::PixelBarrelValues &pxbVals, TrackerTopology::PixelEndcapValues &pxfVals, TrackerTopology::TECValues &tecVals, TrackerTopology::TIBValues &tibVals, TrackerTopology::TIDValues &tidVals, TrackerTopology::TOBValues &tobVals)
const edm::ESGetToken< PTrackerParameters, PTrackerParametersRcd > token_

Member Data Documentation

const edm::ESGetToken<PTrackerParameters, PTrackerParametersRcd> TrackerTopologyEP::token_
private

Definition at line 38 of file TrackerTopologyEP.cc.

Referenced by produce().