#include "hpiontrackertaskset.h"
#include "hpiontrackercalibrater.h"
#include "hpiontrackerhitf.h"
#include "hpiontrackertrackf.h"
#include "TObjString.h"
#include "TObjArray.h"
using namespace std;
ClassImp(HPionTrackerTaskSet)
HPionTrackerTaskSet::HPionTrackerTaskSet(void) : HTaskSet() {
fSkipEvent = kFALSE;
fUsePionTrackerHit = kTRUE;
fUsePionTrackerTrack = kTRUE;
}
HPionTrackerTaskSet::HPionTrackerTaskSet(const Text_t name[], const Text_t title[])
: HTaskSet(name, title) {
fSkipEvent = kFALSE;
fUsePionTrackerHit = kTRUE;
fUsePionTrackerTrack = kTRUE;
}
HTask* HPionTrackerTaskSet::make(const Char_t *select, const Option_t *option) {
HTaskSet *tasks = new HTaskSet("PionTracker", "List of PionTracker tasks");
TString sel = select;
TString opt = option;
sel.ToLower();
opt.ToLower();
parseArguments(opt);
if (sel.IsNull() || sel.CompareTo("real")==0) {
tasks->add(new HPionTrackerCalibrater("piontracker.cal", "PionTracker cal"));
if (kTRUE == fUsePionTrackerHit) {
tasks->add(new HPionTrackerHitF("piontracker.hitF", "PionTracker hit finder", fSkipEvent));
}
if (kTRUE == fUsePionTrackerTrack) {
tasks->add(new HPionTrackerTrackF("piontracker.trackF", "PionTracker track finder", fSkipEvent));
}
}
return tasks;
}
void HPionTrackerTaskSet::parseArguments(TString s1) {
s1.ToLower();
s1.ReplaceAll(" ", "");
if (0 != s1.Length()) {
TIterator* myiter = NULL;
TObjString* stemp = NULL;
TString argument;
TObjArray* myarguments = s1 .Tokenize(",");
myiter = myarguments->MakeIterator();
myiter->Reset();
while (0 != (stemp = static_cast<TObjString*>(myiter->Next()))) {
argument = stemp->GetString();
if (0 == argument.CompareTo("skipevents")) {
fSkipEvent = kTRUE;
}
if (0 == argument.CompareTo("nopiontrackerhit")) {
fUsePionTrackerHit = kFALSE;
}
if (0 == argument.CompareTo("nopiontrackertrack")) {
fUsePionTrackerTrack = kFALSE;
}
}
delete myiter;
myiter = NULL;
myarguments->Delete();
delete myarguments;
}
}
hpiontrackertaskset.cc:10 hpiontrackertaskset.cc:11 hpiontrackertaskset.cc:12 hpiontrackertaskset.cc:13 hpiontrackertaskset.cc:14 hpiontrackertaskset.cc:15 hpiontrackertaskset.cc:16 hpiontrackertaskset.cc:17 hpiontrackertaskset.cc:18 hpiontrackertaskset.cc:19 hpiontrackertaskset.cc:20 hpiontrackertaskset.cc:21 hpiontrackertaskset.cc:22 hpiontrackertaskset.cc:23 hpiontrackertaskset.cc:24 hpiontrackertaskset.cc:25 hpiontrackertaskset.cc:26 hpiontrackertaskset.cc:27 hpiontrackertaskset.cc:28 hpiontrackertaskset.cc:29 hpiontrackertaskset.cc:30 hpiontrackertaskset.cc:31 hpiontrackertaskset.cc:32 hpiontrackertaskset.cc:33 hpiontrackertaskset.cc:34 hpiontrackertaskset.cc:35 hpiontrackertaskset.cc:36 hpiontrackertaskset.cc:37 hpiontrackertaskset.cc:38 hpiontrackertaskset.cc:39 hpiontrackertaskset.cc:40 hpiontrackertaskset.cc:41 hpiontrackertaskset.cc:42 hpiontrackertaskset.cc:43 hpiontrackertaskset.cc:44 hpiontrackertaskset.cc:45 hpiontrackertaskset.cc:46 hpiontrackertaskset.cc:47 hpiontrackertaskset.cc:48 hpiontrackertaskset.cc:49 hpiontrackertaskset.cc:50 hpiontrackertaskset.cc:51 hpiontrackertaskset.cc:52 hpiontrackertaskset.cc:53 hpiontrackertaskset.cc:54 hpiontrackertaskset.cc:55 hpiontrackertaskset.cc:56 hpiontrackertaskset.cc:57 hpiontrackertaskset.cc:58 hpiontrackertaskset.cc:59 hpiontrackertaskset.cc:60 hpiontrackertaskset.cc:61 hpiontrackertaskset.cc:62 hpiontrackertaskset.cc:63 hpiontrackertaskset.cc:64 hpiontrackertaskset.cc:65 hpiontrackertaskset.cc:66 hpiontrackertaskset.cc:67 hpiontrackertaskset.cc:68 hpiontrackertaskset.cc:69 hpiontrackertaskset.cc:70 hpiontrackertaskset.cc:71 hpiontrackertaskset.cc:72 hpiontrackertaskset.cc:73 hpiontrackertaskset.cc:74 hpiontrackertaskset.cc:75 hpiontrackertaskset.cc:76 hpiontrackertaskset.cc:77 hpiontrackertaskset.cc:78 hpiontrackertaskset.cc:79 hpiontrackertaskset.cc:80 hpiontrackertaskset.cc:81 hpiontrackertaskset.cc:82 hpiontrackertaskset.cc:83 hpiontrackertaskset.cc:84 hpiontrackertaskset.cc:85 hpiontrackertaskset.cc:86 hpiontrackertaskset.cc:87 hpiontrackertaskset.cc:88 hpiontrackertaskset.cc:89 hpiontrackertaskset.cc:90 hpiontrackertaskset.cc:91 hpiontrackertaskset.cc:92 hpiontrackertaskset.cc:93 hpiontrackertaskset.cc:94 hpiontrackertaskset.cc:95 hpiontrackertaskset.cc:96 hpiontrackertaskset.cc:97 hpiontrackertaskset.cc:98