GSI Object Oriented Online Offline (Go4) GO4-6.4.0
Loading...
Searching...
No Matches
TGo4CompositeProcessor.h
Go to the documentation of this file.
1// $Id$
2//-----------------------------------------------------------------------
3// The GSI Online Offline Object Oriented (Go4) Project
4// Experiment Data Processing at EE department, GSI
5//-----------------------------------------------------------------------
6// Copyright (C) 2000- GSI Helmholtzzentrum fuer Schwerionenforschung GmbH
7// Planckstr. 1, 64291 Darmstadt, Germany
8// Contact: http://go4.gsi.de
9//-----------------------------------------------------------------------
10// This software can be used under the license agreements as stated
11// in Go4License.txt file which is part of the distribution.
12//-----------------------------------------------------------------------
13
14#ifndef TGO4COMPOSITEPROCESSOR_H
15#define TGO4COMPOSITEPROCESSOR_H
16
17#include "TGo4EventProcessor.h"
18
19#include "TObjArray.h"
20
21class TGo4MbsEvent;
22class TGo4MbsSubEvent;
24
29 public:
30
32
33 TGo4CompositeProcessor(const char *name);
34
36
37 /* Can be overwritten by subclass, but is not recommended! use ProcessEvent or ProcessSubevent instead*/
38 Bool_t BuildEvent(TGo4EventElement *) override;
39
40 /* implemented by subclass to assign correct event structures*/
41 void InitEvent(TGo4EventElement *) override {}
42
43 /* implemented by subclass to do actual processing. For second step processors!*/
44 void FinalizeEvent() override {}
45
46 /* implemented by subclass to process incoming subevent. For first step processors only! */
47 virtual void ProcessSubevent(TGo4MbsSubEvent *subevt);
48
50 Short_t GetTriggerNumber() const { return fMbsTriggerNumber; }
51
53 Int_t GetEventNumber() const { return fMbsEventNumber; }
54
55 protected:
56
58
62
63 private:
64 TObjArray fSubProcessors;
65
66 ClassDefOverride(TGo4CompositeProcessor,1)
67};
68
69#endif
70
Base type for object composition.
Short_t GetTriggerNumber() const
Returns trigger number of main MBS event.
void FinalizeEvent() override
implemented by subclass to do actual processing.
virtual void ProcessSubevent(TGo4MbsSubEvent *subevt)
Bool_t BuildEvent(TGo4EventElement *) override
Fill the destination event dest.
void InitEvent(TGo4EventElement *) override
implemented by subclass to assign correct event structures
Int_t GetEventNumber() const
Returns event number of main MBS event.
void AddSubProcessor(TGo4EventProcessor *)
Abstract event processor.
TGo4EventProcessor(const char *name)
friend class TGo4EventElement
Wrapper for the standard gsi event structure as delivered from mbs.
Subevent class for gsi mbs data.