• Main Page
  • Related Pages
  • Namespaces
  • Data Structures
  • Files
  • File List
  • Globals

beamtime/cosy-jan12/go4/TCosyJan12Analysis.cxx (r4864/r3159)

Go to the documentation of this file.
00001 
00002 
00003 #include "TCosyJan12Analysis.h"
00004 
00005 #include <stdlib.h>
00006 #include "TGo4Version.h"
00007 #if __GO4BUILDVERSION__ > 40502
00008 #include "go4iostream.h"
00009 #else
00010 #include "Riostream.h"
00011 #endif
00012 
00013 #include "Go4EventServer.h"
00014 #include "TGo4StepFactory.h"
00015 #include "TGo4AnalysisStep.h"
00016 #include "TGo4Version.h"
00017 
00018 //***********************************************************
00019 TCosyJan12Analysis::TCosyJan12Analysis()
00020 {
00021 }
00022 //***********************************************************
00023 
00024 // this constructor is called by go4analysis executable
00025 TCosyJan12Analysis::TCosyJan12Analysis(int argc, char** argv) :
00026    TGo4Analysis(argc, argv)
00027 {
00028    cout << "**** Create TCosyJan12Analysis name: " << argv[0] << endl;
00029 
00030    if (!TGo4Version::CheckVersion(__GO4BUILDVERSION__)) {
00031       cout << "****  Go4 version mismatch" << endl;
00032       exit(-1);
00033    }
00034 
00035    TGo4StepFactory* factory = new TGo4StepFactory("Factory");
00036    factory->DefEventProcessor("CosyJan12UnpackProc","TCosyJan12UnpackProc");// object name, class name
00037    factory->DefOutputEvent("CosyJan12UnpackEvent","TCosyJan12UnpackEvent"); // object name, class name
00038 
00039    Text_t lmdfile[512]; // source file
00040    sprintf(lmdfile,"%s/data/test.lmd",getenv("GO4SYS"));
00041    TGo4EventSourceParameter* sourcepar = new TGo4MbsFileParameter(lmdfile);
00042 
00043    TGo4FileStoreParameter* storepar = new TGo4FileStoreParameter(Form("%sOutput", argv[0]));
00044    storepar->SetOverwriteMode(kTRUE);
00045 
00046    TGo4AnalysisStep* step = new TGo4AnalysisStep("Unpack", factory, sourcepar, storepar);
00047 
00048    step->SetSourceEnabled(kTRUE);
00049    step->SetStoreEnabled(kFALSE);
00050    step->SetProcessEnabled(kTRUE);
00051    step->SetErrorStopEnabled(kTRUE);
00052 
00053    // Now the first analysis step is set up.
00054    // Other steps could be created here
00055    AddAnalysisStep(step);
00056 
00057 
00058    TGo4StepFactory* factory2 = new TGo4StepFactory("Factory2");
00059    factory2->DefEventProcessor("CosyJan12DetectorProc","TCosyJan12DetectorProc");// object name, class name
00060    factory2->DefInputEvent("CosyJan12UnpackEvent","TCosyJan12UnpackEvent"); // object name, class name 
00061    factory2->DefOutputEvent("CosyJan12DetectorEvent","TCosyJan12DetectorEvent"); // object name, class name
00062 
00063 
00064    TGo4AnalysisStep* step2 = new TGo4AnalysisStep("Detector", factory2, 0, 0);
00065 
00066    step2->SetSourceEnabled(kFALSE);
00067    step2->SetStoreEnabled(kFALSE);
00068    step2->SetProcessEnabled(kTRUE);
00069    step2->SetErrorStopEnabled(kTRUE);
00070 
00071    AddAnalysisStep(step2);
00072 
00073 
00074    TGo4StepFactory* factory3 = new TGo4StepFactory("Factory3");
00075      factory3->DefEventProcessor("CosyJan12FinalProc","TCosyJan12FinalProc");// object name, class name
00076      factory3->DefInputEvent("CosyJan12DetectorEvent","TCosyJan12DetectorEvent"); // object name, class name
00077      factory3->DefOutputEvent("CosyJan12FinalEvent","TCosyJan12FinalEvent"); // object name, class name
00078 
00079 
00080      TGo4AnalysisStep* step3 = new TGo4AnalysisStep("Final", factory3, 0, 0);
00081 
00082      step3->SetSourceEnabled(kFALSE);
00083      step3->SetStoreEnabled(kFALSE);
00084      step3->SetProcessEnabled(kTRUE);
00085      step3->SetErrorStopEnabled(kTRUE);
00086 
00087      AddAnalysisStep(step3);
00088 
00089    // uncomment following line to define custom passwords for analysis server
00090    // DefineServerPasswords("CosyJan12admin", "CosyJan12ctrl", "CosyJan12view");
00091 
00092 }
00093 
00094 //***********************************************************
00095 TCosyJan12Analysis::~TCosyJan12Analysis()
00096 {
00097    cout << "**** TCosyJan12Analysis: Delete instance" << endl;
00098 }
00099 

Generated on Tue Dec 10 2013 04:52:18 for ROCsoft by  doxygen 1.7.1