Selector to process trees containing Event structures.
#ifndef ProofEventProc_h
#define ProofEventProc_h
public :
Event *event;
EventHeader fEvtHdr;
void InitEvent() { event = 0 ; fEventName = 0; fTracks = 0;
fHighPt = 0; fMuons = 0; fH = 0; fIsValid =
kFALSE; }
ProcFileElements *fProcElem;
void CheckRanges();
ProofEventProc(
TTree *) { InitEvent(); fFullRead =
kTRUE; fTestAbort = -1;
fPtHist = 0; fPzHist = 0; fPxPyHist = 0;
fEntMin = -1; fEntMax = -1; fProcElems = 0; fProcElem = 0;}
ProofEventProc() { InitEvent(); fFullRead =
kTRUE; fTestAbort = -1;
fPtHist = 0; fPzHist = 0; fPxPyHist = 0;
fEntMin = -1; fEntMax = -1; fProcElems = 0; fProcElem = 0;}
virtual ~ProofEventProc() {
if (fProcElems) { fProcElems->SetOwner(
kFALSE);
delete fProcElems;} }
virtual void SetOption(
const char *option) { fOption = option; }
};
#endif
#ifdef ProofEventProc_cxx
{
fEventName=0;
fTracks=0;
fHighPt=0;
fMuons=0;
fH=0;
if (tree == 0) return;
fChain->SetMakeClass(1);
fChain->SetBranchAddress(
"fType[20]",
fType);
fChain->SetBranchAddress("fEventName",fEventName);
fChain->SetBranchAddress("fNtrack",&fNtrack);
fChain->SetBranchAddress("fNseg",&fNseg);
fChain->SetBranchAddress("fNvertex",&fNvertex);
fChain->SetBranchAddress("fFlag",&fFlag);
fChain->SetBranchAddress("fTemperature",&fTemperature);
fChain->SetBranchAddress("fMeasures[10]",fMeasures);
fChain->SetBranchAddress(
"fMatrix[4][4]",
fMatrix);
fChain->SetBranchAddress("fClosestDistance",fClosestDistance);
fChain->SetBranchAddress("fEvtHdr",&fEvtHdr);
fChain->SetBranchAddress("fTracks",&fTracks);
fChain->SetBranchAddress("fHighPt",&fHighPt);
fChain->SetBranchAddress("fMuons",&fMuons);
fChain->SetBranchAddress("fLastTrack",&fLastTrack);
fChain->SetBranchAddress("fWebHistogram",&fWebHistogram);
fChain->SetBranchAddress("fH",&fH);
fChain->SetBranchAddress("fTriggerBits",&fTriggerBits);
fChain->SetBranchAddress("fIsValid",&fIsValid);
}
{
TString fn(fChain->GetCurrentFile()->GetName());
Info(
"Notify",
"processing file: %s", fn.
Data());
if (fProcElem) fProcElem->Add(fEntMin, fEntMax);
fEntMin = -1;
fEntMax = -1;
if (fProcElems) fProcElem = (ProcFileElements *) fProcElems->FindObject(fn);
if (!fProcElem) {
Info(
"Notify",
"assigned new file: create ProcFileElements entry");
fProcElem =
new ProcFileElements(fn.
Data());
if (!fProcElems) fProcElems =
new TList;
if (fProcElems) fProcElems->
Add(fProcElem);
}
b_event_fType = fChain->GetBranch("fType[20]");
b_fEventName = fChain->GetBranch("fEventName");
b_event_fNtrack = fChain->GetBranch("fNtrack");
b_event_fNseg = fChain->GetBranch("fNseg");
b_event_fNvertex = fChain->GetBranch("fNvertex");
b_event_fFlag = fChain->GetBranch("fFlag");
b_event_fTemperature = fChain->GetBranch("fTemperature");
b_event_fMeasures = fChain->GetBranch("fMeasures[10]");
b_event_fMatrix = fChain->GetBranch("fMatrix[4][4]");
b_fClosestDistance = fChain->GetBranch("fClosestDistance");
b_event_fEvtHdr = fChain->GetBranch("fEvtHdr");
b_fTracks = fChain->GetBranch("fTracks");
b_fHighPt = fChain->GetBranch("fHighPt");
b_fMuons = fChain->GetBranch("fMuons");
b_event_fLastTrack = fChain->GetBranch("fLastTrack");
b_event_fWebHistogram = fChain->GetBranch("fWebHistogram");
b_fH = fChain->GetBranch("fH");
b_event_fTriggerBits = fChain->GetBranch("fTriggerBits");
b_event_fIsValid = fChain->GetBranch("fIsValid");
}
#endif // #ifdef ProofEventProc_cxx