CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
edm::InputAnalyzer Class Reference

#include <InputAnalyzer.h>

Inheritance diagram for edm::InputAnalyzer:
edm::one::EDAnalyzer<> edm::one::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

 InputAnalyzer (const edm::ParameterSet &)
 
 ~InputAnalyzer () override
 
- Public Member Functions inherited from edm::one::EDAnalyzer<>
 EDAnalyzer ()=default
 
 EDAnalyzer (const EDAnalyzer &)=delete
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
const EDAnalyzeroperator= (const EDAnalyzer &)=delete
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
- Public Member Functions inherited from edm::one::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDAnalyzerBase () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESResolverIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESResolverIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const *> *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const *> const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProductResolverIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void beginJob () override
 
void endJob () override
 

Private Attributes

bool dataStep2_
 
edm::EDGetTokenT< PCrossingFrame< SimTrack > > labelPCF_
 
edm::EDGetTokenT< SimTrackContainerlabelSimTr_
 

Additional Inherited Members

- Public Types inherited from edm::one::EDAnalyzerBase
typedef EDAnalyzerBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::one::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< Bconsumes (edm::InputTag tag) noexcept
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes ()
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag)
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
void resetItemsToGetFrom (BranchType iType)
 

Detailed Description

Definition at line 33 of file InputAnalyzer.h.

Constructor & Destructor Documentation

◆ InputAnalyzer()

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

Definition at line 42 of file InputAnalyzer.cc.

References dataStep2_, edm::ParameterSet::getParameter(), labelPCF_, and labelSimTr_.

42  {
43  dataStep2_ = iConfig.getParameter<bool>("dataStep2");
44 
45  labelPCF_ = consumes<PCrossingFrame<SimTrack>>(iConfig.getParameter<edm::InputTag>("collPCF"));
46 
47  //will only be needed if not Step2:
48  labelSimTr_ = consumes<SimTrackContainer>(iConfig.getParameter<edm::InputTag>("collSimTrack"));
49  }
T getParameter(std::string const &) const
Definition: ParameterSet.h:307
edm::EDGetTokenT< SimTrackContainer > labelSimTr_
Definition: InputAnalyzer.h:47
edm::EDGetTokenT< PCrossingFrame< SimTrack > > labelPCF_
Definition: InputAnalyzer.h:46

◆ ~InputAnalyzer()

InputAnalyzer::~InputAnalyzer ( )
override

Definition at line 51 of file InputAnalyzer.cc.

51 {}

Member Function Documentation

◆ analyze()

void InputAnalyzer::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
overrideprivatevirtual

Implements edm::one::EDAnalyzerBase.

Definition at line 58 of file InputAnalyzer.cc.

References dataStep2_, mps_fire::i, iEvent, labelPCF_, labelSimTr_, cscDigiValidation_cfi::simTrack, and TrackCandidateProducer_cfi::simTracks.

58  {
59  edm::LogVerbatim("InputAnalyzer") << " dataStep2_ = " << dataStep2_;
60 
61  if (!dataStep2_) {
62  // Get the SimTrack collection
63 
64  // Get the SimTrack collection from the event
66  bool gotTracks = iEvent.getByToken(labelSimTr_, simTracks);
67 
68  if (!gotTracks) {
69  edm::LogVerbatim("InputAnalyzer") << "-> Could not read SimTracks !!!!";
70  } else {
71  edm::LogVerbatim("InputAnalyzer") << "-> Could read SimTracks !!!!";
72  }
73 #ifdef EDM_ML_DEBUG
74  // Loop over the tracks
75  double simPt = 0;
76  int i = 0;
77 
78  SimTrackContainer::const_iterator simTrack;
79  for (simTrack = simTracks->begin(); simTrack != simTracks->end(); ++simTrack) {
80  i++;
81 
82  simPt = (*simTrack).momentum().Pt();
83  edm::LogVerbatim("InputAnalyzer") << " # i = " << i << " simPt = " << simPt;
84  }
85 #endif
86  } else {
87  // Get the PCrossingFrame collection given as signal
88 
90  bool gotTracks = iEvent.getByToken(labelPCF_, cf_simtrack);
91 
92  if (!gotTracks) {
93  edm::LogVerbatim("InputAnalyzer") << "-> Could not read PCrossingFrame<SimTracks> !!!!";
94  } else
95  edm::LogVerbatim("InputAnalyzer") << "-> Could read PCrossingFrame<SimTracks> !!!!";
96  }
97  }
Log< level::Info, true > LogVerbatim
edm::EDGetTokenT< SimTrackContainer > labelSimTr_
Definition: InputAnalyzer.h:47
int iEvent
Definition: GenABIO.cc:224
edm::EDGetTokenT< PCrossingFrame< SimTrack > > labelPCF_
Definition: InputAnalyzer.h:46

◆ beginJob()

void InputAnalyzer::beginJob ( void  )
overrideprivatevirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 100 of file InputAnalyzer.cc.

100 {}

◆ endJob()

void InputAnalyzer::endJob ( void  )
overrideprivatevirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 103 of file InputAnalyzer.cc.

103 {}

Member Data Documentation

◆ dataStep2_

bool edm::InputAnalyzer::dataStep2_
private

Definition at line 45 of file InputAnalyzer.h.

Referenced by analyze(), and InputAnalyzer().

◆ labelPCF_

edm::EDGetTokenT<PCrossingFrame<SimTrack> > edm::InputAnalyzer::labelPCF_
private

Definition at line 46 of file InputAnalyzer.h.

Referenced by analyze(), and InputAnalyzer().

◆ labelSimTr_

edm::EDGetTokenT<SimTrackContainer> edm::InputAnalyzer::labelSimTr_
private

Definition at line 47 of file InputAnalyzer.h.

Referenced by analyze(), and InputAnalyzer().