CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
L1TMuonBarrelKalmanStubProducer Class Reference
Inheritance diagram for L1TMuonBarrelKalmanStubProducer:
edm::stream::EDProducer<>

Public Member Functions

 L1TMuonBarrelKalmanStubProducer (const edm::ParameterSet &)
 
 ~L1TMuonBarrelKalmanStubProducer () override
 
- Public Member Functions inherited from edm::stream::EDProducer<>
 EDProducer ()=default
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndRuns () const final
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 

Private Member Functions

void beginStream (edm::StreamID) override
 
void endStream () override
 
void produce (edm::Event &, const edm::EventSetup &) override
 

Private Attributes

edm::ESHandle< L1TMuonBarrelParamsbmtfParamsHandle_
 
L1TMuonBarrelKalmanStubProcessorproc_
 
edm::EDGetTokenT< L1MuDTChambPhContainersrcPhi_
 
edm::EDGetTokenT< L1MuDTChambThContainersrcTheta_
 
int verbose_
 

Additional Inherited Members

- Public Types inherited from edm::stream::EDProducer<>
typedef CacheContexts< T... > CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T... > HasAbility
 
typedef CacheTypes::LuminosityBlockCache LuminosityBlockCache
 
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 

Detailed Description

Definition at line 30 of file L1TMuonBarrelKalmanStubProducer.cc.

Constructor & Destructor Documentation

L1TMuonBarrelKalmanStubProducer::L1TMuonBarrelKalmanStubProducer ( const edm::ParameterSet iConfig)
explicit

Definition at line 59 of file L1TMuonBarrelKalmanStubProducer.cc.

60  : srcPhi_(consumes<L1MuDTChambPhContainer>(iConfig.getParameter<edm::InputTag>("srcPhi"))),
61  srcTheta_(consumes<L1MuDTChambThContainer>(iConfig.getParameter<edm::InputTag>("srcTheta"))),
63  verbose_(iConfig.getParameter<int>("verbose")) {
64  produces<L1MuKBMTCombinedStubCollection>();
65 }
T getParameter(std::string const &) const
edm::EDGetTokenT< L1MuDTChambPhContainer > srcPhi_
edm::EDGetTokenT< L1MuDTChambThContainer > srcTheta_
L1TMuonBarrelKalmanStubProcessor * proc_
L1TMuonBarrelKalmanStubProducer::~L1TMuonBarrelKalmanStubProducer ( )
override

Definition at line 67 of file L1TMuonBarrelKalmanStubProducer.cc.

References proc_.

67  {
68  // do anything here that needs to be done at destruction time
69  // (e.g. close files, deallocate resources etc.)
70  if (proc_ != nullptr)
71  delete proc_;
72 }
L1TMuonBarrelKalmanStubProcessor * proc_

Member Function Documentation

void L1TMuonBarrelKalmanStubProducer::beginStream ( edm::StreamID  )
overrideprivate

Definition at line 117 of file L1TMuonBarrelKalmanStubProducer.cc.

117 {}
void L1TMuonBarrelKalmanStubProducer::endStream ( )
overrideprivate

Definition at line 120 of file L1TMuonBarrelKalmanStubProducer.cc.

120 {}
void L1TMuonBarrelKalmanStubProducer::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 122 of file L1TMuonBarrelKalmanStubProducer.cc.

References edm::ConfigurationDescriptions::addDefault(), DEFINE_FWK_MODULE, and edm::ParameterSetDescription::setUnknown().

122  {
123  //The following says we do not know what parameters are allowed so do no validation
124  // Please change this to state exactly what you do use, even if it is no parameters
126  desc.setUnknown();
127  descriptions.addDefault(desc);
128 }
void addDefault(ParameterSetDescription const &psetDescription)
void L1TMuonBarrelKalmanStubProducer::produce ( edm::Event iEvent,
const edm::EventSetup iSetup 
)
overrideprivate

Definition at line 79 of file L1TMuonBarrelKalmanStubProducer.cc.

References bmtfParamsHandle_, gather_cfg::cout, edm::EventSetup::get(), edm::eventsetup::EventSetupRecordImplementation< T >::get(), edm::Event::getByToken(), L1TMuonBarrelKalmanStubProcessor::makeInputPattern(), L1TMuonBarrelKalmanStubProcessor::makeStubs(), proc_, edm::Handle< T >::product(), edm::ESHandle< T >::product(), edm::Event::put(), srcPhi_, srcTheta_, parallelization::uint, and verbose_.

79  {
80  using namespace edm;
82  iEvent.getByToken(srcPhi_, phiIn);
83 
85  iEvent.getByToken(srcTheta_, thetaIn);
86 
87  //Get parameters
88 
89  const L1TMuonBarrelParamsRcd& bmtfParamsRcd = iSetup.get<L1TMuonBarrelParamsRcd>();
90  bmtfParamsRcd.get(bmtfParamsHandle_);
91  const L1TMuonBarrelParams& bmtfParams = *bmtfParamsHandle_.product();
92 
93  L1MuKBMTCombinedStubCollection stubs = proc_->makeStubs(phiIn.product(), thetaIn.product(), bmtfParams);
94  if (verbose_ == 1)
95  for (const auto& stub : stubs) {
96  printf("Stub: wheel=%d sector=%d station =%d tag=%d eta1=%d qeta1=%d eta2=%d qeta2=%d\n",
97  stub.whNum(),
98  stub.scNum(),
99  stub.stNum(),
100  stub.tag(),
101  stub.eta1(),
102  stub.qeta1(),
103  stub.eta2(),
104  stub.qeta2());
105  }
106 
107  if (verbose_ == 2) {
108  std::cout << "NEW" << std::endl;
109  for (uint sector = 0; sector < 12; ++sector)
110  proc_->makeInputPattern(phiIn.product(), thetaIn.product(), sector);
111  }
112 
113  iEvent.put(std::make_unique<L1MuKBMTCombinedStubCollection>(stubs));
114 }
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
Definition: Event.h:131
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:525
L1MuKBMTCombinedStubCollection makeStubs(const L1MuDTChambPhContainer *, const L1MuDTChambThContainer *, const L1TMuonBarrelParams &)
edm::EDGetTokenT< L1MuDTChambPhContainer > srcPhi_
PRODUCT const & get(ESGetToken< PRODUCT, T > const &iToken) const
edm::EDGetTokenT< L1MuDTChambThContainer > srcTheta_
void makeInputPattern(const L1MuDTChambPhContainer *phiContainer, const L1MuDTChambThContainer *etaContainer, int sector)
edm::ESHandle< L1TMuonBarrelParams > bmtfParamsHandle_
L1TMuonBarrelKalmanStubProcessor * proc_
T const * product() const
Definition: Handle.h:69
HLT enums.
T get() const
Definition: EventSetup.h:73
T const * product() const
Definition: ESHandle.h:86
std::vector< L1MuKBMTCombinedStub > L1MuKBMTCombinedStubCollection

Member Data Documentation

edm::ESHandle<L1TMuonBarrelParams> L1TMuonBarrelKalmanStubProducer::bmtfParamsHandle_
private

Definition at line 45 of file L1TMuonBarrelKalmanStubProducer.cc.

Referenced by produce().

L1TMuonBarrelKalmanStubProcessor* L1TMuonBarrelKalmanStubProducer::proc_
private

Definition at line 43 of file L1TMuonBarrelKalmanStubProducer.cc.

Referenced by produce(), and ~L1TMuonBarrelKalmanStubProducer().

edm::EDGetTokenT<L1MuDTChambPhContainer> L1TMuonBarrelKalmanStubProducer::srcPhi_
private

Definition at line 41 of file L1TMuonBarrelKalmanStubProducer.cc.

Referenced by produce().

edm::EDGetTokenT<L1MuDTChambThContainer> L1TMuonBarrelKalmanStubProducer::srcTheta_
private

Definition at line 42 of file L1TMuonBarrelKalmanStubProducer.cc.

Referenced by produce().

int L1TMuonBarrelKalmanStubProducer::verbose_
private

Definition at line 44 of file L1TMuonBarrelKalmanStubProducer.cc.

Referenced by produce().