CMS 3D CMS Logo

SiStripOnTrackClusterTableProducerBase.h
Go to the documentation of this file.
4 
9 
11 public:
13  : m_name(params.getParameter<std::string>("name")),
14  m_doc(params.existsAs<std::string>("doc") ? params.getParameter<std::string>("doc") : ""),
15  m_extension(params.existsAs<bool>("extension") ? params.getParameter<bool>("extension") : true),
16  m_tracks_token(consumes<edm::View<reco::Track>>(params.getParameter<edm::InputTag>("Tracks"))),
17  m_association_token(consumes<TrajTrackAssociationCollection>(params.getParameter<edm::InputTag>("Tracks"))) {
18  produces<nanoaod::FlatTable>();
19  }
21 
22  void produce(edm::Event& iEvent, const edm::EventSetup& iSetup) final;
23 
24  struct OnTrackCluster {
25  uint32_t det;
27  const Trajectory* traj;
30  OnTrackCluster(uint32_t detId,
32  const Trajectory* trajectory,
33  const reco::Track* track_,
34  const TrajectoryMeasurement& measurement_)
35  : det{detId}, cluster{stripCluster}, traj{trajectory}, track{track_}, measurement{measurement_} {}
36  };
37 
38  virtual void fillTable(const std::vector<OnTrackCluster>& clusters,
41  const edm::EventSetup& iSetup) = 0;
42 
43  template <typename VALUES>
44  static void addColumn(nanoaod::FlatTable* table, const std::string& name, VALUES&& values, const std::string& doc) {
46  table->template addColumn<value_type>(name, values, doc);
47  }
48 
49 private:
53 
56 };
electrons_cff.bool
bool
Definition: electrons_cff.py:366
TrackingMonitor_cfi.stripCluster
stripCluster
Definition: TrackingMonitor_cfi.py:20
SiStripOnTrackClusterTableProducerBase::OnTrackCluster::measurement
const TrajectoryMeasurement & measurement
Definition: SiStripOnTrackClusterTableProducerBase.h:29
boostedTaus_cff.doc
doc
Definition: boostedTaus_cff.py:20
sistrip::View
View
Definition: ConstantsForView.h:26
CalibrationSummaryClient_cfi.params
params
Definition: CalibrationSummaryClient_cfi.py:14
SiStripOnTrackClusterTableProducerBase::m_tracks_token
const edm::EDGetTokenT< edm::View< reco::Track > > m_tracks_token
Definition: SiStripOnTrackClusterTableProducerBase.h:54
edm::EDGetTokenT
Definition: EDGetToken.h:33
edm
HLT enums.
Definition: AlignableModifier.h:19
HLT_FULL_cff.InputTag
InputTag
Definition: HLT_FULL_cff.py:89301
EDProducer.h
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:46
SiStripOnTrackClusterTableProducerBase::OnTrackCluster::cluster
const SiStripCluster * cluster
Definition: SiStripOnTrackClusterTableProducerBase.h:26
SiStripOnTrackClusterTableProducerBase::m_name
const std::string m_name
Definition: SiStripOnTrackClusterTableProducerBase.h:50
SiStripOnTrackClusterTableProducerBase::m_extension
bool m_extension
Definition: SiStripOnTrackClusterTableProducerBase.h:52
Track.h
SiStripOnTrackClusterTableProducerBase::SiStripOnTrackClusterTableProducerBase
SiStripOnTrackClusterTableProducerBase(const edm::ParameterSet &params)
Definition: SiStripOnTrackClusterTableProducerBase.h:12
SiStripOnTrackClusterTableProducerBase
Definition: SiStripOnTrackClusterTableProducerBase.h:10
contentValuesCheck.values
values
Definition: contentValuesCheck.py:38
SiStripOnTrackClusterTableProducerBase::m_association_token
const edm::EDGetTokenT< TrajTrackAssociationCollection > m_association_token
Definition: SiStripOnTrackClusterTableProducerBase.h:55
reco::Track
Definition: Track.h:27
SiStripOnTrackClusterTableProducerBase::addColumn
static void addColumn(nanoaod::FlatTable *table, const std::string &name, VALUES &&values, const std::string &doc)
Definition: SiStripOnTrackClusterTableProducerBase.h:44
SiStripOnTrackClusterTableProducerBase::produce
void produce(edm::Event &iEvent, const edm::EventSetup &iSetup) final
Definition: SiStripOnTrackClusterTableProducerBase.cc:20
TrajTrackAssociation.h
bsc_activity_cfg.clusters
clusters
Definition: bsc_activity_cfg.py:36
edm::View
Definition: CaloClusterFwd.h:14
funct::true
true
Definition: Factorize.h:173
SiStripOnTrackClusterTableProducerBase::m_doc
const std::string m_doc
Definition: SiStripOnTrackClusterTableProducerBase.h:51
edm::ParameterSet
Definition: ParameterSet.h:47
SiStripOnTrackClusterTableProducerBase::OnTrackCluster::OnTrackCluster
OnTrackCluster(uint32_t detId, const SiStripCluster *stripCluster, const Trajectory *trajectory, const reco::Track *track_, const TrajectoryMeasurement &measurement_)
Definition: SiStripOnTrackClusterTableProducerBase.h:30
SiStripCluster.h
tracks
const uint32_t *__restrict__ const HitContainer *__restrict__ TkSoA *__restrict__ tracks
Definition: CAHitNtupletGeneratorKernelsImpl.h:176
SiStripOnTrackClusterTableProducerBase::OnTrackCluster
Definition: SiStripOnTrackClusterTableProducerBase.h:24
edm::AssociationMap< edm::OneToOne< std::vector< Trajectory >, reco::TrackCollection, unsigned short > >
iEvent
int iEvent
Definition: GenABIO.cc:224
edm::stream::EDProducer
Definition: EDProducer.h:36
edm::EventSetup
Definition: EventSetup.h:58
reco::JetExtendedAssociation::value_type
Container::value_type value_type
Definition: JetExtendedAssociation.h:30
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
FlatTable.h
SiStripOnTrackClusterTableProducerBase::fillTable
virtual void fillTable(const std::vector< OnTrackCluster > &clusters, const edm::View< reco::Track > &tracks, nanoaod::FlatTable *table, const edm::EventSetup &iSetup)=0
nanoaod::FlatTable
Definition: FlatTable.h:38
std
Definition: JetResolutionObject.h:76
Trajectory
Definition: Trajectory.h:38
SiStripOnTrackClusterTableProducerBase::~SiStripOnTrackClusterTableProducerBase
~SiStripOnTrackClusterTableProducerBase() override
Definition: SiStripOnTrackClusterTableProducerBase.cc:7
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
SiStripOnTrackClusterTableProducerBase::OnTrackCluster::traj
const Trajectory * traj
Definition: SiStripOnTrackClusterTableProducerBase.h:27
ConsumesCollector.h
ParameterSet.h
SiStripOnTrackClusterTableProducerBase::OnTrackCluster::det
uint32_t det
Definition: SiStripOnTrackClusterTableProducerBase.h:25
TableParser.table
table
Definition: TableParser.py:111
edm::Event
Definition: Event.h:73
TrajectoryMeasurement
Definition: TrajectoryMeasurement.h:25
SiStripCluster
Definition: SiStripCluster.h:8
SiStripOnTrackClusterTableProducerBase::OnTrackCluster::track
const reco::Track * track
Definition: SiStripOnTrackClusterTableProducerBase.h:28