Fork me on GitHub

source: svn/trunk/interface/TriggerUtil.h@ 257

Last change on this file since 257 was 250, checked in by severine ovyn, 16 years ago

add isolation and b-tag

File size: 2.2 KB
RevLine 
[52]1#ifndef _TRIGUTIL_H_
2#define _TRIGUTIL_H_
3
4/*
5 ---- Delphes ----
6 A Fast Simulator for general purpose LHC detector
7 S. Ovyn ~~~~ severine.ovyn@uclouvain.be
8
9 Center for Particle Physics and Phenomenology (CP3)
10 Universite Catholique de Louvain (UCL)
11 Louvain-la-Neuve, Belgium
12*/
13
14#include <vector>
[72]15#include "TClonesArray.h"
[52]16
[221]17#include "BlockClasses.h"
[250]18#include "Utilities/ExRootAnalysis/interface/TSimpleArray.h"
[72]19#include "Utilities/ExRootAnalysis/interface/ExRootTreeBranch.h"
[52]20
21using namespace std;
22
[63]23class TriggerBit {
24
[52]25 public:
26
[250]27 TriggerBit(){};
[243]28 TriggerBit(const TriggerBit& tb);
29 TriggerBit& operator=(const TriggerBit& tb);
30 ~TriggerBit();
[52]31
[221]32 void GetTrigCondition(const string& trigger_algorithm);
33 void PrintTrigCondition(const string& LogName, const int i);
[72]34 bool GetResult(TClonesArray *branchElecTrig, TClonesArray *branchMuonTrig,
35 TClonesArray *branchJetTrig, TClonesArray *branchTauJetTrig,
36 TClonesArray *branchPhotonTrig, TClonesArray *branchETmisTrig);
[243]37 vector<float> GetCuts(const vector<string> &Sequences);
[250]38 TSimpleArray<TRootJet> SubArrayBjets(TClonesArray *JET);
39 TSimpleArray<TRootElectron> SubArrayIElec(TClonesArray *ELEC);
40 TSimpleArray<TRootMuon> SubArrayIMuon(TClonesArray *MUON);
[63]41
42 private:
[243]43
[63]44 vector<float> ElecValues;
[250]45 vector<float> IElecValues;
[63]46 vector<float> MuonValues;
[250]47 vector<float> IMuonValues;
[63]48 vector<float> JetValues;
[250]49 vector<float> BjetValues;
[63]50 vector<float> TauJetValues;
51 vector<float> EtmisValues;
52 vector<float> GammaValues;
53 bool Result;
[52]54};
55
[63]56
57class TriggerTable {
58
59 public:
60
61 TriggerTable();
[243]62 ~TriggerTable() { list_of_trigger_bits.clear();};
63 TriggerTable& operator=(TriggerTable& tt);
64 TriggerTable(const TriggerTable& tt);
[63]65
[221]66 void TriggerCardReader(const string& filename="data/trigger.dat");
67 void PrintTriggerTable(const string& LogName);
[72]68 bool GetGlobalResult(TClonesArray *branchElecTrig, TClonesArray *branchMuonTrig,
69 TClonesArray *branchJetTrig, TClonesArray *branchTauJetTrig,
70 TClonesArray *branchPhotonTrig, TClonesArray *branchETmisTrig,ExRootTreeBranch *branchTrigger);
[63]71
72 void WriteResult();
73
74 private:
75
76 vector<TriggerBit> list_of_trigger_bits;
77 bool has_been_evaluated;
78 bool GlobalResult;
79
80};
81
[52]82#endif
Note: See TracBrowser for help on using the repository browser.