#include <ESProducer.h>
Public Member Functions | |
ESProducer () | |
virtual | ~ESProducer () |
Protected Member Functions | |
template<typename T > | |
void | setWhatProduced (T *iThis, 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()) |
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 TDecorator > | |
void | setWhatProduced (T *iThis, const TDecorator &iDec, const es::Label &iLabel=es::Label()) |
template<typename T > | |
void | setWhatProduced (T *iThis, const std::string &iLabel) |
template<typename T > | |
void | setWhatProduced (T *iThis, const char *iLabel) |
Private Member Functions | |
ESProducer (const ESProducer &) | |
ESProducer const & | operator= (const ESProducer &) |
template<typename T , typename TProduct , typename TRecord > | |
void | registerProduct (boost::shared_ptr< T > iCallback, const TProduct *, const TRecord *, const es::Label &iLabel) |
template<typename T , typename TProduct , typename TRecord , int IIndex> | |
void | registerProduct (boost::shared_ptr< T > iCallback, const es::L< TProduct, IIndex > *, const TRecord *, const es::Label &iLabel) |
template<typename T , typename TRecord > | |
void | registerProducts (boost::shared_ptr< T >, const eventsetup::produce::Null *, const TRecord *, const es::Label &) |
template<typename CallbackT , typename TList , typename TRecord > | |
void | registerProducts (boost::shared_ptr< CallbackT > iCallback, const TList *, const TRecord *iRecord, const es::Label &iLabel) |
Definition at line 97 of file ESProducer.h.
ESProducer::ESProducer | ( | ) |
Definition at line 31 of file ESProducer.cc.
{ }
ESProducer::~ESProducer | ( | ) | [virtual] |
Definition at line 40 of file ESProducer.cc.
{ }
edm::ESProducer::ESProducer | ( | const ESProducer & | ) | [private] |
ESProducer const& edm::ESProducer::operator= | ( | const ESProducer & | ) | [private] |
void edm::ESProducer::registerProduct | ( | boost::shared_ptr< T > | iCallback, |
const TProduct * | , | ||
const TRecord * | , | ||
const es::Label & | iLabel | ||
) | [inline, private] |
Definition at line 209 of file ESProducer.h.
References edm::es::Label::default_, and edm::ESProxyFactoryProducer::registerFactory().
Referenced by registerProducts().
{ typedef eventsetup::CallbackProxy<T, TRecord, TProduct> ProxyType; typedef eventsetup::ProxyArgumentFactoryTemplate<ProxyType, boost::shared_ptr<T> > FactoryType; registerFactory(std::auto_ptr<FactoryType>(new FactoryType(iCallback)), iLabel.default_); }
void edm::ESProducer::registerProduct | ( | boost::shared_ptr< T > | iCallback, |
const es::L< TProduct, IIndex > * | , | ||
const TRecord * | , | ||
const es::Label & | iLabel | ||
) | [inline, private] |
Definition at line 216 of file ESProducer.h.
References edm::errors::Configuration, def, edm::es::Label::labels_, edm::ESProxyFactoryProducer::registerFactory(), and edm::Exception::throwThis().
{ if(iLabel.labels_.size() <= IIndex || iLabel.labels_[IIndex] == es::Label::def()) { Exception::throwThis(errors::Configuration, "Unnamed Label\nthe index ", IIndex, " was never assigned a name in the 'setWhatProduced' method"); } typedef eventsetup::CallbackProxy<T, TRecord, es::L<TProduct, IIndex> > ProxyType; typedef eventsetup::ProxyArgumentFactoryTemplate<ProxyType, boost::shared_ptr<T> > FactoryType; registerFactory(std::auto_ptr<FactoryType>(new FactoryType(iCallback)), iLabel.labels_[IIndex]); }
void edm::ESProducer::registerProducts | ( | boost::shared_ptr< T > | , |
const eventsetup::produce::Null * | , | ||
const TRecord * | , | ||
const es::Label & | |||
) | [inline, private] |
Definition at line 203 of file ESProducer.h.
{
//do nothing
}
void edm::ESProducer::registerProducts | ( | boost::shared_ptr< CallbackT > | iCallback, |
const TList * | , | ||
const TRecord * | iRecord, | ||
const es::Label & | iLabel | ||
) | [inline, private] |
Definition at line 197 of file ESProducer.h.
References registerProduct().
Referenced by setWhatProduced().
{ registerProduct(iCallback, static_cast<const typename TList::tail_type*>(0), iRecord, iLabel); registerProducts(iCallback, static_cast<const typename TList::head_type*>(0), iRecord, iLabel); }
void edm::ESProducer::setWhatProduced | ( | T * | iThis, |
const std::string & | iLabel | ||
) | [inline, protected] |
Definition at line 126 of file ESProducer.h.
References setWhatProduced().
{ //BOOST_STATIC_ASSERT((typename boost::is_base_and_derived<ED, T>::type)); setWhatProduced(iThis , es::Label(iLabel)); }
void edm::ESProducer::setWhatProduced | ( | T * | iThis, |
TReturn(T::*)(const TRecord &) | iMethod, | ||
const TArg & | iDec, | ||
const es::Label & | iLabel = es::Label() |
||
) | [inline, protected] |
iThis | the 'this' pointer to an inheriting class instance |
iMethod | a member method of then inheriting class |
iDecorator | a class with 'pre'&'post' methods which are placed around the method call The method determines the Record argument and return value of the iMethod argument method in order to do the registration with the EventSetup |
Definition at line 154 of file ESProducer.h.
References edm::eventsetup::createDecoratorFrom(), and registerProducts().
{ boost::shared_ptr<eventsetup::Callback<T,TReturn,TRecord, typename eventsetup::DecoratorFromArg<T, TRecord, TArg>::Decorator_t > > callback(new eventsetup::Callback<T, TReturn, TRecord, typename eventsetup::DecoratorFromArg<T,TRecord,TArg>::Decorator_t>( iThis, iMethod, createDecoratorFrom(iThis, static_cast<const TRecord*>(0), iDec))); registerProducts(callback, static_cast<const typename eventsetup::produce::product_traits<TReturn>::type *>(0), static_cast<const TRecord*>(0), iLabel); //BOOST_STATIC_ASSERT((boost::is_base_and_derived<ED, T>::type)); }
void edm::ESProducer::setWhatProduced | ( | T * | iThis, |
const char * | iLabel | ||
) | [inline, protected] |
Definition at line 121 of file ESProducer.h.
References setWhatProduced().
{ //BOOST_STATIC_ASSERT((typename boost::is_base_and_derived<ED, T>::type)); setWhatProduced(iThis , es::Label(iLabel)); }
void edm::ESProducer::setWhatProduced | ( | T * | iThis, |
TReturn(T::*)(const TRecord &) | iMethod, | ||
const es::Label & | iLabel = es::Label() |
||
) | [inline, protected] |
iThis | the 'this' pointer to an inheriting class instance |
iMethod | a member method of then inheriting class The method determines the Record argument and return value of the iMethod argument method in order to do the registration with the EventSetup |
Definition at line 142 of file ESProducer.h.
References setWhatProduced().
{ setWhatProduced(iThis, iMethod, eventsetup::CallbackSimpleDecorator<TRecord>(),iLabel); }
void edm::ESProducer::setWhatProduced | ( | T * | iThis, |
const es::Label & | iLabel = es::Label() |
||
) | [inline, protected] |
iThis | the 'this' pointer to an inheriting class instance The method determines the Record argument and return value of the 'produce' method in order to do the registration with the EventSetup |
Definition at line 115 of file ESProducer.h.
Referenced by AlignmentProducer::AlignmentProducer(), magneticfield::AutoMagneticFieldESProducer::AutoMagneticFieldESProducer(), BeamSpotFakeConditions::BeamSpotFakeConditions(), CaloGeometryBuilder::CaloGeometryBuilder(), CaloGeometryDBEP< T, U >::CaloGeometryDBEP(), CaloGeometryEP< T >::CaloGeometryEP(), CaloMiscalibTools::CaloMiscalibTools(), CaloMiscalibToolsMC::CaloMiscalibToolsMC(), CaloTopologyBuilder::CaloTopologyBuilder(), CaloTowerConstituentsMapBuilder::CaloTowerConstituentsMapBuilder(), CaloTowerHardcodeGeometryEP::CaloTowerHardcodeGeometryEP(), CaloTPGTranscoderULUTs::CaloTPGTranscoderULUTs(), CastorDbProducer::CastorDbProducer(), CastorHardcodeGeometryEP::CastorHardcodeGeometryEP(), CompositeTrajectoryFilterESProducer::CompositeTrajectoryFilterESProducer(), CosmicParametersDefinerForTPESProducer::CosmicParametersDefinerForTPESProducer(), CSCBadChambersConditions::CSCBadChambersConditions(), CSCBadStripsConditions::CSCBadStripsConditions(), CSCBadWiresConditions::CSCBadWiresConditions(), CSCChamberIndexValues::CSCChamberIndexValues(), CSCChamberMapValues::CSCChamberMapValues(), CSCChamberTimeCorrectionsValues::CSCChamberTimeCorrectionsValues(), CSCChipSpeedCorrectionDBConditions::CSCChipSpeedCorrectionDBConditions(), CSCCrateMapValues::CSCCrateMapValues(), CSCCrosstalkConditions::CSCCrosstalkConditions(), CSCCrosstalkDBConditions::CSCCrosstalkDBConditions(), CSCDDUMapValues::CSCDDUMapValues(), CSCFakeCrosstalkConditions::CSCFakeCrosstalkConditions(), CSCFakeDBCrosstalk::CSCFakeDBCrosstalk(), CSCFakeDBGains::CSCFakeDBGains(), CSCFakeDBNoiseMatrix::CSCFakeDBNoiseMatrix(), CSCFakeDBPedestals::CSCFakeDBPedestals(), CSCFakeGainsConditions::CSCFakeGainsConditions(), CSCFakeNoiseMatrixConditions::CSCFakeNoiseMatrixConditions(), CSCFakePedestalsConditions::CSCFakePedestalsConditions(), CSCGainsConditions::CSCGainsConditions(), CSCGainsDBConditions::CSCGainsDBConditions(), CSCGeometryESModule::CSCGeometryESModule(), CSCL1TPParametersConditions::CSCL1TPParametersConditions(), CSCNoiseMatrixConditions::CSCNoiseMatrixConditions(), CSCNoiseMatrixDBConditions::CSCNoiseMatrixDBConditions(), CSCPedestalsDBConditions::CSCPedestalsDBConditions(), CSCTFConfigProducer::CSCTFConfigProducer(), DetIdAssociatorESProducer::DetIdAssociatorESProducer(), DTConfigDBProducer::DTConfigDBProducer(), DTConfigTrivialProducer::DTConfigTrivialProducer(), DTFakeTTrigESProducer::DTFakeTTrigESProducer(), DTFakeVDriftESProducer::DTFakeVDriftESProducer(), DTGeometryESModule::DTGeometryESModule(), EcalElectronicsMappingBuilder::EcalElectronicsMappingBuilder(), EcalGlobalShowerContainmentCorrectionsVsEtaESProducer::EcalGlobalShowerContainmentCorrectionsVsEtaESProducer(), EcalLaserCorrectionService::EcalLaserCorrectionService(), EcalRegionCablingESProducer::EcalRegionCablingESProducer(), EcalShowerContainmentCorrectionsESProducer::EcalShowerContainmentCorrectionsESProducer(), EcalTBGeometryBuilder::EcalTBGeometryBuilder(), EcalTBHodoscopeGeometryEP::EcalTBHodoscopeGeometryEP(), EcalTrigPrimESProducer::EcalTrigPrimESProducer(), EcalTrigTowerConstituentsMapBuilder::EcalTrigTowerConstituentsMapBuilder(), EcalUnpackerWorkerESProducer::EcalUnpackerWorkerESProducer(), ElectronLikelihoodESSource::ElectronLikelihoodESSource(), ESUnpackerWorkerESProducer::ESUnpackerWorkerESProducer(), FakeAlignmentProducer::FakeAlignmentProducer(), FakeAlignmentSource::FakeAlignmentSource(), FakeCaloAlignmentEP::FakeCaloAlignmentEP(), FWRecoGeometryESProducer::FWRecoGeometryESProducer(), GsfTrajectoryFitterESProducer::GsfTrajectoryFitterESProducer(), GsfTrajectorySmootherESProducer::GsfTrajectorySmootherESProducer(), HcalAlignmentEP::HcalAlignmentEP(), HcalDbProducer::HcalDbProducer(), HcalDDDGeometryEP::HcalDDDGeometryEP(), HcalHardcodeGeometryEP::HcalHardcodeGeometryEP(), HcalRecAlgoESProducer::HcalRecAlgoESProducer(), HcalTopologyIdealEP::HcalTopologyIdealEP(), HcalTPGCoderULUT::HcalTPGCoderULUT(), HepPDTESSource::HepPDTESSource(), JetCorrectionService< Corrector >::JetCorrectionService(), JetCorrectionServiceChain::JetCorrectionServiceChain(), JetTagComputerESProducer< ConcreteJetTagComputer >::JetTagComputerESProducer(), L1CaloGeometryProd::L1CaloGeometryProd(), L1CaloInputScalesProducer::L1CaloInputScalesProducer(), L1ConfigOnlineProdBase< TRcd, TData >::L1ConfigOnlineProdBase(), L1CSCTriggerPrimitivesConfigProducer::L1CSCTriggerPrimitivesConfigProducer(), L1GctConfigProducers::L1GctConfigProducers(), L1GtBoardMapsTrivialProducer::L1GtBoardMapsTrivialProducer(), L1GtParametersTrivialProducer::L1GtParametersTrivialProducer(), L1GtPrescaleFactorsAlgoTrigTrivialProducer::L1GtPrescaleFactorsAlgoTrigTrivialProducer(), L1GtPrescaleFactorsTechTrigTrivialProducer::L1GtPrescaleFactorsTechTrigTrivialProducer(), L1GtPsbSetupTrivialProducer::L1GtPsbSetupTrivialProducer(), L1GtStableParametersTrivialProducer::L1GtStableParametersTrivialProducer(), L1GtTriggerMaskAlgoTrigTrivialProducer::L1GtTriggerMaskAlgoTrigTrivialProducer(), L1GtTriggerMaskTechTrigTrivialProducer::L1GtTriggerMaskTechTrigTrivialProducer(), L1GtTriggerMaskVetoAlgoTrigTrivialProducer::L1GtTriggerMaskVetoAlgoTrigTrivialProducer(), L1GtTriggerMaskVetoTechTrigTrivialProducer::L1GtTriggerMaskVetoTechTrigTrivialProducer(), L1GtTriggerMenuXmlProducer::L1GtTriggerMenuXmlProducer(), L1MuGMTParametersProducer::L1MuGMTParametersProducer(), L1MuGMTScalesProducer::L1MuGMTScalesProducer(), L1MuTriggerPtScaleProducer::L1MuTriggerPtScaleProducer(), L1MuTriggerScalesProducer::L1MuTriggerScalesProducer(), L1ObjectKeysOnlineProdBase::L1ObjectKeysOnlineProdBase(), L1RPCConeDefinitionProducer::L1RPCConeDefinitionProducer(), L1ScalesTrivialProducer::L1ScalesTrivialProducer(), L1SubsystemKeysOnlineProd::L1SubsystemKeysOnlineProd(), L1TriggerKeyDummyProd::L1TriggerKeyDummyProd(), L1TriggerKeyListDummyProd::L1TriggerKeyListDummyProd(), L1TriggerKeyOnlineProd::L1TriggerKeyOnlineProd(), loopername::loopername(), MagneticFieldMapESProducer::MagneticFieldMapESProducer(), sistrip::MeasureLA::MeasureLA(), MisalignedMuonESProducer::MisalignedMuonESProducer(), MisalignedTrackerESProducer::MisalignedTrackerESProducer(), MuonAssociatorESProducer::MuonAssociatorESProducer(), MuonNumberingInitialization::MuonNumberingInitialization(), MuonRoadTrajectoryBuilderESProducer::MuonRoadTrajectoryBuilderESProducer(), PhysicsTools::MVAComputerESSourceImpl< RecordType >::MVAComputerESSourceImpl(), PhysicsTools::MVATrainerContainerLooperImpl< Record_t >::MVATrainerContainerLooperImpl(), PhysicsTools::MVATrainerLooperImpl< Record_t >::MVATrainerLooperImpl(), NavigationSchoolESProducer::NavigationSchoolESProducer(), ParametersDefinerForTPESProducer::ParametersDefinerForTPESProducer(), magneticfield::ParametrizedMagneticFieldProducer::ParametrizedMagneticFieldProducer(), PixelToFEDAssociateFromAsciiESProducer::PixelToFEDAssociateFromAsciiESProducer(), PixelToLNKAssociateFromAsciiESProducer::PixelToLNKAssociateFromAsciiESProducer(), RCTConfigProducers::RCTConfigProducers(), RingESSource::RingESSource(), RingMakerESProducer::RingMakerESProducer(), RoadMapESSource::RoadMapESSource(), RoadMapMakerESProducer::RoadMapMakerESProducer(), RPCConeBuilder::RPCConeBuilder(), RPCTriggerBxOrConfig::RPCTriggerBxOrConfig(), RPCTriggerConfig::RPCTriggerConfig(), RPCTriggerHsbConfig::RPCTriggerHsbConfig(), RPCTriggerHwConfig::RPCTriggerHwConfig(), SeedingLayersESProducer::SeedingLayersESProducer(), setWhatProduced(), SiPixelFakeCPEGenericErrorParmESSource::SiPixelFakeCPEGenericErrorParmESSource(), SiPixelFakeGainESSource::SiPixelFakeGainESSource(), SiPixelFakeGainForHLTESSource::SiPixelFakeGainForHLTESSource(), SiPixelFakeGainOfflineESSource::SiPixelFakeGainOfflineESSource(), SiPixelFakeLorentzAngleESSource::SiPixelFakeLorentzAngleESSource(), SiPixelFakeQualityESSource::SiPixelFakeQualityESSource(), SiPixelFakeTemplateDBObjectESSource::SiPixelFakeTemplateDBObjectESSource(), SiStripConnectivity::SiStripConnectivity(), SiStripQualityESProducer::SiStripQualityESProducer(), SiStripQualityFakeESSource::SiStripQualityFakeESSource(), SiStripRecHitMatcherESProducer::SiStripRecHitMatcherESProducer(), SiStripRegionConnectivity::SiStripRegionConnectivity(), StringResolutionProviderESProducer::StringResolutionProviderESProducer(), StripCPEESProducer::StripCPEESProducer(), TestCaloAlignmentEP::TestCaloAlignmentEP(), TGeoMgrFromDdd::TGeoMgrFromDdd(), TrackerDigiGeometryESModule::TrackerDigiGeometryESModule(), TrackerGeometricDetESModule::TrackerGeometricDetESModule(), TrackerGeometricDetExtraESModule::TrackerGeometricDetExtraESModule(), TrackerInteractionGeometryESProducer::TrackerInteractionGeometryESProducer(), TrajectoryCleanerESProducer::TrajectoryCleanerESProducer(), TrajectoryFilterESProducer::TrajectoryFilterESProducer(), TSCBLBuilderNoMaterialESProducer::TSCBLBuilderNoMaterialESProducer(), TSCBLBuilderWithPropagatorESProducer::TSCBLBuilderWithPropagatorESProducer(), magneticfield::UniformMagneticFieldESProducer::UniformMagneticFieldESProducer(), magneticfield::VolumeBasedMagneticFieldESProducer::VolumeBasedMagneticFieldESProducer(), XMLIdealGeometryESProducer::XMLIdealGeometryESProducer(), XMLIdealGeometryESSource::XMLIdealGeometryESSource(), ZdcHardcodeGeometryEP::ZdcHardcodeGeometryEP(), and ZeeCalibration::ZeeCalibration().
{ //BOOST_STATIC_ASSERT((typename boost::is_base_and_derived<ED, T>::type)); setWhatProduced(iThis , &T::produce, iLabel); }
void edm::ESProducer::setWhatProduced | ( | T * | iThis, |
const TDecorator & | iDec, | ||
const es::Label & | iLabel = es::Label() |
||
) | [inline, protected] |
Definition at line 132 of file ESProducer.h.
References setWhatProduced().
{ //BOOST_STATIC_ASSERT((typename boost::is_base_and_derived<ED, T>::type)); setWhatProduced(iThis , &T::produce, iDec, iLabel); }