Fork me on GitHub

source: git/modules/VertexFinder.h@ 7993cad

ImprovedOutputFile Timing dual_readout llp
Last change on this file since 7993cad was bc4bff0, checked in by Michele Selvaggi <michele.selvaggi@…>, 9 years ago

fixed compilation bug in gcc530

  • Property mode set to 100644
File size: 1.6 KB
RevLine 
[0e2f49b]1#ifndef VertexFinder_h
2#define VertexFinder_h
3
4/** \class VertexFinder
5 *
[2600216]6 * Cluster vertices from tracks
[0e2f49b]7 *
[5658083]8 * \authors A. Hart, M. Selvaggi
[0e2f49b]9 *
10 */
11
[5658083]12
[0e2f49b]13#include "classes/DelphesModule.h"
14#include "classes/DelphesClasses.h"
15#include <utility>
16#include <algorithm>
17#include <stdexcept>
18#include <iostream>
19#include <vector>
[bc4bff0]20#include <unordered_map>
[0e2f49b]21
22using namespace std;
23
24class TObjArray;
25class Candidate;
26class TVector3;
27
28class VertexFinder: public DelphesModule
29{
30public:
31
32 VertexFinder();
33 ~VertexFinder();
34
35 void Init();
36 void Process();
37 void Finish();
38
[5658083]39 static Bool_t secondDescending (pair<UInt_t, Double_t>, pair<UInt_t, Double_t>);
40 static Bool_t secondAscending (pair<UInt_t, Double_t>, pair<UInt_t, Double_t>);
[0e2f49b]41
42private:
43
44 void createSeeds ();
[5658083]45 void growCluster (const UInt_t);
46 Double_t weight (const UInt_t);
47 void addTrackToCluster (const UInt_t, const UInt_t);
48 void removeTrackFromCluster (const UInt_t, const UInt_t);
[0e2f49b]49
50 Double_t fSigma;
51 Double_t fMinPT;
52 Double_t fMaxEta;
53 Double_t fSeedMinPT;
54 Int_t fMinNDF;
55 Int_t fGrowSeeds;
56
57 TObjArray *fInputArray;
58 TIterator *fItInputArray;
59
60 TObjArray *fOutputArray;
[2600216]61 TObjArray *fVertexOutputArray;
[0e2f49b]62
[5658083]63 map<UInt_t, map<string, Double_t> > trackIDToDouble;
64 map<UInt_t, map<string, Int_t> > trackIDToInt;
65 map<UInt_t, map<string, Bool_t> > trackIDToBool;
[0e2f49b]66
[5658083]67 map<UInt_t, map<string, Double_t> > clusterIDToDouble;
68 map<UInt_t, map<string, Int_t> > clusterIDToInt;
69 map<UInt_t, map<string, Bool_t> > clusterIDToBool;
70 vector<pair<UInt_t, Double_t> > trackPT;
71 vector<pair<UInt_t, Double_t> > clusterSumPT2;
[0e2f49b]72
73 ClassDef(VertexFinder, 1)
74};
75
76#endif
Note: See TracBrowser for help on using the repository browser.