CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions
EcalShowerContainmentCorrectionsESProducer Class Reference
Inheritance diagram for EcalShowerContainmentCorrectionsESProducer:
edm::ESProducer edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider

Public Types

typedef std::unique_ptr< EcalShowerContainmentCorrectionsReturnType
 
- 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
 

Public Member Functions

 EcalShowerContainmentCorrectionsESProducer (const edm::ParameterSet &)
 
ReturnType produce (const EcalShowerContainmentCorrectionsRcd &)
 
 ~EcalShowerContainmentCorrectionsESProducer () override
 
- Public Member Functions inherited from edm::ESProducer
 ESProducer ()
 
ESProxyIndex const * getTokenIndices (unsigned int iIndex) const
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &) final
 
 ~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)
 

Additional Inherited Members

- Static Public Member Functions inherited from edm::eventsetup::DataProxyProvider
static void prevalidate (ConfigurationDescriptions &)
 
- Protected Member Functions inherited from edm::ESProducer
 ESProducer (const ESProducer &)=delete
 
ESProducer const & operator= (const ESProducer &)=delete
 
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 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 &)
 

Detailed Description

EcalShowerContainmentCorrectionsESProducer.h User/EcalShowerContainmentCorrectionsESProducer/interface/EcalShowerContainmentCorrectionsESProducer.h

Description: Trivial ESProducer to provide EventSetup with (hard coded) shower containment corrections

Author
Stefano Argiro Created: Mon Mar 5 08:39:12 CET 2007

Definition at line 31 of file EcalShowerContainmentCorrectionsESProducer.cc.

Member Typedef Documentation

Constructor & Destructor Documentation

EcalShowerContainmentCorrectionsESProducer::EcalShowerContainmentCorrectionsESProducer ( const edm::ParameterSet iConfig)

Definition at line 43 of file EcalShowerContainmentCorrectionsESProducer.cc.

References edm::ESProducer::setWhatProduced().

44  {
45  setWhatProduced(this);
46 }
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
Definition: ESProducer.h:124
EcalShowerContainmentCorrectionsESProducer::~EcalShowerContainmentCorrectionsESProducer ( )
override

Definition at line 48 of file EcalShowerContainmentCorrectionsESProducer.cc.

48 {}

Member Function Documentation

EcalShowerContainmentCorrectionsESProducer::ReturnType EcalShowerContainmentCorrectionsESProducer::produce ( const EcalShowerContainmentCorrectionsRcd iRecord)

Definition at line 54 of file EcalShowerContainmentCorrectionsESProducer.cc.

References popcon2dropbox::copy(), EcalShowerContainmentCorrections::Coefficients::data, DEFINE_FWK_EVENTSETUP_MODULE, triggerObjects_cff::id, findQualityFiles::size, EBDetId::SMCRYSTALMODE, and MuonErrorMatrixValues_cff::values.

Referenced by JSONExport.JsonExport::export(), HTMLExport.HTMLExport::export(), and HTMLExport.HTMLExportStatic::export().

55  {
56  using namespace edm::es;
57  using namespace std;
58 
59  auto pEcalShowerContainmentCorrections = std::make_unique<EcalShowerContainmentCorrections>();
60  int sm = 1; // in testbeam data sw believes we always are on sm01
61 
62  // where is the n of xtals per sm coded ?
63  for (int xtal = 1; xtal <= 1700; ++xtal) {
64  // // from
65  // /afs/cern.ch/user/h/h4ecal/h4ana/data/gapCorrections/parametres_pol6_X204_2_1.out
66 
67  // corrections computed on module3 - (sm16, 1run)
68 
69  double values[] = {0.998959, // 3x3 x right
70  0.00124547,
71  -0.000348259,
72  6.04065e-006,
73  0.999032, // 3x3 x left
74  7.90628e-005,
75  -0.000175699,
76  -2.60715e-007,
77  //
78  0.999983, // 3x3 y right
79  -0.000132085,
80  2.04773e-005,
81  -1.21629e-005,
82  1.00002, // 3x3 y left
83  0.00016518,
84  5.36343e-005,
85  1.32094e-005,
86  //
87  0.998944, // 5x5
88  0.00100987,
89  -0.000223207,
90  2.15615e-006,
91  0.999127,
92  0.000253437,
93  -9.80656e-005,
94  1.48651e-006,
95  1.00006,
96  -0.000179675,
97  8.15627e-005,
98  -1.21549e-005,
99  1.00022,
100  0.000363728,
101  0.000128066,
102  1.54473e-005};
103 
104  const size_t size = sizeof values / sizeof values[0];
106  std::copy(values, values + size, coeff.data);
107 
108  EBDetId id(sm, xtal, EBDetId::SMCRYSTALMODE);
109 
110  // we are filling always the same group ...
111  pEcalShowerContainmentCorrections->fillCorrectionCoefficients(id, 3, coeff);
112  }
113 
114  return pEcalShowerContainmentCorrections;
115 }
size
Write out results.
def copy(args, dbName)
Structure defining the container for correction coefficients.
static const int SMCRYSTALMODE
Definition: EBDetId.h:159