CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups 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
 
ESRecordIndex const * getTokenRecordIndices (unsigned int iIndex) const
 
bool hasMayConsumes () const noexcept
 
size_t numberOfTokenIndices (unsigned int iIndex) const
 
ESProducer const & operator= (const ESProducer &)=delete
 
SerialTaskQueueChainqueue ()
 
template<typename Record >
std::optional< std::vector
< ESProxyIndex > > 
updateFromMayConsumes (unsigned int iIndex, const Record &iRecord) const
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &) final
 
 ~ESProducer () noexcept(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,
PTrackerParametersRcd
token_
 

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={})
 
void usesResources (std::vector< std::string > const &)
 
- 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 18 of file TrackerTopologyEP.cc.

Member Typedef Documentation

Definition at line 22 of file TrackerTopologyEP.cc.

Constructor & Destructor Documentation

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

Definition at line 40 of file TrackerTopologyEP.cc.

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

Member Function Documentation

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

Definition at line 45 of file TrackerTopologyEP.cc.

References edm::ConfigurationDescriptions::add().

45  {
47  descriptions.add("trackerTopology", ttc);
48 }
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 66 of file TrackerTopologyEP.cc.

References TrackerTopology::PixelEndcapValues::bladeMask_, TrackerTopology::PixelEndcapValues::bladeStartBit_, 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().

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

Definition at line 50 of file TrackerTopologyEP.cc.

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

50  {
51  edm::LogInfo("TrackerTopologyEP") << "TrackerTopologyEP::produce(const TrackerTopologyRcd& iRecord)";
52  auto ptp = iRecord.getRecord<PTrackerParametersRcd>().getTransientHandle(token_);
53 
60 
61  fillParameters(*ptp, pxbVals, pxfVals, tecVals, tibVals, tidVals, tobVals);
62 
63  return std::make_unique<TrackerTopology>(pxbVals, pxfVals, tecVals, tibVals, tidVals, tobVals);
64 }
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_
Log< level::Info, false > LogInfo

Member Data Documentation

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

Definition at line 37 of file TrackerTopologyEP.cc.

Referenced by produce().