19 std::ifstream *
input=
new ifstream(filename.c_str(),
ios::in | ios::binary);
22 throw cms::Exception(
"NtplNotFound",
"NtupleROOTFile: Ntpl not found")
23 <<
"File " << filename <<
" could not be opened.\n";
29 file =
new TFile(filename.c_str(),
"READ");
32 if (tree !=
NULL)
id = 101;
34 tree = (TTree*)
file->Get(
"h100");
35 if (tree !=
NULL)
id = 100;
42 tree = (TTree*)
file->Get(
"h101");
45 "NtupleROOTFile: Ntpl seems not to be a valid ")
46 <<
"File " << filename <<
" could not be opened.\n";
48 tree->SetBranchAddress(
"Jsmhep",Jsmhep);
49 tree->SetBranchAddress(
"Jsdhep",Jsdhep);
52 tree = (TTree*)
file->Get(
"h100");
55 "NtupleROOTFile: Ntpl seems not to be a valid ")
56 <<
"File; " << filename <<
" could not be opened.\n";
58 tree->SetBranchAddress(
"Jmohep",Jmohep);
59 tree->SetBranchAddress(
"Jdahep",Jdahep);
60 tree->SetBranchAddress(
"Isthep",Isthep);
66 throw cms::Exception(
"NtplNotValid",
"NtupleROOTFile: Ntpl not valid")
67 <<
"File " << filename <<
" could not be opened.\n";
71 tree->SetBranchAddress(
"Nhep",&Nhep);
72 tree->SetBranchAddress(
"Nevhep",&Nevhep);
73 tree->SetBranchAddress(
"Phep",Phep);
74 tree->SetBranchAddress(
"Vhep",Vhep);
75 tree->SetBranchAddress(
"Idhep",Idhep);
86 tree->GetEntry(event);
96 return tree->GetEntries();
112 cout<<
"NtupleROOTFile::getJsmhep: ERROR: "
113 <<
"only available for ID 101 ntuples"<<endl;
123 cout<<
"NtupleROOTFile::getJsdhep: ERROR: "
124 <<
"only available for ID 101 ntuples"<<endl;
134 int jsm= this->getJsmhep(j);
135 int jsd= this->getJsdhep(j);
137 int idj=jsm/16000000;
138 int idk=jsd/16000000;
150 int jsm= this->getJsmhep(j);
153 int mo1 = (jsm%16000000)/4000;
156 if (idx==0)
return mo1;
158 if (idx==1)
return mo2;
160 return Jmohep[j-1][idx];
166 int jsd= this->getJsdhep(j);
169 int da1 = (jsd%16000000)/4000;
172 if (idx==0)
return da1;
174 if (idx==1)
return da2;
176 return Jdahep[j-1][idx];
181 return Phep[j-1][idx];
186 return Vhep[j-1][idx];
191 return (
int)tree->GetEntries();
virtual int getNevhep() const
virtual int getJsdhep(int j) const
virtual int getJsmhep(int j) const
virtual ~NtupleROOTFile()
static unsigned int getId(void)
virtual int getJdahep(int j, int idx) const
virtual double getVhep(int j, int idx) const
virtual int getIsthep(int j) const
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger but the state exists so we define the behavior If all triggers are the negative crieriion will lead to accepting the event(this again matches the behavior of"!*"before the partial wildcard feature was incorporated).The per-event"cost"of each negative criterion with multiple relevant triggers is about the same as!*was in the past
virtual int getEntries() const
virtual void setEvent(int event) const
virtual int getNhep() const
virtual int getIdhep(int j) const
virtual double getPhep(int j, int idx) const
virtual int getJmohep(int j, int idx) const