CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Member Functions | Private Attributes
FakeAlignmentSource Class Reference

#include <Alignment/FakeAlignmentProducer/plugins/FakeAlignmentSource.cc>

Inheritance diagram for FakeAlignmentSource:
edm::ESProducer edm::EventSetupRecordIntervalFinder edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider

Public Member Functions

 FakeAlignmentSource (const edm::ParameterSet &)
 
std::unique_ptr< AlignmentsproduceCSCAli (const CSCAlignmentRcd &)
 CSC and its APE. More...
 
std::unique_ptr< AlignmentErrorsExtendedproduceCSCAliErr (const CSCAlignmentErrorExtendedRcd &)
 
std::unique_ptr< AlignmentsproduceDTAli (const DTAlignmentRcd &)
 DT and its APE. More...
 
std::unique_ptr< AlignmentErrorsExtendedproduceDTAliErr (const DTAlignmentErrorExtendedRcd &)
 
std::unique_ptr< AlignmentsproduceGlobals (const GlobalPositionRcd &)
 GlobalPositions. More...
 
std::unique_ptr< AlignmentsproduceTkAli (const TrackerAlignmentRcd &)
 Tracker and its APE. More...
 
std::unique_ptr< AlignmentErrorsExtendedproduceTkAliErr (const TrackerAlignmentErrorExtendedRcd &)
 
std::unique_ptr< AlignmentSurfaceDeformationsproduceTrackerSurfaceDeformation (const TrackerSurfaceDeformationRcd &)
 Tracker surface deformations. More...
 
 ~FakeAlignmentSource () override
 
- Public Member Functions inherited from edm::ESProducer
 ESProducer ()
 
 ~ESProducer ()(false) override
 
- Public Member Functions inherited from edm::ESProxyFactoryProducer
 ESProxyFactoryProducer ()
 
void newInterval (const eventsetup::EventSetupRecordKey &iRecordType, const ValidityInterval &iInterval) override
 overrides DataProxyProvider method More...
 
 ~ESProxyFactoryProducer () noexcept(false) override
 
- Public Member Functions inherited from edm::eventsetup::DataProxyProvider
 DataProxyProvider ()
 
const ComponentDescriptiondescription () const
 
bool isUsingRecord (const EventSetupRecordKey &) const
 
const KeyedProxieskeyedProxies (const EventSetupRecordKey &iRecordKey) const
 
void resetProxies (const EventSetupRecordKey &iRecordType)
 
void resetProxiesIfTransient (const EventSetupRecordKey &iRecordType)
 
void setAppendToDataLabel (const edm::ParameterSet &)
 
void setDescription (const ComponentDescription &iDescription)
 
std::set< EventSetupRecordKeyusingRecords () const
 
virtual ~DataProxyProvider () noexcept(false)
 
- Public Member Functions inherited from edm::EventSetupRecordIntervalFinder
const eventsetup::ComponentDescriptiondescriptionForFinder () const
 
 EventSetupRecordIntervalFinder ()
 
std::set< eventsetup::EventSetupRecordKeyfindingForRecords () const
 
const ValidityIntervalfindIntervalFor (const eventsetup::EventSetupRecordKey &, const IOVSyncValue &)
 
void setDescriptionForFinder (const eventsetup::ComponentDescription &iDescription)
 
virtual ~EventSetupRecordIntervalFinder () noexcept(false)
 

Protected Member Functions

void setIntervalFor (const edm::eventsetup::EventSetupRecordKey &, const edm::IOVSyncValue &ioSyncVal, edm::ValidityInterval &iov) override
 provide (dummy) IOV More...
 
- Protected Member Functions inherited from edm::ESProducer
 ESProducer (const ESProducer &)=delete
 
ESProducer const & operator= (const ESProducer &)=delete
 
template<typename T >
void setWhatProduced (T *iThis, const es::Label &iLabel=es::Label())
 
template<typename T >
void setWhatProduced (T *iThis, const char *iLabel)
 
template<typename T >
void setWhatProduced (T *iThis, const std::string &iLabel)
 
template<typename T , typename TDecorator >
void setWhatProduced (T *iThis, const TDecorator &iDec, const es::Label &iLabel=es::Label())
 
template<typename T , typename TReturn , typename TRecord >
void setWhatProduced (T *iThis, TReturn(T::*iMethod)(const TRecord &), const es::Label &iLabel=es::Label())
 
template<typename T , typename TReturn , typename TRecord , typename TArg >
void setWhatProduced (T *iThis, TReturn(T::*iMethod)(const TRecord &), const TArg &iDec, const es::Label &iLabel=es::Label())
 
- 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 eventsetup::EventSetupRecordKey &iRecord, std::unique_ptr< eventsetup::ProxyFactoryBase > iFactory, const std::string &iLabel=std::string())
 
void registerProxies (const eventsetup::EventSetupRecordKey &iRecord, KeyedProxies &aProxyList) override
 override DataProxyProvider method More...
 
- Protected Member Functions inherited from edm::eventsetup::DataProxyProvider
void eraseAll (const EventSetupRecordKey &iRecordKey)
 deletes all the Proxies in aStream More...
 
void invalidateProxies (const EventSetupRecordKey &iRecordKey)
 
template<class T >
void usingRecord ()
 
void usingRecordWithKey (const EventSetupRecordKey &)
 
- Protected Member Functions inherited from edm::EventSetupRecordIntervalFinder
template<class T >
void findingRecord ()
 
void findingRecordWithKey (const eventsetup::EventSetupRecordKey &)
 

Private Attributes

bool produceCSC_
 
bool produceDT_
 
bool produceGlobalPosition_
 
bool produceTracker_
 
bool produceTrackerSurfaceDeformation_
 

Additional Inherited Members

- Public Types inherited from edm::eventsetup::DataProxyProvider
typedef std::vector< std::pair< DataKey, edm::propagate_const< std::shared_ptr< DataProxy > > > > KeyedProxies
 
typedef std::vector< EventSetupRecordKeyKeys
 
typedef std::map< EventSetupRecordKey, KeyedProxiesRecordProxies
 
- Static Public Member Functions inherited from edm::eventsetup::DataProxyProvider
static void prevalidate (ConfigurationDescriptions &)
 

Detailed Description

Description: Producer of fake alignment data for all geometries (currently: Tracker, DT and CSC) (including IOV, in contrast to FakeAlignmentProducer)

Implementation: The alignment objects are filled with dummy/empty data, reconstruction Geometry should notice that and not pass to GeometryAligner.

Definition at line 47 of file FakeAlignmentSource.cc.

Constructor & Destructor Documentation

FakeAlignmentSource::FakeAlignmentSource ( const edm::ParameterSet iConfig)

Definition at line 105 of file FakeAlignmentSource.cc.

References edm::ParameterSet::getParameter(), produceCSC_, produceCSCAli(), produceCSCAliErr(), produceDT_, produceDTAli(), produceDTAliErr(), produceGlobalPosition_, produceGlobals(), produceTkAli(), produceTkAliErr(), produceTracker_, produceTrackerSurfaceDeformation(), produceTrackerSurfaceDeformation_, edm::ESProducer::setWhatProduced(), and AlCaHLTBitMon_QueryRunRegistry::string.

106  :produceTracker_(iConfig.getParameter<bool>("produceTracker")),
107  produceDT_(iConfig.getParameter<bool>("produceDT")),
108  produceCSC_(iConfig.getParameter<bool>("produceCSC")),
109  produceGlobalPosition_(iConfig.getParameter<bool>("produceGlobalPosition")),
110  produceTrackerSurfaceDeformation_(iConfig.getParameter<bool>("produceTrackerSurfaceDeformation"))
111 {
112  // This 'appendToDataLabel' is used by the framework to distinguish providers
113  // with different settings and to request a special one by e.g.
114  // iSetup.get<TrackerDigiGeometryRecord>().get("theLabel", tkGeomHandle);
115 
116  edm::LogInfo("Alignments")
117  << "@SUB=FakeAlignmentSource" << "Providing data with label '"
118  << iConfig.getParameter<std::string>("appendToDataLabel") << "'.";
119 
120  // Tell framework what data is produced by which method:
121  if (produceTracker_) {
124  }
125  if (produceDT_) {
128  }
129  if (produceCSC_) {
132  }
135  }
138  }
139 
140  // Tell framework to provide IOV for the above data:
141  if (produceTracker_) {
142  this->findingRecord<TrackerAlignmentRcd>();
143  this->findingRecord<TrackerAlignmentErrorExtendedRcd>();
144  }
145  if (produceDT_) {
146  this->findingRecord<DTAlignmentRcd>();
147  this->findingRecord<DTAlignmentErrorExtendedRcd>();
148  }
149  if (produceCSC_) {
150  this->findingRecord<CSCAlignmentRcd>();
151  this->findingRecord<CSCAlignmentErrorExtendedRcd>();
152  }
154  this->findingRecord<GlobalPositionRcd>();
155  }
157  this->findingRecord<TrackerSurfaceDeformationRcd>();
158  }
159 }
T getParameter(std::string const &) const
std::unique_ptr< Alignments > produceGlobals(const GlobalPositionRcd &)
GlobalPositions.
std::unique_ptr< AlignmentErrorsExtended > produceCSCAliErr(const CSCAlignmentErrorExtendedRcd &)
void setWhatProduced(T *iThis, const es::Label &iLabel=es::Label())
Definition: ESProducer.h:115
std::unique_ptr< Alignments > produceCSCAli(const CSCAlignmentRcd &)
CSC and its APE.
std::unique_ptr< Alignments > produceDTAli(const DTAlignmentRcd &)
DT and its APE.
std::unique_ptr< AlignmentErrorsExtended > produceTkAliErr(const TrackerAlignmentErrorExtendedRcd &)
std::unique_ptr< AlignmentSurfaceDeformations > produceTrackerSurfaceDeformation(const TrackerSurfaceDeformationRcd &)
Tracker surface deformations.
std::unique_ptr< Alignments > produceTkAli(const TrackerAlignmentRcd &)
Tracker and its APE.
std::unique_ptr< AlignmentErrorsExtended > produceDTAliErr(const DTAlignmentErrorExtendedRcd &)
FakeAlignmentSource::~FakeAlignmentSource ( )
inlineoverride

Definition at line 50 of file FakeAlignmentSource.cc.

50 {}

Member Function Documentation

std::unique_ptr<Alignments> FakeAlignmentSource::produceCSCAli ( const CSCAlignmentRcd )
inline

CSC and its APE.

Definition at line 69 of file FakeAlignmentSource.cc.

Referenced by FakeAlignmentSource().

69  {
70  return std::make_unique<Alignments>();
71  }
std::unique_ptr<AlignmentErrorsExtended> FakeAlignmentSource::produceCSCAliErr ( const CSCAlignmentErrorExtendedRcd )
inline

Definition at line 72 of file FakeAlignmentSource.cc.

Referenced by FakeAlignmentSource().

72  {
73  return std::make_unique<AlignmentErrorsExtended>();
74  }
std::unique_ptr<Alignments> FakeAlignmentSource::produceDTAli ( const DTAlignmentRcd )
inline

DT and its APE.

Definition at line 61 of file FakeAlignmentSource.cc.

Referenced by FakeAlignmentSource().

61  {
62  return std::make_unique<Alignments>();
63  }
std::unique_ptr<AlignmentErrorsExtended> FakeAlignmentSource::produceDTAliErr ( const DTAlignmentErrorExtendedRcd )
inline

Definition at line 64 of file FakeAlignmentSource.cc.

Referenced by FakeAlignmentSource().

64  {
65  return std::make_unique<AlignmentErrorsExtended>();
66  }
std::unique_ptr<Alignments> FakeAlignmentSource::produceGlobals ( const GlobalPositionRcd )
inline

GlobalPositions.

Definition at line 77 of file FakeAlignmentSource.cc.

Referenced by FakeAlignmentSource().

77  {
78  return std::make_unique<Alignments>();
79  }
std::unique_ptr<Alignments> FakeAlignmentSource::produceTkAli ( const TrackerAlignmentRcd )
inline

Tracker and its APE.

Definition at line 53 of file FakeAlignmentSource.cc.

Referenced by FakeAlignmentSource().

53  {
54  return std::make_unique<Alignments>();
55  }
std::unique_ptr<AlignmentErrorsExtended> FakeAlignmentSource::produceTkAliErr ( const TrackerAlignmentErrorExtendedRcd )
inline

Definition at line 56 of file FakeAlignmentSource.cc.

Referenced by FakeAlignmentSource().

56  {
57  return std::make_unique<AlignmentErrorsExtended>();
58  }
std::unique_ptr<AlignmentSurfaceDeformations> FakeAlignmentSource::produceTrackerSurfaceDeformation ( const TrackerSurfaceDeformationRcd )
inline

Tracker surface deformations.

Definition at line 83 of file FakeAlignmentSource.cc.

References setIntervalFor().

Referenced by FakeAlignmentSource().

83  {
84  return std::make_unique<AlignmentSurfaceDeformations>();
85  }
void FakeAlignmentSource::setIntervalFor ( const edm::eventsetup::EventSetupRecordKey ,
const edm::IOVSyncValue ioSyncVal,
edm::ValidityInterval iov 
)
overrideprotectedvirtual

provide (dummy) IOV

Implements edm::EventSetupRecordIntervalFinder.

Definition at line 161 of file FakeAlignmentSource.cc.

References edm::IOVSyncValue::beginOfTime(), DEFINE_FWK_EVENTSETUP_SOURCE, and edm::IOVSyncValue::endOfTime().

Referenced by produceTrackerSurfaceDeformation().

164 {
165  // Implementation copied from SiStripGainFakeESSource: unlimited IOV
166  outValidity = edm::ValidityInterval(ioSyncVal.beginOfTime(), ioSyncVal.endOfTime());
167 }
static const IOVSyncValue & endOfTime()
Definition: IOVSyncValue.cc:97
std::pair< Time_t, Time_t > ValidityInterval
Definition: Time.h:19
static const IOVSyncValue & beginOfTime()

Member Data Documentation

bool FakeAlignmentSource::produceCSC_
private

Definition at line 96 of file FakeAlignmentSource.cc.

Referenced by FakeAlignmentSource().

bool FakeAlignmentSource::produceDT_
private

Definition at line 95 of file FakeAlignmentSource.cc.

Referenced by FakeAlignmentSource().

bool FakeAlignmentSource::produceGlobalPosition_
private

Definition at line 97 of file FakeAlignmentSource.cc.

Referenced by FakeAlignmentSource().

bool FakeAlignmentSource::produceTracker_
private

Definition at line 94 of file FakeAlignmentSource.cc.

Referenced by FakeAlignmentSource().

bool FakeAlignmentSource::produceTrackerSurfaceDeformation_
private

Definition at line 98 of file FakeAlignmentSource.cc.

Referenced by FakeAlignmentSource().