ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/Utils/interface/VertexTools.h
Revision: 1.4
Committed: Mon Jul 4 13:48:50 2011 UTC (13 years, 10 months ago) by fabstoec
Content type: text/plain
Branch: MAIN
Changes since 1.3: +6 -3 lines
Log Message:
fixed warnings

File Contents

# User Rev Content
1 bendavid 1.1 //--------------------------------------------------------------------------------------------------
2     // $Id $
3     //
4     // VertexTools
5     //
6     // Helper Class for photon Identification decisions.
7     //
8     // Authors: J.Bendavid
9     //--------------------------------------------------------------------------------------------------
10    
11     #ifndef MITPHYSICS_UTILS_VERTEXTOOLS_H
12     #define MITPHYSICS_UTILS_VERTEXTOOLS_H
13    
14     #include "MitAna/DataTree/interface/Photon.h"
15     #include "MitAna/DataTree/interface/Electron.h"
16     #include "MitAna/DataTree/interface/ElectronCol.h"
17     #include "MitAna/DataTree/interface/BaseVertex.h"
18     #include "MitAna/DataTree/interface/DecayParticleCol.h"
19     #include "MitAna/DataTree/interface/VertexCol.h"
20     #include "MitAna/DataTree/interface/BeamSpotCol.h"
21     #include "MitAna/DataTree/interface/TriggerObjectCol.h"
22     #include "MitCommon/MathTools/interface/MathUtils.h"
23     #include "MitPhysics/Utils/interface/VertexMVA.h"
24 maxi 1.2 #include "MitAna/DataTree/interface/PFCandidateCol.h"
25 bendavid 1.1
26 maxi 1.2 #include "TMVA/Reader.h"
27 bendavid 1.1
28     namespace mithep {
29 maxi 1.2 typedef std::vector<double> VertexZarray;
30 maxi 1.3 typedef std::vector<const Track*> TrackArray;
31 maxi 1.2
32 bendavid 1.1 class VertexTools {
33 maxi 1.2 public:
34    
35     static double NewMass(const Photon* ph1, const Photon* ph2, const BaseVertex* vert);
36    
37     static VertexZarray ExtractZarray(const VertexCol* vcol, float zmin=-30, float zmax = 30,
38     const BaseVertex *fBeamSpot = NULL);
39     static VertexZarray ExtractZarray(float zmin=-30, float zmax=30, float step=0.05);
40    
41     static const Vertex* BestVtx(const PFCandidateCol *fPFJets, const VertexCol *c,
42     const BaseVertex *fBeamSpot, FourVector diboso);
43 fabstoec 1.4
44    
45 maxi 1.2 static double BestVtx(const PFCandidateCol *fPFJets, VertexZarray zcol,
46     const BaseVertex *fBeamSpot, FourVector diboso);
47 fabstoec 1.4
48 maxi 1.2 static double Prob(const PFCandidateCol *fPFJets, double zpos,
49     const BaseVertex *fBeamSpot, FourVector diboso);
50    
51     static double VertexWidth(const Vertex*, const BaseVertex* );
52 maxi 1.3
53     static void BanThisTrack(const Track*);
54     static void Reset();
55 maxi 1.2
56     static VertexTools* instance(const char* str){
57     if(meobject == NULL){
58     meobject = new VertexTools(str);
59     }
60     return meobject;
61 fabstoec 1.4 }
62 maxi 1.2
63     Float_t tmvar1, tmvar2, tmvar3, tmvar4, tmvar5, tmvar6;
64     TMVA::Reader* reader;
65    
66     private:
67     static VertexTools *meobject;
68 fabstoec 1.4
69 maxi 1.2 VertexTools();
70     VertexTools(const char* str);
71     TString relname;
72 fabstoec 1.4
73 maxi 1.3 TrackArray excluded;
74    
75 bendavid 1.1 ClassDef(VertexTools, 0) // Muon tools
76 maxi 1.2 };
77 bendavid 1.1 }
78    
79     #endif