fEscapedName(name),
fDatimeString(""),
fOptions(),
- fHelper(0)
+ fHelper(0),
+ fMonitored("")
{
fOptions.Add("help", "Show help", false);
fOptions.Add("date", "YYYY-MM-DD HH:MM", "Set date", "now");
fEscapedName(o.fEscapedName),
fDatimeString(o.fDatimeString),
fOptions(o.fOptions),
- fHelper(o.fHelper)
+ fHelper(o.fHelper),
+ fMonitored(o.fMonitored)
{}
/**
* Assignment operator
fDatimeString = o.fDatimeString;
fOptions = o.fOptions;
fHelper = o.fHelper;
+ fMonitored = o.fMonitored;
return *this;
}
// --- Create tasks ----------------------------------------------
CreateTasks(mgr);
+ // --- Create monitor objects ------------------------------------
+ CreateMonitors();
+
// --- Post set-up initialization of helper ----------------------
if (!fHelper->PostSetup()) return false;
virtual const Char_t* ClassName() const = 0;
/* @} */
//__________________________________________________________________
+ virtual void AddMonitor(const TString& name)
+ {
+ if (!fMonitored.IsNull()) fMonitored.Append(":");
+ fMonitored.Append(name);
+ }
+ virtual void CreateMonitors()
+ {
+ if (fMonitored.IsNull()) return;
+ if (fHelper->Mode() != Helper::kProof) return;
+
+ TObjArray* tokens = fMonitored.Tokenize(":");
+ TObject* token = 0;
+ TIter next(tokens);
+ while ((token = next())) {
+ gROOT->ProcessLine(Form("gProof->AddFeedback(\"%s\");",
+ token->GetName()));
+
+ }
+ tokens->Delete();
+ }
+ //__________________________________________________________________
/**
* @{
* @name Utility functions
TString fDatimeString;
OptionList fOptions;
Helper* fHelper;
+ TString fMonitored;
};
#endif