117 |
|
//string holds input collection type |
118 |
|
//outer vector corresponds to each cut |
119 |
|
//inner vector corresponds to each object in input collection |
120 |
< |
//bool tells if object passes or fails cuts |
121 |
< |
typedef map<string, vector < vector<bool> > > flagMap; |
120 |
> |
//pair(bool) first bool counts towards the event passing, second bool determines whether to plot the object |
121 |
> |
typedef map<string, vector<vector<pair<bool,bool> > > > flagMap; |
122 |
> |
|
123 |
> |
typedef vector<pair<bool,bool> > flagPair; |
124 |
|
|
125 |
|
//counterMap: |
126 |
|
//string holds input collection type |
198 |
|
edm::Handle<double> rhokt6CaloJetsHandle_; |
199 |
|
|
200 |
|
flagMap cumulativeFlags; |
201 |
+ |
flagMap vetoFlags; |
202 |
|
|
203 |
|
vector<vector<map<string, TH1D*>>> oneDHists_; |
204 |
|
vector<vector<map<string, TH2D*>>> twoDHists_; |
235 |
|
vector<double> cutValues; |
236 |
|
vector<string> cutStringValues; |
237 |
|
vector<string> logicalOperators;//and, or |
238 |
< |
int numSubcuts; |
238 |
> |
int numSubcuts; |
239 |
|
int numberRequired; |
240 |
|
string eventComparativeOperator; |
241 |
|
string name; |
242 |
+ |
bool isVeto; |
243 |
|
}; |
244 |
|
|
245 |
|
struct channel { |
268 |
|
double stopCTauScaleFactor_; |
269 |
|
|
270 |
|
template <class InputCollection> void setObjectFlags(cut &, uint, flagMap &, flagMap &, InputCollection, string); |
271 |
< |
template <class InputCollection1, class InputCollection2> void setObjectFlags(cut &, uint, flagMap &, flagMap &, InputCollection1, InputCollection2, vector<bool>, vector<bool>, string); |
271 |
> |
template <class InputCollection1, class InputCollection2> void setObjectFlags(cut &, uint, flagMap &, flagMap &, InputCollection1, InputCollection2, flagPair, flagPair, string); |
272 |
> |
|
273 |
> |
template <class InputCollection> void assignTreeBranch(BranchSpecs brSpecs, InputCollection inputCollection, flagPair flags); |
274 |
> |
template <class InputCollection> void fill1DHistogram(TH1*, histogram, InputCollection, flagPair, double); |
275 |
> |
template <class InputCollection1, class InputCollection2> void fill1DHistogram(TH1*, histogram, InputCollection1, InputCollection2, flagPair, flagPair, flagPair, double); |
276 |
> |
template <class InputCollection> void fill2DHistogram(TH2*, histogram, InputCollection, flagPair, double); |
277 |
> |
template <class InputCollection1, class InputCollection2> void fill2DHistogram(TH2*, histogram, InputCollection1, InputCollection2, flagPair, flagPair, flagPair, double); |
278 |
> |
bool getPreviousCumulativeFlags(uint currentCutIndex, flagMap &individualFlags, string obj1Type, uint object1, string flagType); |
279 |
> |
|
280 |
|
|
269 |
– |
template <class InputCollection> void assignTreeBranch(BranchSpecs brSpecs, InputCollection inputCollection, vector<bool> flags); |
270 |
– |
template <class InputCollection> void fill1DHistogram(TH1*, histogram, InputCollection, vector<bool>, double); |
271 |
– |
template <class InputCollection1, class InputCollection2> void fill1DHistogram(TH1*, histogram, InputCollection1, InputCollection2, vector<bool>, vector<bool>, vector<bool>, double); |
272 |
– |
template <class InputCollection> void fill2DHistogram(TH2*, histogram, InputCollection, vector<bool>, double); |
273 |
– |
template <class InputCollection1, class InputCollection2> void fill2DHistogram(TH2*, histogram, InputCollection1, InputCollection2, vector<bool>, vector<bool>, vector<bool>, double); |
274 |
– |
bool getPreviousCumulativeFlags(uint currentCutIndex, flagMap &individualFlags, string obj1Type, uint object1); |
281 |
|
|
282 |
|
template <class InputObject> int getGenMatchedParticleIndex(InputObject); |
283 |
|
int getPdgIdBinValue(int); |