CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Private Attributes
edm::DataMixingGeneralTrackWorker Class Reference

#include <DataMixingGeneralTrackWorker.h>

Public Member Functions

void addGeneralTrackPileups (const int bcr, const edm::EventPrincipal *, unsigned int EventId, ModuleCallingContext const *)
 
void addGeneralTrackSignals (const edm::Event &e)
 
 DataMixingGeneralTrackWorker ()
 
 DataMixingGeneralTrackWorker (const edm::ParameterSet &ps, edm::ConsumesCollector &&iC)
 
void putGeneralTrack (edm::Event &e)
 
virtual ~DataMixingGeneralTrackWorker ()
 

Private Attributes

std::string GeneralTrackCollectionDM_
 
edm::InputTag GeneralTrackcollectionSig_
 
edm::InputTag GeneralTrackLabelSig_
 
edm::InputTag GeneralTrackPileInputTag_
 
edm::EDGetTokenT
< reco::TrackCollection
GTrackPileToken_
 
edm::EDGetTokenT
< reco::TrackCollection
GTrackSigToken_
 
std::unique_ptr
< reco::TrackCollection
NewTrackList_
 

Detailed Description

Definition at line 36 of file DataMixingGeneralTrackWorker.h.

Constructor & Destructor Documentation

DataMixingGeneralTrackWorker::DataMixingGeneralTrackWorker ( )

Definition at line 22 of file DataMixingGeneralTrackWorker.cc.

22 {}
DataMixingGeneralTrackWorker::DataMixingGeneralTrackWorker ( const edm::ParameterSet ps,
edm::ConsumesCollector &&  iC 
)
explicit

standard constructor

Definition at line 25 of file DataMixingGeneralTrackWorker.cc.

References edm::ParameterSet::getParameter(), and AlCaHLTBitMon_QueryRunRegistry::string.

25  {
26  // get the subdetector names
27  // this->getSubdetectorNames(); //something like this may be useful to
28  // check what we are supposed to do...
29 
30  // declare the products to produce
31 
32  GeneralTrackLabelSig_ = ps.getParameter<edm::InputTag>("GeneralTrackLabelSig");
33 
34  GeneralTrackPileInputTag_ = ps.getParameter<edm::InputTag>("GeneralTrackPileInputTag");
35 
36  GeneralTrackCollectionDM_ = ps.getParameter<std::string>("GeneralTrackDigiCollectionDM");
37 
40  }
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
edm::EDGetTokenT< reco::TrackCollection > GTrackSigToken_
std::vector< Track > TrackCollection
collection of Tracks
Definition: TrackFwd.h:14
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
edm::EDGetTokenT< reco::TrackCollection > GTrackPileToken_
DataMixingGeneralTrackWorker::~DataMixingGeneralTrackWorker ( )
virtual

Default destructor

Definition at line 43 of file DataMixingGeneralTrackWorker.cc.

43 {}

Member Function Documentation

void DataMixingGeneralTrackWorker::addGeneralTrackPileups ( const int  bcr,
const edm::EventPrincipal ep,
unsigned int  EventId,
ModuleCallingContext const *  mcc 
)

Definition at line 66 of file DataMixingGeneralTrackWorker.cc.

References edm::EventPrincipal::id(), LogDebug, HLT_FULL_cff::track, and tracks.

69  {
70  LogDebug("DataMixingGeneralTrackWorker")
71  << "\n===============> adding pileups from event " << ep->id() << " for bunchcrossing " << bcr;
72 
73  std::shared_ptr<Wrapper<reco::TrackCollection> const> inputPTR =
74  getProductByTag<reco::TrackCollection>(*ep, GeneralTrackPileInputTag_, mcc);
75 
76  if (inputPTR) {
77  const reco::TrackCollection *tracks = const_cast<reco::TrackCollection *>(inputPTR->product());
78 
79  // grab tracks, store copy
80 
81  for (reco::TrackCollection::const_iterator track = tracks->begin(); track != tracks->end(); ++track) {
82  NewTrackList_->push_back(*track);
83  }
84  }
85  }
EventID const & id() const
std::vector< Track > TrackCollection
collection of Tracks
Definition: TrackFwd.h:14
auto const & tracks
cannot be loose
std::unique_ptr< reco::TrackCollection > NewTrackList_
#define LogDebug(id)
void DataMixingGeneralTrackWorker::addGeneralTrackSignals ( const edm::Event e)

Definition at line 45 of file DataMixingGeneralTrackWorker.cc.

References edm::Event::getByToken(), HLT_FULL_cff::track, and tracks.

45  {
46  // Create new track list; Rely on the fact that addSignals gets called
47  // first...
48 
49  NewTrackList_ = std::make_unique<reco::TrackCollection>();
50 
51  // grab tracks, store copy
52 
53  // edm::Handle<reco::TrackCollection> generalTrkHandle;
54  // e.getByLabel("generalTracks", generalTrkHandle);
56  e.getByToken(GTrackSigToken_, tracks);
57 
58  if (tracks.isValid()) {
59  for (reco::TrackCollection::const_iterator track = tracks->begin(); track != tracks->end(); ++track) {
60  NewTrackList_->push_back(*track);
61  }
62  }
63 
64  } // end of addGeneralTrackSignals
edm::EDGetTokenT< reco::TrackCollection > GTrackSigToken_
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:539
auto const & tracks
cannot be loose
std::unique_ptr< reco::TrackCollection > NewTrackList_
void DataMixingGeneralTrackWorker::putGeneralTrack ( edm::Event e)

Definition at line 87 of file DataMixingGeneralTrackWorker.cc.

References eostools::move(), and edm::Event::put().

87  {
88  // collection of Tracks to put in the event
89 
90  // put the collection of digis in the event
91  LogInfo("DataMixingGeneralTrackWorker") << "total # Merged Tracks: " << NewTrackList_->size();
92 
93  // put collection
94 
96 
97  // clear local storage for this event
98  // NewTrackList_.clear();
99  }
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
Definition: Event.h:133
def move
Definition: eostools.py:511
Log< level::Info, false > LogInfo
std::unique_ptr< reco::TrackCollection > NewTrackList_

Member Data Documentation

std::string edm::DataMixingGeneralTrackWorker::GeneralTrackCollectionDM_
private

Definition at line 61 of file DataMixingGeneralTrackWorker.h.

edm::InputTag edm::DataMixingGeneralTrackWorker::GeneralTrackcollectionSig_
private

Definition at line 56 of file DataMixingGeneralTrackWorker.h.

edm::InputTag edm::DataMixingGeneralTrackWorker::GeneralTrackLabelSig_
private

Definition at line 58 of file DataMixingGeneralTrackWorker.h.

edm::InputTag edm::DataMixingGeneralTrackWorker::GeneralTrackPileInputTag_
private

Definition at line 60 of file DataMixingGeneralTrackWorker.h.

edm::EDGetTokenT<reco::TrackCollection> edm::DataMixingGeneralTrackWorker::GTrackPileToken_
private

Definition at line 65 of file DataMixingGeneralTrackWorker.h.

edm::EDGetTokenT<reco::TrackCollection> edm::DataMixingGeneralTrackWorker::GTrackSigToken_
private

Definition at line 64 of file DataMixingGeneralTrackWorker.h.

std::unique_ptr<reco::TrackCollection> edm::DataMixingGeneralTrackWorker::NewTrackList_
private

Definition at line 69 of file DataMixingGeneralTrackWorker.h.