//--------------------------------------------- // Go4 Tasca analysis // Author: Hans G. Essel // H.Essel@gsi.de // GSI, Experiment Electronics, Data Processing // modified by r.maendl // July 2021 - cleanup by JAM (j.adamczewski@gsi.de) //--------------------------------------------- #include "TascaAnalysis.h" #include "Riostream.h" #include "TGo4StepFactory.h" #include "TGo4AnalysisStep.h" #include "TascaAnalysis.h" #include "TGo4Version.h" //*********************************************************** TascaAnalysis::TascaAnalysis() { //cout << "Tasca> TascaAnalysis: Create" << endl; } // this constructor is called by go4analysis executable // added to use without MainUserAnalysis JAM 15-jun-2020 TascaAnalysis::TascaAnalysis(int argc, char** argv) : TGo4Analysis(argc, argv) { if (!TGo4Version::CheckVersion(__GO4BUILDVERSION__)) { TGo4Log::Error("Go4 version mismatch"); exit(-1); } TGo4StepFactory* unpackfactory = new TGo4StepFactory("UnpackFact"); unpackfactory->DefEventProcessor("Unpack", "TascaUnpackProc"); // object name, class name unpackfactory->DefOutputEvent("Unpacked", "TascaUnpackEvent"); // object name, class name TGo4AnalysisStep* unpackstep = new TGo4AnalysisStep("Unpack", unpackfactory, 0, 0, 0); AddAnalysisStep(unpackstep); // unpackstep->SetEventSource(new TGo4MbsFileParameter(serv)); unpackstep->SetSourceEnabled(kTRUE); unpackstep->SetStoreEnabled(kFALSE); unpackstep->SetProcessEnabled(kTRUE); TGo4StepFactory* califactory = new TGo4StepFactory("CaliFact"); califactory->DefEventProcessor("Calibration", "TascaCaliProc"); // object name, class name califactory->DefInputEvent("Unpacked", "TascaUnpackEvent"); // object name, class name califactory->DefOutputEvent("Calibrated", "TascaCaliEvent"); // object name, class name TGo4AnalysisStep* calistep = new TGo4AnalysisStep("Calibration", califactory, 0, 0, 0); AddAnalysisStep(calistep); calistep->SetSourceEnabled(kFALSE); calistep->SetStoreEnabled(kFALSE); calistep->SetProcessEnabled(kTRUE); TGo4StepFactory* analysisfactory = new TGo4StepFactory("AnalysisFact"); analysisfactory->DefEventProcessor("Analysis", "TascaAnlProc"); // object name, class name analysisfactory->DefInputEvent("Calibrated", "TascaCaliEvent"); // object name, class name analysisfactory->DefOutputEvent("Analyzed", "TascaAnlEvent"); // object name, class name TGo4AnalysisStep* analysisstep = new TGo4AnalysisStep("Analysis", analysisfactory, 0, 0, 0); AddAnalysisStep(analysisstep); analysisstep->SetSourceEnabled(kFALSE); analysisstep->SetStoreEnabled(kFALSE); analysisstep->SetProcessEnabled(kTRUE); } //*********************************************************** TascaAnalysis::~TascaAnalysis() { // cout << "Tasca> TascaAnalysis: Delete" << endl; } //*********************************************************** // JAM2021- following functions are optional ////----------------------------------------------------------- //Int_t TascaAnalysis::UserPreLoop() //{ // cout << "Tasca> TascaAnalysis: PreLoop" << endl; // // return 0; //} ////----------------------------------------------------------- //Int_t TascaAnalysis::UserPostLoop() //{ // cout << "Tasca> TascaAnalysis: PostLoop" << endl; // return 0; //} // ////----------------------------------------------------------- //Int_t TascaAnalysis::UserEventFunc() //{ ////// This function is called once for each event. // return 0; //}