hpstr
The Heavy Photon Search Toolkit for Reconstruction (hpstr) provides an interface to physics data from the HPS experiment saved in the LCIO format and converts it into an ROOT based format.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
TrackEfficHistos.h
Go to the documentation of this file.
1#ifndef TRACKEFFICHISTOS_H
2#define TRACKEFFICHISTOS_H
3
4#include "HistoManager.h"
5#include "Track.h"
6#include "CalCluster.h"
7#include "Vertex.h"
8#include "Particle.h"
9#include "AnaHelpers.h"
10#include <string>
11#include <vector>
12
14
15 public:
16
17 TrackEfficHistos(const std::string& inputName, std::shared_ptr<AnaHelpers> ah) :
18 HistoManager(inputName)
19 {
20 m_name = inputName;
21 _ah=ah;
22 // _ah = std::make_shared<AnaHelpers>();
23 // BuildAxes();
24 }
25
26 virtual void Define3DHistos(){};
27 virtual void Define2DHistos(){};
28
29
30 void BuildAxes(){};
31
32 void FillEffPlots(std::pair<CalCluster*,Track*> ele, std::pair<CalCluster*,Track*> pos, float weight = 1.);
33 void FillPreSelectionPlots(CalCluster*, float weight=1.);
34 void FillPairSelectionPlots(CalCluster* eleClu, CalCluster* posClu,
35 float weight);
36 std::pair<CalCluster*, Track*> getClusterTrackPair(CalCluster* cluster,std::vector<Track*>& tracks, float weight=1.0);
37 void FillEffPlots(Particle* ele, Particle* pos, float weight=1.0);
38 void SetCalTimeOffset(double offset){
39 std::cout<<"setting TrackEfficHistos::timeOffset_ = "<<offset<<std::endl;
40 timeOffset_ = offset;
41 };
42
43
44private:
45 std::shared_ptr<AnaHelpers> _ah ;
46 double timeOffset_{0.0};
47 // Vertices
48 // std::vector<std::string> vPs{"vtx_chi2", "vtx_X", "vtx_Y", "vtx_Z", "vtx_sigma_X","vtx_sigma_Y","vtx_sigma_Z","vtx_InvM","vtx_InvMErr"};
49
50 //bool doTrkCompPlots{false};
51
52};
53
54#endif //TRACKEFFIC_H
Helper class for hipster analysis.
Class used to encapsulate information about a particle.
Class used to encapsulate track information.
Class used to encapsulate Vertex information.
description
std::string m_name
description
void FillEffPlots(std::pair< CalCluster *, Track * > ele, std::pair< CalCluster *, Track * > pos, float weight=1.)
virtual void Define3DHistos()
define additional 3D histo by hand
void SetCalTimeOffset(double offset)
void FillPairSelectionPlots(CalCluster *eleClu, CalCluster *posClu, float weight)
virtual void Define2DHistos()
define additional 2D histo by hand
std::pair< CalCluster *, Track * > getClusterTrackPair(CalCluster *cluster, std::vector< Track * > &tracks, float weight=1.0)
void FillPreSelectionPlots(CalCluster *, float weight=1.)
TrackEfficHistos(const std::string &inputName, std::shared_ptr< AnaHelpers > ah)
std::shared_ptr< AnaHelpers > _ah