36:TNamed(name,
"This is a Go4 analysis step"),
46 GO4TRACE((15,
"TGo4AnalysisStep::TGo4AnalysisStep(const char *, TGo4EventFactory *)",__LINE__, __FILE__));
57:TNamed(
"Default Analysis Step",
"This is a Go4 analysis step"),
66 GO4TRACE((15,
"TGo4AnalysisStep::TGo4AnalysisStep()",__LINE__, __FILE__));
74 GO4TRACE((15,
"TGo4AnalysisStep::~TGo4AnalysisStep()",__LINE__, __FILE__));
86 GO4TRACE((15,
"TGo4AnalysisStep::InitEventClasses()",__LINE__, __FILE__));
99 GO4TRACE((12,
"TGo4AnalysisStep::Process()",__LINE__, __FILE__));
117 input =
fxOwner->GetOutputEvent();
144 GO4TRACE((14,
"TGo4AnalysisStep::Close()",__LINE__, __FILE__));
154 GO4TRACE((14,
"TGo4AnalysisStep::CloseEventStore()",__LINE__, __FILE__));
168 GO4TRACE((14,
"TGo4AnalysisStep::CloseEventSource()",__LINE__, __FILE__));
179 GO4TRACE((14,
"TGo4AnalysisStep::CloseEventProcessor()",__LINE__, __FILE__));
189 GO4TRACE((14,
"TGo4AnalysisStep::DeleteInputEvent()",__LINE__, __FILE__));
199 GO4TRACE((14,
"TGo4AnalysisStep::DeleteOutputEvent()",__LINE__, __FILE__));
209 GO4TRACE((14,
"TGo4AnalysisStep::StoreCalibration()",__LINE__, __FILE__));
248 GO4TRACE((14,
"TGo4AnalysisStep::IsMatchingPrevious(TGo4AnalysisStep *)",__LINE__, __FILE__));
253 if (!prevevent)
return kTRUE;
255 return !strcmp(prevevent->ClassName(),
fxInputEvent->ClassName()) &&
271 GO4TRACE((12,
"TGo4AnalysisStep::NewEventSource(Int_t)",__LINE__, __FILE__));
272 const char *sourcename =
"";
273 if (kind) sourcename = kind->GetName();
280 if(kind && kind->InheritsFrom(
"TGo4TreeSourceParameter")) {
281 SetStatusMessage(
"Did not init TGo4TreeSource, please use TGo4FileSource instead !");
286 const char *evstorename=
fxPrevious->GetEventStoreName();
287 if(evstorename && !strcmp(evstorename, sourcename) &&
fxPrevious->IsStoreEnabled()) {
289 GetName(), sourcename);
324 GO4TRACE((12,
"TGo4AnalysisStep::NewEventStore(Int_t)",__LINE__, __FILE__));
330 if(kind && kind->InheritsFrom(
"TGo4TreeStoreParameter"))
332 SetStatusMessage(
"! Did not init TGo4TreeStore, please use TGo4FileStore instead !");
360 GO4TRACE((12,
"TGo4AnalysisStep::NewEventProcessor(Int_t)",__LINE__, __FILE__));
382 GO4TRACE((11,
"TGo4AnalysisStep::CreateStatus()",__LINE__, __FILE__));
407 GO4TRACE((12,
"TGo4AnalysisStep::NewInputEvent()",__LINE__, __FILE__));
423 GO4TRACE((12,
"TGo4AnalysisStep::NewOutputEvent()",__LINE__, __FILE__));
440 GO4TRACE((11,
"TGo4AnalysisStep::SetStatus(TGo4AnalysisStepStatus*)",__LINE__, __FILE__));
Status object of one analysis step.
void SetErrorStopEnabled(Bool_t on=kTRUE)
Enables or disables the stop-on-error mode.
void SetProcessStatus(Int_t val)
Sets status value of processor, user defined.
void SetSourceEnabled(Bool_t on=kTRUE)
Enables or disables the event source.
void SetErrorStopped(Bool_t on)
Enables or disables the stop-on-error mode.
TGo4EventSourceParameter * GetSourcePar() const
Returns the event source parameter which was put into this status object.
Bool_t IsProcessEnabled() const
TGo4EventProcessorParameter * GetProcessorPar() const
Returns the event processor parameter which was put into this status object.
Bool_t IsSourceEnabled() const
Bool_t IsErrorStopEnabled() const
True if analysis step shall stop on error.
void SetStorePar(TGo4EventStoreParameter *kind)
Sets the event store parameter which is used on intitialization of this step.
Bool_t IsStoreEnabled() const
void SetProcessorPar(TGo4EventProcessorParameter *kind)
Sets the event processor parameter which is used on intitialization of this step.
TGo4EventStoreParameter * GetStorePar() const
Returns the event store parameter which was put into this status object.
void SetStoreEnabled(Bool_t on=kTRUE)
Enables or disables the event store.
void SetProcessEnabled(Bool_t on=kTRUE)
Enables or disables the event processing.
void SetSourcePar(TGo4EventSourceParameter *kind)
Sets the event source parameter which is used on intitialization of this step.
void SetErrorStopEnabled(Bool_t on)
Enables or disables the stop-on-error mode.
void NewInputEvent()
create input event object
Bool_t fbErrorStopEnabled
Operation mode switch.
void SetStatusMessage(const char *txt)
Set Status message of last Process() call.
Int_t Store(TGo4Parameter *cali)
Saves a parameter correlated with the current event into the storage.
void SetProcessEnabled(Bool_t on=kTRUE)
Enables or disables the event processing.
TGo4EventElement * fxOutputEvent
The unpacked event (detector) structure that has been filled by the analysis step .
void SetStoreEnabled(Bool_t on=kTRUE)
Enables or disables the event store.
void Close()
Closes the analysis step.
TGo4Analysis * fxOwner
Points back to the analysis which keeps this step.
void StoreCalibration()
Store the current calibration object of the event processor into the event store instance.
virtual void InitEventClasses()
Initialization of the event class plugins which are delivered from the user defined event factory.
TGo4EventStore * fxEventStore
The storage instance for the unpacked events (detector) structures.
virtual ~TGo4AnalysisStep()
Bool_t fbSourceImplemented
Flag for the previous analysis step.
void DeleteOutputEvent()
Delete input event object.
Bool_t fbProcessEnabled
Enables processing of the input event.
void NewEventProcessor(TGo4EventProcessorParameter *kind)
For lazy initialization of event processor.
void NewEventSource(TGo4EventSourceParameter *kind)
For lazy initialization of event source.
void CloseEventStore()
Unregister and close eventstore, if existing.
void DeleteInputEvent()
Delete input event object.
TGo4AnalysisStepStatus * CreateStatus()
Create a copy of the analysis step internal state.
void SetEventProcessor(TGo4EventProcessorParameter *kind)
Sets the event processor parameter which is used on initialization of this step.
TGo4EventElement * fxInputEvent
points to the last input event delivered from the event source 1 aggregation
void CloseEventProcessor()
Unregister and close eventprocessor, if existing.
TGo4EventStoreParameter * fxStoreType
Parameter object of next event storage to be activated.
Bool_t IsProcessEnabled() const
void Process()
The main analysis action which is invoked by the external go4 analysis.
Bool_t IsEventStoreParam() const
Return kTRUE, if event store parameter specified.
void CloseEventSource()
Unregister and close eventsource, if existing.
Int_t fiProcessStatus
Contains current analysis step status value.
void NewOutputEvent()
create input event object
TGo4EventProcessor * fxEventProcessor
The processing class which works on the input event and fills the output event.
TGo4EventProcessorParameter * fxProcessorType
Parameter object of next event processor to be activated.
TGo4AnalysisStep * fxPrevious
Points to the previous analysis step.
void SetEventSource(TGo4EventSourceParameter *kind)
Sets the event source parameter which is used on initialization of this step.
const char * GetEventStoreName() const
Access to name of currently active event store.
void SetStatus(TGo4AnalysisStepStatus *state)
Set all analysis step parameters to that of given status object.
TGo4EventSourceParameter * fxSourceType
Parameter object of next event source to be activated.
const char * GetEventSourceName() const
Access to name of currently active event source.
Bool_t fbSourceEnabled
Enables event source.If true, the event source is used to get the input event; otherwise we use the o...
Bool_t IsEventSourceParam() const
Return kTRUE, if event source parameter specified.
void NewEventStore(TGo4EventStoreParameter *kind)
For lazy initialization of event store.
Bool_t fbErrorStopped
True if the analysis step has been stopped after input error.
Bool_t fbStoreEnabled
Enables event store.
Bool_t IsMatchingPrevious() const
Check if an analysis step is matching as a previous step to this step.
TGo4EventFactory * fxEventFactory
The abstract factory implementation which provides the event classes.
void SetSourceEnabled(Bool_t on=kTRUE)
Enables or disables the event source.
void SetEventStore(TGo4EventStoreParameter *kind)
Sets the event store parameter which is used on initialization of this step.
TGo4AnalysisStep()
default ctor for streamer.
Bool_t fbStoreImplemented
Flag for the subsequent analysis step.
TGo4EventSource * fxEventSource
The source of the input events.
static TGo4Analysis * Instance()
return analysis instance
void Message(Int_t prio, const char *text,...)
Display a user message.
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 factory for the event related classes.
Basic type for all classes containing information to parametrize the event processor.
Basic type for all classes containing information to parameterize the event source.
Basic type for all classes containing information to parametrize the event store.
Central class of Go4Fit package.
Base class for all parameter aggregations, e.g.