using namespace std; #include "hrichtaskset.h" #include "htask.h" #include "htaskset.h" #include "hdebug.h" #include #include #include "haddef.h" #include "hades.h" #include "hrichanalysis.h" #include "hrichanalysissim.h" #include "hrichdigitizer.h" #include "hrichparticleidentifier.h" #include #include #include #include #include //*-- Author : Dan Magestro //*-- Modified: 19/11/2001 by D. Magestro //_HADES_CLASS_DESCRIPTION /////////////////////////////////////////////////////////////////////////////// // HRichTaskSet // // This HTaskSet contains the tasks for the Rich detector // // BEGIN_HTMLFor more information, see this analysis logbook entry. END_HTML // /////////////////////////////////////////////////////////////////////////////// Bool_t HRichTaskSet::inoiseOn=kFALSE; Bool_t HRichTaskSet::iSkipEvent=kFALSE; HRichTaskSet::HRichTaskSet(Text_t name[],Text_t title[]) : HTaskSet(name,title) { // Constructor } HRichTaskSet::HRichTaskSet(void) : HTaskSet() { // Default constructor } HRichTaskSet::~HRichTaskSet(void) { // Destructor. } HTask* HRichTaskSet::make(const char *select, Option_t *option) { // Returns a pointer to the Rich task or taskset specified by 'select' HTaskSet *tasks = new HTaskSet("Rich","List of Rich tasks"); TString simulation="simulation"; TString real ="real"; TString sel=select; sel.ToLower(); if(sel.CompareTo(simulation)==0&&gHades->getEmbeddingMode()!=0) { cout<<"Error:HRichTaskSet::make() , embeddingMode > 0 in simulation NOT ALLOWED!"<getEmbeddingMode()==0){ tasks->add(new HRichDigitizer("rich.digi","Rich digitizer",inoiseOn)); tasks->add(new HRichAnalysisSim("rich.ana","Ring finder",iSkipEvent)); } if( sel.CompareTo(real)==0&&gHades->getEmbeddingMode()==0) { tasks->add(new HRichAnalysis("rich.ana","Ring finder",iSkipEvent)); tasks->add(new HRichParticleIdentifier("rich.id","Rich PID")); } if( sel.CompareTo(real)==0&&gHades->getEmbeddingMode()!=0) { inoiseOn = kFALSE; tasks->add(new HRichDigitizer("rich.digi","Rich digitizer",inoiseOn)); tasks->add(new HRichAnalysisSim("rich.ana","Ring finder",iSkipEvent)); tasks->add(new HRichParticleIdentifier("rich.id","Rich PID")); } return tasks; } void HRichTaskSet::parseArguments(TString s1) { TString skipEvent="skipEvent"; TString noiseOn="noiseon"; TString s2=s1; s1.ToLower(); cout<Next())!= 0) { argument=stemp->GetString(); if(argument.CompareTo(skipEvent)==0){ iSkipEvent = kTRUE; } else if(argument.CompareTo(noiseOn)==0){ inoiseOn = kTRUE; } } } } ClassImp(HRichTaskSet)