bug fixed
[u/mrichter/AliRoot.git] / RAW / AliRawEquipmentV2.h
CommitLineData
33314186 1#ifndef ALIRAWEQUIPMENTV2_H
2#define ALIRAWEQUIPMENTV2_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// AliRawEquipmentV2 //
11// //
12// Set of classes defining the ALICE RAW event format. The AliRawEventV2//
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 AliRawEventV2s. The number of //
16// sub-events depends on the number of DATE LDC's. //
17// The AliRawEventV2 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#include <TRef.h>
36
37// Forward class declarations
38class AliRawDataArrayV2;
39
40#include "AliRawVEquipment.h"
41#include "AliRawEquipmentHeader.h"
42
43class AliRawEquipmentV2 : public AliRawVEquipment {
44
45public:
46 AliRawEquipmentV2();
47 virtual ~AliRawEquipmentV2();
48
49 virtual AliRawEquipmentHeader *GetEquipmentHeader();
50 virtual AliRawData *GetRawData();
51 void Reset();
52 AliRawData *NextRawData(AliRawDataArrayV2 *array);
53
243e7b72 54 virtual void CloneRawData(const AliRawData *rawData);
aeaaf1d0 55
33314186 56private:
57 AliRawEquipmentHeader fEqpHdr; // equipment header
58 AliRawData *fRawData; //! raw data container
59 TRef fRawDataRef; // reference to raw data container
60
61 AliRawEquipmentV2(const AliRawEquipmentV2& eq);
62 AliRawEquipmentV2& operator = (const AliRawEquipmentV2& eq);
63
64 ClassDef(AliRawEquipmentV2,1) // ALICE raw equipment object
65};
66
67#endif