Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

TGo4EventElement Class Reference

The abstract base class for the data elements of which the unpacked events (or detector structure data, resp) are composed. More...

#include <TGo4EventElement.h>

Inheritance diagram for TGo4EventElement:

TGo4ClonesElement TGo4CompositeEvent TGo4MbsEvent TGo4MbsSubEvent TGo4SimpleEvent TGo4SimpleSubEvent TMeshB12OutputEvent TMeshB1InputEvent TMeshB1OutputEvent TMeshB2InputEvent TMeshB2OutputEvent TMeshB3InputEvent TMeshB3OutputEvent TMeshDummyEvent TMeshFinalEvent TMeshRawEvent TXXXAnlEvent TXXXEvent TXXXEvent TXXXUnpackEvent TYYYRawEvent TYYYUnpackEvent List of all members.

Public Methods

 TGo4EventElement (void)
 TGo4EventElement (const char *name)
 TGo4EventElement (const char *aName, const char *aTitle, Short_t aBaseCat=0)
virtual ~TGo4EventElement (void)
void SetValid (Bool_t on)
 Switches the valid state of this event. More...

Bool_t IsValid () const
 Returns the valid state of this event. More...

void SetEventSource (TGo4EventSource *src)
 Setter for the event source that is currently used by the Fill method. More...

void SetParent (TGo4EventElement *par)
 Setter for the parent event structure reference. More...

TGo4EventElement * GetParent () const
TGo4EventSourceGetEventSource () const
Bool_t CheckEventSource (const char *classname)
 Check if event source is valid. More...

virtual Char_t GetDataChar (TGo4EventDataIndex *index)
 Get char (1 byte) data value by user specified index. More...

virtual Short_t GetDataShort (TGo4EventDataIndex *index)
 Get short (2 byte) data value by user specified index. More...

virtual Int_t GetDataInt (TGo4EventDataIndex *index)
 Get integer (4 byte) data value by user specified index. More...

virtual Long_t GetDataLong (TGo4EventDataIndex *index)
 Get long (4 or 8 bytes) integer data value by user specified index. More...

virtual Float_t GetDataFloat (TGo4EventDataIndex *index)
 Get float data value by user specified index. More...

virtual Double_t GetDataDouble (TGo4EventDataIndex *index)
 Get double data value by user specified index. More...

virtual Int_t Fill ()
 Method called by the event owner (analysis step) to fill the event element from the set event source. More...

virtual Int_t Init ()
 Method called on initialization of event classes. More...

virtual void PrintEvent ()
 Method called by the event owner (analysis step) to clear the event element. More...

virtual TGo4CompositeEventgetSubEventElement ()
virtual void makeBranch (TBranch *parent)
virtual Int_t activateBranch (TBranch *branch, Int_t splitLevel, Int_t init=0)
virtual void deactivate ()
virtual void activate ()
virtual void Clear (Option_t *t="")
virtual void clearAll (Int_t)
virtual Bool_t isComposed ()
virtual Short_t getId ()
virtual void setDebug (Bool_t debug)
virtual TGo4EventElement & operator[] (Int_t)

Protected Attributes

Short_t fIdentifier
Bool_t isComposite
Bool_t isActivated
Bool_t fDebug
 IO synchrone flag. More...


Private Attributes

Bool_t fbIsValid
 Indicates if this event is valid or not. More...

TGo4EventElement * fxParent
 The higher level event element that owns this instance @supplierCardinality 1. More...

TGo4EventSourcefxEventSource
 The external event source instance which is used to fill this event structure from the raw event. More...


Detailed Description

The abstract base class for the data elements of which the unpacked events (or detector structure data, resp) are composed.

Any event structure consists of eventelements that are linked back to their parent element. The user event class is the top parent level event element; unlimited levels of event elements as subevents might be managed by this user event. The way of subelement organization (e.g. user event class members, TObjArray,...) is not restricted here. @interface

Author:
J. Adamczewski
Since:
12/2000

Definition at line 45 of file TGo4EventElement.h.


Constructor & Destructor Documentation

TGo4EventElement::TGo4EventElement void   
 

Definition at line 22 of file TGo4EventElement.cxx.

References fDebug, fIdentifier, isActivated, isComposite, and TRACE.

TGo4EventElement::TGo4EventElement const char *    name
 

Definition at line 35 of file TGo4EventElement.cxx.

References fDebug, fIdentifier, isActivated, isComposite, and TRACE.

TGo4EventElement::TGo4EventElement const char *    aName,
const char *    aTitle,
Short_t    aBaseCat = 0
 

Definition at line 46 of file TGo4EventElement.cxx.

References fDebug, fIdentifier, isActivated, and isComposite.

TGo4EventElement::~TGo4EventElement void    [virtual]
 

Definition at line 63 of file TGo4EventElement.cxx.

References TRACE.


Member Function Documentation

void TGo4EventElement::SetValid Bool_t    on [inline]
 

Switches the valid state of this event.

Definition at line 56 of file TGo4EventElement.h.

References fbIsValid.

Referenced by TGo4MbsSource::BuildMbsEvent(), TYYYEventSource::BuildYYYEvent(), TMeshFinalEvent::Clear(), TXXXProc::Event(), Init(), TGo4TreeStore::Store(), TMeshUnpackProc::Unpack(), TMeshUnpackProc::UnpackBranch1(), TMeshUnpackProc::UnpackBranch2(), TMeshUnpackProc::UnpackBranch3(), TXXXAnlProc::XXXEventAnalysis(), and TXXXUnpackProc::XXXUnpack().

Bool_t TGo4EventElement::IsValid   const [inline]
 

Returns the valid state of this event.

Definition at line 59 of file TGo4EventElement.h.

References fbIsValid.

Referenced by TGo4HistogramEntry::Process(), and TGo4AnalysisStep::Process().

void TGo4EventElement::SetEventSource TGo4EventSource   src [inline]
 

Setter for the event source that is currently used by the Fill method.

Definition at line 62 of file TGo4EventElement.h.

References fxEventSource.

Referenced by main(), TGo4AnalysisStep::NewEventProcessor(), TGo4AnalysisStep::NewEventSource(), TGo4AnalysisStep::NewInputEvent(), TGo4AnalysisStep::NewOutputEvent(), and TGo4AnalysisStep::Process().

void TGo4EventElement::SetParent TGo4EventElement *    par [inline]
 

Setter for the parent event structure reference.

Definition at line 65 of file TGo4EventElement.h.

References fxParent.

TGo4EventElement* TGo4EventElement::GetParent   const [inline]
 

Definition at line 67 of file TGo4EventElement.h.

References fxParent.

TGo4EventSource* TGo4EventElement::GetEventSource   const [inline]
 

Definition at line 69 of file TGo4EventElement.h.

References fxEventSource.

Referenced by TGo4SimpleEvent::Fill(), TYYYUnpackEvent::Init(), TYYYRawEvent::Init(), TMeshRawEvent::Init(), TMeshFinalEvent::Init(), TMeshDummyEvent::Init(), TMeshB3OutputEvent::Init(), TMeshB3InputEvent::Init(), TMeshB2OutputEvent::Init(), TMeshB2InputEvent::Init(), TMeshB1OutputEvent::Init(), TMeshB1InputEvent::Init(), TMeshB12OutputEvent::Init(), TXXXUnpackEvent::Init(), TXXXAnlEvent::Init(), TXXXEvent::Init(), and TGo4MbsEvent::Init().

Bool_t TGo4EventElement::CheckEventSource const char *    classname
 

Check if event source is valid.

Tests the pointer for zero, and if not zero, compares classname of the event source with given string. To be used from the Fill method and from the analysis method init event classes.

Definition at line 69 of file TGo4EventElement.cxx.

References fxEventSource, and TRACE.

Referenced by TGo4SimpleEvent::Fill(), TYYYUnpackEvent::Init(), TYYYRawEvent::Init(), TMeshRawEvent::Init(), TMeshFinalEvent::Init(), TMeshDummyEvent::Init(), TMeshB3OutputEvent::Init(), TMeshB3InputEvent::Init(), TMeshB2OutputEvent::Init(), TMeshB2InputEvent::Init(), TMeshB1OutputEvent::Init(), TMeshB1InputEvent::Init(), TMeshB12OutputEvent::Init(), TXXXUnpackEvent::Init(), TXXXAnlEvent::Init(), TXXXEvent::Init(), TGo4MbsEvent::Init(), and TMeshProviderProc::SetRealInput().

Char_t TGo4EventElement::GetDataChar TGo4EventDataIndex   index [virtual]
 

Get char (1 byte) data value by user specified index.

Must be re-implemented by subclass to work.

Definition at line 82 of file TGo4EventElement.cxx.

References TGo4Log::Debug(), and TRACE.

Short_t TGo4EventElement::GetDataShort TGo4EventDataIndex   index [virtual]
 

Get short (2 byte) data value by user specified index.

Must be re-implemented by subclass to work.

Definition at line 90 of file TGo4EventElement.cxx.

References TGo4Log::Debug(), and TRACE.

Int_t TGo4EventElement::GetDataInt TGo4EventDataIndex   index [virtual]
 

Get integer (4 byte) data value by user specified index.

Must be re-implemented by subclass to work.

Definition at line 99 of file TGo4EventElement.cxx.

References TGo4Log::Debug(), and TRACE.

Long_t TGo4EventElement::GetDataLong TGo4EventDataIndex   index [virtual]
 

Get long (4 or 8 bytes) integer data value by user specified index.

Must be re-implemented by subclass to work.

Definition at line 108 of file TGo4EventElement.cxx.

References TGo4Log::Debug(), and TRACE.

Float_t TGo4EventElement::GetDataFloat TGo4EventDataIndex   index [virtual]
 

Get float data value by user specified index.

Must be re-implemented by subclass to work.

Definition at line 116 of file TGo4EventElement.cxx.

References TGo4Log::Debug(), and TRACE.

Double_t TGo4EventElement::GetDataDouble TGo4EventDataIndex   index [virtual]
 

Get double data value by user specified index.

Must be re-implemented by subclass to work.

Definition at line 125 of file TGo4EventElement.cxx.

References TGo4Log::Debug(), and TRACE.

virtual Int_t TGo4EventElement::Fill   [inline, virtual]
 

Method called by the event owner (analysis step) to fill the event element from the set event source.

Event source can be the source of the analysis step (if this is a raw event) or the event processor (if this is a reduced event). Fill method has to specify how the event source writes to the members of this event structure. Either by calling methods of the source (like myevent.a=fxEventSource->GetA(); etc ), or by direct copy to the member (like fxEventSource->FillMemoryAt(&myevent.a);)

Reimplemented in TGo4MbsEvent, TGo4MbsSubEvent, TGo4SimpleEvent, TGo4SimpleSubEvent, TXXXEvent, TXXXAnlEvent, TXXXUnpackEvent, TMeshB12OutputEvent, TMeshB1InputEvent, TMeshB1OutputEvent, TMeshB2InputEvent, TMeshB2OutputEvent, TMeshB3InputEvent, TMeshB3OutputEvent, TMeshDummyEvent, TMeshFinalEvent, TMeshRawEvent, TXXXEvent, TYYYRawEvent, and TYYYUnpackEvent.

Definition at line 108 of file TGo4EventElement.h.

Referenced by TGo4AnalysisStep::Process().

virtual Int_t TGo4EventElement::Init   [inline, virtual]
 

Method called on initialization of event classes.

User might check the correct type of the eventsource here and assign this to a subclass pointer.

Reimplemented in TGo4MbsEvent, TXXXEvent, TXXXAnlEvent, TXXXUnpackEvent, TMeshB12OutputEvent, TMeshB1InputEvent, TMeshB1OutputEvent, TMeshB2InputEvent, TMeshB2OutputEvent, TMeshB3InputEvent, TMeshB3OutputEvent, TMeshDummyEvent, TMeshFinalEvent, TMeshRawEvent, TXXXEvent, TYYYRawEvent, and TYYYUnpackEvent.

Definition at line 113 of file TGo4EventElement.h.

References SetValid().

Referenced by TGo4AnalysisStep::NewEventProcessor(), TGo4AnalysisStep::NewEventSource(), TGo4AnalysisStep::NewInputEvent(), and TGo4AnalysisStep::NewOutputEvent().

void TGo4EventElement::PrintEvent   [virtual]
 

Method called by the event owner (analysis step) to clear the event element.

Reimplemented in TGo4MbsEvent, TGo4MbsSubEvent, TGo4SimpleEvent, TGo4SimpleSubEvent, and TYYYRawEvent.

Definition at line 132 of file TGo4EventElement.cxx.

References TGo4Log::Debug(), fbIsValid, fxEventSource, and TRACE.

Referenced by TGo4ComGetCurrentEvent::ExeCom(), TYYYRawEvent::PrintEvent(), TGo4SimpleEvent::PrintEvent(), TGo4MbsEvent::PrintEvent(), and TGo4EventInfoStatus::PrintEventSample().

virtual TGo4CompositeEvent* TGo4EventElement::getSubEventElement   [inline, virtual]
 

Definition at line 119 of file TGo4EventElement.h.

void TGo4EventElement::makeBranch TBranch *    parent [virtual]
 

Reimplemented in TGo4ClonesElement, and TGo4CompositeEvent.

Definition at line 154 of file TGo4EventElement.cxx.

Referenced by TGo4CompositeEvent::makeBranch(), and TGo4ClonesElement::makeBranch().

Int_t TGo4EventElement::activateBranch TBranch *    branch,
Int_t    splitLevel,
Int_t    init = 0
[virtual]
 

Reimplemented in TGo4ClonesElement, and TGo4CompositeEvent.

Definition at line 159 of file TGo4EventElement.cxx.

References isActivated.

Referenced by TGo4CompositeEvent::activateBranch(), TGo4ClonesElement::activateBranch(), and TGo4CompositeEvent::synchronizeWithTree().

void TGo4EventElement::deactivate   [virtual]
 

Reimplemented in TGo4CompositeEvent.

Definition at line 177 of file TGo4EventElement.cxx.

References gTree.

Referenced by TGo4CompositeEvent::deactivate().

void TGo4EventElement::activate   [virtual]
 

Reimplemented in TGo4CompositeEvent.

Definition at line 187 of file TGo4EventElement.cxx.

References gTree.

Referenced by TGo4CompositeEvent::activate().

void TGo4EventElement::Clear Option_t *    t = "" [virtual]
 

Reimplemented in TGo4ClonesElement, TGo4CompositeEvent, TGo4MbsEvent, TGo4MbsSubEvent, TGo4SimpleEvent, TGo4SimpleSubEvent, TXXXEvent, TXXXAnlEvent, TXXXUnpackEvent, TMeshB12OutputEvent, TMeshB1InputEvent, TMeshB1OutputEvent, TMeshB2InputEvent, TMeshB2OutputEvent, TMeshB3InputEvent, TMeshB3OutputEvent, TMeshDummyEvent, TMeshFinalEvent, TMeshRawEvent, TXXXEvent, TYYYRawEvent, and TYYYUnpackEvent.

Definition at line 200 of file TGo4EventElement.cxx.

Referenced by TGo4CompositeEvent::Clear(), and TGo4TreeStore::Store().

virtual void TGo4EventElement::clearAll Int_t    [inline, virtual]
 

Reimplemented in TGo4ClonesElement, and TGo4CompositeEvent.

Definition at line 126 of file TGo4EventElement.h.

Referenced by TGo4CompositeEvent::clearAll().

virtual Bool_t TGo4EventElement::isComposed   [inline, virtual]
 

Definition at line 127 of file TGo4EventElement.h.

References isComposite.

Referenced by TGo4CompositeEvent::getEventElement(), and TGo4CompositeEvent::getListOfComposites().

virtual Short_t TGo4EventElement::getId   [inline, virtual]
 

Reimplemented in TGo4ClonesElement.

Definition at line 128 of file TGo4EventElement.h.

References fIdentifier.

Referenced by TGo4CompositeEvent::addEventElement().

virtual void TGo4EventElement::setDebug Bool_t    debug [inline, virtual]
 

Definition at line 129 of file TGo4EventElement.h.

References fDebug.

virtual TGo4EventElement& TGo4EventElement::operator[] Int_t    [inline, virtual]
 

Reimplemented in TGo4CompositeEvent.

Definition at line 130 of file TGo4EventElement.h.


Member Data Documentation

Bool_t TGo4EventElement::fbIsValid [private]
 

Indicates if this event is valid or not.

If false, the event store will not write the event.

Definition at line 136 of file TGo4EventElement.h.

Referenced by IsValid(), PrintEvent(), and SetValid().

TGo4EventElement* TGo4EventElement::fxParent [private]
 

The higher level event element that owns this instance @supplierCardinality 1.

Definition at line 140 of file TGo4EventElement.h.

Referenced by GetParent(), and SetParent().

TGo4EventSource* TGo4EventElement::fxEventSource [private]
 

The external event source instance which is used to fill this event structure from the raw event.

Lazy initialization as zero; the pointer is set by analysis only for top level Event Elements with subevents. Might be exchanged on the fly to switch the unpack of different subevents into the same event structure. @supplierCardinality 0..1

Definition at line 148 of file TGo4EventElement.h.

Referenced by CheckEventSource(), GetEventSource(), PrintEvent(), and SetEventSource().

Short_t TGo4EventElement::fIdentifier [protected]
 

Definition at line 151 of file TGo4EventElement.h.

Referenced by getId(), TGo4ClonesElement::getId(), TGo4CompositeEvent::synchronizeWithTree(), and TGo4EventElement().

Bool_t TGo4EventElement::isComposite [protected]
 

Definition at line 152 of file TGo4EventElement.h.

Referenced by isComposed(), TGo4CompositeEvent::TGo4CompositeEvent(), and TGo4EventElement().

Bool_t TGo4EventElement::isActivated [protected]
 

Definition at line 153 of file TGo4EventElement.h.

Referenced by activateBranch(), and TGo4EventElement().

Bool_t TGo4EventElement::fDebug [protected]
 

IO synchrone flag.

Definition at line 154 of file TGo4EventElement.h.

Referenced by setDebug(), and TGo4EventElement().


The documentation for this class was generated from the following files:
Generated on Tue Nov 8 10:56:37 2005 for Go4-v2.10-5 by doxygen1.2.15