Line data Source code
1 : #ifndef ALIRAWVEVENT_H
2 : #define ALIRAWVEVENT_H
3 : // Author: Cvetan Cheshkov 11/05/2009
4 :
5 : /* Copyright(c) 1998-2003, ALICE Experiment at CERN, All rights reserved. *
6 : * See cxx source for full Copyright notice */
7 :
8 : //////////////////////////////////////////////////////////////////////////
9 : // //
10 : // AliRawVEvent //
11 : // //
12 : // Set of classes defining the ALICE RAW event format. The AliRawVEvent //
13 : // class defines a RAW event. It consists of an AliEventHeader object //
14 : // an AliEquipmentHeader object, an AliRawData object and an array of //
15 : // sub-events, themselves also being AliRawVEvents. The number of //
16 : // sub-events depends on the number of DATE LDC's. //
17 : // The AliRawVEvent objects are written to a ROOT file using different //
18 : // technologies, i.e. to local disk via AliRawDB or via rfiod using //
19 : // AliRawRFIODB or via rootd using AliRawRootdDB or to CASTOR via //
20 : // rootd using AliRawCastorDB (and for performance testing there is //
21 : // also AliRawNullDB). //
22 : // The AliRunDB class provides the interface to the run and file //
23 : // catalogues (AliEn or plain MySQL). //
24 : // The AliStats class provides statics information that is added as //
25 : // a single keyed object to each raw file. //
26 : // The AliTagDB provides an interface to a TAG database. //
27 : // The AliMDC class is usid by the "alimdc" stand-alone program //
28 : // that reads data directly from DATE. //
29 : // //
30 : //////////////////////////////////////////////////////////////////////////
31 :
32 : #ifndef ROOT_TObject
33 : #include <TObject.h>
34 : #endif
35 :
36 : #ifndef ROOT_TClonesArray
37 : #include <TClonesArray.h>
38 : #endif
39 :
40 :
41 : // Forward class declarations
42 : class AliRawEventHeaderBase;
43 : class AliRawVEquipment;
44 :
45 :
46 : class AliRawVEvent : public TObject {
47 :
48 : public:
49 20 : AliRawVEvent() { }
50 20 : virtual ~AliRawVEvent() { }
51 :
52 : virtual AliRawEventHeaderBase *GetHeader() = 0;
53 : virtual Int_t GetNEquipments() const = 0;
54 : virtual AliRawVEquipment *GetEquipment(Int_t index) const = 0;
55 : virtual Int_t GetNSubEvents() const = 0;
56 : virtual AliRawVEvent *GetSubEvent(Int_t index) = 0;
57 :
58 : private:
59 :
60 : AliRawVEvent(const AliRawVEvent& rawEvent);
61 : AliRawVEvent& operator = (const AliRawVEvent& rawEvent);
62 :
63 136 : ClassDef(AliRawVEvent,1) // ALICE raw event object
64 : };
65 :
66 : #endif
|