14#ifndef TGO4EVENTPROCESSOR_H
15#define TGO4EVENTPROCESSOR_H
45#ifndef TGo4EllipseCond
46#define TGo4EllipseCond TGo4ShapedCond
123 Bool_t
AddObject(TNamed *anything,
const char *subfolder =
nullptr);
127 Bool_t
AddHistogram(TH1 *his,
const char *subfolder =
nullptr, Bool_t replace = kTRUE);
143 Bool_t
AddCanvas(TCanvas *can,
const char *subfolder =
nullptr);
167 TNamed *
GetObject(
const char *name,
const char *folder =
nullptr);
213 void Message(Int_t prio,
const char *text, ...)
214 #if defined(__GNUC__) && !defined(__CLING__)
215 __attribute__((format(printf, 3, 4)))
227 void Clear(Option_t *opt =
"")
override;
253 TH1 *
MakeTH1(
char type,
const char *fullname,
const char *title,
254 Int_t nbinsx, Double_t xlow, Double_t xup,
255 const char *xtitle =
nullptr,
const char *ytitle =
nullptr);
278 TH2 *
MakeTH2(
char type,
const char *fullname,
const char *title,
279 Int_t nbinsx, Double_t xlow, Double_t xup,
280 Int_t nbinsy, Double_t ylow, Double_t yup,
281 const char *xtitle =
nullptr,
const char *ytitle =
nullptr,
const char *ztitle =
nullptr);
287 TGraph *
MakeGraph(
const char *fullname,
const char *title, Int_t points = 0, Double_t *xvalues =
nullptr,
288 Double_t *yvalues =
nullptr);
293 TGraph *
MakeGraph(
const char *fullname,
const char *title, TF1 *function);
307 Double_t xmin, Double_t xmax,
308 const char *HistoName =
nullptr);
318 Double_t xmin, Double_t xmax,
319 Double_t ymin, Double_t ymax,
320 const char *HistoName =
nullptr);
332 Double_t (*points) [2],
333 const char *HistoName =
nullptr);
346 Double_t cx, Double_t cy, Double_t a1, Double_t a2, Double_t theta = 0,
347 const char *HistoName =
nullptr);
357 Int_t npoints, Double_t cx, Double_t cy, Double_t r,
358 const char *HistoName =
nullptr);
369 const char *HistoName =
nullptr);
385 Double_t (*points) [2],
386 const char *HistoName =
nullptr);
395 TGo4ListCond *
MakeListCond(
const char *fullname,
const Int_t num,
const Int_t * values,
const char *HistoName =
nullptr);
404 TGo4ListCond *
MakeListCond(
const char *fullname,
const Int_t start,
const Int_t stop,
const Int_t step = 1,
const char *HistoName =
nullptr);
425 const char *classname,
426 const char *newcmd =
nullptr);
435 Long64_t
ExecutePython(
const char *macro_name, Int_t *errcode =
nullptr);
442 Long64_t
ExecuteLine(
const char *command, Int_t *errcode =
nullptr);
Data object for calibration of the input event.
The abstract base class for the data elements of which the unpacked events (or detector structure dat...
Abstract event processor.
virtual void UserPreLoop()
Method called when analysis is created.
Bool_t AddPicture(TGo4Picture *pic, const char *subfolder=nullptr)
Register picture to go4 framework.
void SetKeepInputEvent(Bool_t val=kTRUE)
Mark current input event for reprocessing in next cycle.
Bool_t AddCanvas(TCanvas *can, const char *subfolder=nullptr)
Register TCanvas to go4 framework.
TH1 * MakeTH1(char type, const char *fullname, const char *title, Int_t nbinsx, Double_t xlow, Double_t xup, const char *xtitle=nullptr, const char *ytitle=nullptr)
Create one dimensional histogram of specified type.
Bool_t IsKeepOutputEvent() const
Is marked to keep output event.
TGo4Picture * GetPicture(const char *name)
Get picture from go4 framework.
void SetCalibration(TGo4EventCalibration *cali)
Sets reference to external raw event which is used by the concrete processor to unpack the interestin...
Bool_t fbKeepOutputEvent
flag to steer continue filling of same output event
TGo4RollingGraph * MakeRollingGraph(const char *fullname, const char *title, Int_t points=0, Int_t average=1)
Create a go4 rolling graph (generic trending plot) with properties points and average.
TGo4Parameter * GetParameter(const char *name, const char *par_class=nullptr)
Get parameter from go4 framework.
void SendObjectToGUI(TNamed *ob)
Send any object as copy to gui.
virtual Bool_t CheckCalibration(const char *classname)
Check if calibration class is valid.
TNamed * GetObject(const char *name, const char *folder=nullptr)
Get any object from go4 framework.
Bool_t fbKeepInputEvent
flag to steer re-processing of same input event
TH2 * MakeTH2(char type, const char *fullname, const char *title, Int_t nbinsx, Double_t xlow, Double_t xup, Int_t nbinsy, Double_t ylow, Double_t yup, const char *xtitle=nullptr, const char *ytitle=nullptr, const char *ztitle=nullptr)
Create two dimensional histogram of specified type.
TGo4ShapedCond * MakeCircleCond(const char *fullname, Int_t npoints, Double_t cx, Double_t cy, Double_t r, const char *HistoName=nullptr)
Create circular shaped polygon condition.
void Clear(Option_t *opt="") override
TGo4EventCalibration * GetCalibration() const
Access to external calibration object.
virtual void InitEvent(TGo4EventElement *)
implemented by subclass to assign correct event structures
Long64_t ExecutePython(const char *macro_name, Int_t *errcode=nullptr)
Executes Python script in ROOT interpreter.
void SetKeepOutputEvent(Bool_t val=kTRUE)
Mark current input event for reprocessing in next cycle.
virtual Bool_t CheckInputEvent(const char *classname)
Check if input event is valid.
TGo4Parameter * MakeParameter(const char *fullname, const char *classname, const char *newcmd=nullptr)
Create parameter of specified class,.
TGo4WinCond * MakeWinCond(const char *fullname, Double_t xmin, Double_t xmax, const char *HistoName=nullptr)
Create 1D window condition.
Bool_t AddAnalysisCondition(TGo4Condition *con, const char *subfolder=nullptr)
Register condition to go4 framework.
TCanvas * GetCanvas(const char *name)
Get TCanvas from go4 framework.
Bool_t AddHistogram(TH1 *his, const char *subfolder=nullptr, Bool_t replace=kTRUE)
Register histogram to go4 framework.
TGo4EventElement * fxInputEvent
1
void Message(Int_t prio, const char *text,...)
Display a user message.
void SetInputEvent(TGo4EventElement *raw)
Sets reference to external raw event which is used by the concrete processor to unpack the interestin...
Bool_t AddObject(TNamed *anything, const char *subfolder=nullptr)
Register user object to go4 framework.
TGo4ListCond * MakeListCond(const char *fullname, const Int_t num, const Int_t *values, const char *HistoName=nullptr)
Create "whitlelist" condition with separate values to test against condition is true if any of the va...
virtual ~TGo4EventProcessor()
Bool_t RemovePicture(const char *name)
UnRegister picture from go4 framework and delete it.
TGo4ShapedCond * MakeEllipseCond(const char *fullname, Int_t npoints, Double_t cx, Double_t cy, Double_t a1, Double_t a2, Double_t theta=0, const char *HistoName=nullptr)
Create ellipse shaped polygon condition.
virtual void UserPostLoop()
Method called when analysis is stopping.
TGo4EventProcessor(const char *name)
Bool_t IsKeepInputEvent() const
Is marked to keep input event.
Long64_t ExecuteScript(const char *script_name)
Executes ROOT script.
Long64_t ExecuteLine(const char *command, Int_t *errcode=nullptr)
Process ROOT command line.
TGo4EventCalibration * fxCalibration
aggregation
virtual void FinalizeEvent()
implemented by subclass to do actual processing.
Bool_t RemoveParameter(const char *name)
UnRegister parameter from go4 framework and delete it.
void SetMakeWithAutosave(Bool_t on=kTRUE)
Set flag to use data from autosave file in Make... methods (default true)
TGo4EventElement * GetOutputEvent(const char *stepname)
Returns the output event structure of analysis step.
Bool_t IsObjMade() const
Returns kTRUE if object in last Make... call was created, kFALSE when object was retrieved from autos...
TGo4ShapedCond * MakeFreeShapeCond(const char *fullname, Int_t npoints, Double_t(*points)[2], const char *HistoName=nullptr)
Create free shaped (polygon) condition.
Bool_t RemoveAnalysisCondition(const char *name)
UnRegister condition from go4 framework and delete it.
Bool_t RemoveCanvas(const char *name)
UnRegister canvas from go4 framework and delete it.
TGo4EventElement * GetInputEvent()
Access to external raw event which is set as association member.
TGo4PolyCond * MakePolyCond(const char *fullname, Int_t npoints, Double_t(*points)[2], const char *HistoName=nullptr)
Create polygon condition.
TGo4ShapedCond * MakeBoxCond(const char *fullname, Double_t cx, Double_t cy, Double_t a1, Double_t a2, Double_t theta, const char *HistoName=nullptr)
Create tilted rectangular box shaped polygon condition.
Bool_t RemoveHistogram(const char *name)
UnRegister histogram from go4 framework and delete it.
TH1 * GetHistogram(const char *name)
Get histogram from go4 framework.
Bool_t AddParameter(TGo4Parameter *par, const char *subfolder=nullptr)
Register parameter to go4 framework.
friend class TGo4EventElement
TGo4Condition * GetAnalysisCondition(const char *name, const char *cond_cl=nullptr)
Get condition from go4 framework.
Condition that checks a value against a list of "good" (or bad) values.
Wrapper for the standard gsi event structure as delivered from mbs.
Base class for all parameter aggregations, e.g.
Picture cconfiguration in Go4.
Graphs that renew themselves iteratively to monitor a value.