113 lines
2.3 KiB
C++
113 lines
2.3 KiB
C++
|
//Renata Kopecna
|
||
|
|
||
|
|
||
|
#ifndef PARSEOPTS_HH
|
||
|
#define PARSEOPTS_HH
|
||
|
|
||
|
//TODO: toys
|
||
|
//TODO: this should probably be a class instead of a struct
|
||
|
|
||
|
//parameters
|
||
|
//b Bin #b
|
||
|
//d Dataset; 0 :data, 1 MC, ...
|
||
|
//g FoldinG
|
||
|
//e number of Events
|
||
|
//i,j general purpose indices
|
||
|
//l get likelihood profiles of final fit?
|
||
|
//p Use P' instead of S
|
||
|
//r Run: 0/1/2/12/21/22
|
||
|
//n number of toys
|
||
|
//o feLdmanCousins
|
||
|
//u Number of bins
|
||
|
//v Verbosity
|
||
|
//y Year: 2011, 2012, 2015, 2016, 2017, 2018
|
||
|
//z Used for testing stuff in case one needs an extra parameter to tune or so
|
||
|
|
||
|
struct basic_params{
|
||
|
int bin;
|
||
|
int dataset;
|
||
|
int folding;
|
||
|
int index;
|
||
|
int jobID;
|
||
|
bool likelyhood;
|
||
|
bool FeldCous;
|
||
|
bool usePprime;
|
||
|
bool reference;
|
||
|
int Run;
|
||
|
int year;
|
||
|
int nEvents;
|
||
|
int nBins;
|
||
|
int verbosity;
|
||
|
int testInt;
|
||
|
int polarity;
|
||
|
|
||
|
basic_params(){
|
||
|
bin = -1;
|
||
|
dataset = -1;
|
||
|
folding = -1;
|
||
|
index = -1;
|
||
|
jobID = -1;
|
||
|
Run = -1;
|
||
|
year = -1;
|
||
|
nEvents = -1;
|
||
|
nBins = -1;
|
||
|
likelyhood = false;
|
||
|
FeldCous = false;
|
||
|
usePprime = false;
|
||
|
reference = false;
|
||
|
verbosity = 2;
|
||
|
testInt = -1;
|
||
|
polarity = 0;
|
||
|
}
|
||
|
};
|
||
|
|
||
|
//Actions
|
||
|
//a angular resolution
|
||
|
//c angular Correction
|
||
|
//f fit:
|
||
|
//0: bkg only (0 signals :) (only ang fit!)
|
||
|
//1: Full fit (2D+4D)
|
||
|
//2: 2D mass fit
|
||
|
//3: MoM
|
||
|
//4: 4D MC fit (B mass+angles in bins of q2)
|
||
|
//5: GenLvlFit
|
||
|
//h Get help
|
||
|
//k convert Events
|
||
|
//m pulls from MC
|
||
|
//s systematics
|
||
|
//t pulls from toys
|
||
|
|
||
|
struct basic_actions{
|
||
|
bool angRes;
|
||
|
bool angCorr; //Use generic index i to set whether it is a scan or not
|
||
|
bool angCorrScan;
|
||
|
bool convert;
|
||
|
int fitType;
|
||
|
bool getHelp;
|
||
|
int systematics;
|
||
|
bool genToys;
|
||
|
bool pullsToys;
|
||
|
bool pullsMC;
|
||
|
bool script;
|
||
|
|
||
|
basic_actions(){
|
||
|
fitType = -1;
|
||
|
systematics = -1;
|
||
|
angCorrScan = false;
|
||
|
angRes = false;
|
||
|
angCorr = false;
|
||
|
convert = false;
|
||
|
getHelp = false;
|
||
|
genToys = false;
|
||
|
pullsToys = false;
|
||
|
pullsMC = false;
|
||
|
script = false;
|
||
|
}
|
||
|
};
|
||
|
|
||
|
|
||
|
int parseOpts(int argc, char *argv[], basic_params &par, basic_actions &act, int nMCEvents);
|
||
|
int checkOpts(basic_params &par, basic_actions &act);
|
||
|
|
||
|
#endif // PARSEOPTS_HH
|