Go to the documentation of this file. 1 #ifndef VALIDATION_RECOVERTEX_INTERFACE_PRIMARYVERTEXANALYZER4PUSLIMMED_H_
2 #define VALIDATION_RECOVERTEX_INTERFACE_PRIMARYVERTEXANALYZER4PUSLIMMED_H_
141 const std::vector<simPrimaryVertex> &);
149 bool genPVMatchedToRecoPV);
155 std::vector<PrimaryVertexAnalyzer4PUSlimmed::simPrimaryVertex>
getSimPVs(
158 std::vector<PrimaryVertexAnalyzer4PUSlimmed::recoPrimaryVertex>
getRecoPVs(
170 std::map<std::string, std::map<std::string, MonitorElement *>>
mes_;
186 #endif // VALIDATION_RECOVERTEX_INTERFACE_PRIMARYVERTEXANALYZER4PUSLIMMED_H_
std::vector< const simPrimaryVertex * > sim_vertices_internal
bool matchRecoTrack2SimSignal(const reco::TrackBaseRef &)
std::map< std::string, std::map< std::string, MonitorElement * > > mes_
PrimaryVertexAnalyzer4PUSlimmed(const edm::ParameterSet &)
void analyze(const edm::Event &, const edm::EventSetup &) override
bool use_only_charged_tracks_
edm::EDGetTokenT< TrackingParticleCollection > trackingParticleCollectionToken_
std::vector< const TrackingVertex * > sim_vertices
~PrimaryVertexAnalyzer4PUSlimmed() override
const bool do_generic_sim_plots_
int num_matched_sim_tracks
double closest_vertex_distance_z
void calculatePurityAndFillHistograms(const std::string &, std::vector< recoPrimaryVertex > &, int, bool)
void fillGenericGenVertexHistograms(const simPrimaryVertex &v)
void fillResolutionAndPullHistograms(const std::string &, int, recoPrimaryVertex &v, bool)
edm::EDGetTokenT< TrackingVertexCollection > trackingVertexCollectionToken_
std::vector< edm::InputTag > reco_vertex_collections_
edm::EDGetTokenT< std::vector< PileupSummaryInfo > > vecPileupSummaryInfoToken_
void fillRecoAssociatedGenVertexHistograms(const std::string &, const simPrimaryVertex &v)
TrackingVertexRef sim_vertex
recoPrimaryVertex(double x1, double y1, double z1)
std::vector< PrimaryVertexAnalyzer4PUSlimmed::simPrimaryVertex > getSimPVs(const edm::Handle< TrackingVertexCollection > &)
double closest_vertex_distance_z
const reco::SimToRecoCollection * s2r_
std::vector< edm::EDGetTokenT< edm::View< reco::Vertex > > > reco_vertex_collection_tokens_
const reco::RecoToSimCollection * r2s_
void matchSim2RecoVertices(std::vector< simPrimaryVertex > &, const reco::VertexSimToRecoCollection &)
std::vector< PrimaryVertexAnalyzer4PUSlimmed::recoPrimaryVertex > getRecoPVs(const edm::Handle< edm::View< reco::Vertex >> &)
void matchReco2SimVertices(std::vector< recoPrimaryVertex > &, const reco::VertexRecoToSimCollection &, const std::vector< simPrimaryVertex > &)
math::XYZTLorentzVector LorentzVector
const reco::Vertex * recVtx
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
simPrimaryVertex(double x1, double y1, double z1)
edm::EDGetTokenT< reco::VertexToTrackingVertexAssociator > vertexAssociatorToken_
int num_matched_reco_tracks
float average_match_quality
std::vector< bool > errorPrintedForColl_
void bookHistograms(DQMStore::IBooker &i, edm::Run const &, edm::EventSetup const &) override
std::vector< const reco::Vertex * > rec_vertices
edm::EDGetTokenT< reco::RecoToSimCollection > recoToSimAssociationToken_
edm::EDGetTokenT< reco::SimToRecoCollection > simToRecoAssociationToken_
void resetSimPVAssociation(std::vector< simPrimaryVertex > &)
reco::VertexBaseRef recVtxRef
std::vector< unsigned int > sim_vertices_num_shared_tracks
void fillGenAssociatedRecoVertexHistograms(const std::string &, int, recoPrimaryVertex &v)
void computePairDistance(const T &collection, MonitorElement *me)
void fillRecoAssociatedGenPVHistograms(const std::string &label, const PrimaryVertexAnalyzer4PUSlimmed::simPrimaryVertex &v, bool genPVMatchedToRecoPV)