]> git.uio.no Git - u/mrichter/AliRoot.git/blame - RAW/AliRawEquipment.cxx
Bug fixed (Christian)
[u/mrichter/AliRoot.git] / RAW / AliRawEquipment.cxx
CommitLineData
94d918a7 1// @(#)alimdc:$Name$:$Id$
2// Author: Fons Rademakers 26/11/99
3
4/**************************************************************************
5 * Copyright(c) 1998-2003, ALICE Experiment at CERN, All rights reserved. *
6 * *
7 * Author: The ALICE Off-line Project. *
8 * Contributors are mentioned in the code where appropriate. *
9 * *
10 * Permission to use, copy, modify and distribute this software and its *
11 * documentation strictly for non-commercial purposes is hereby granted *
12 * without fee, provided that the above copyright notice appears in all *
13 * copies and that both the copyright notice and this permission notice *
14 * appear in the supporting documentation. The authors make no claims *
15 * about the suitability of this software for any purpose. It is *
16 * provided "as is" without express or implied warranty. *
17 **************************************************************************/
18
19//////////////////////////////////////////////////////////////////////////
20// //
21// AliRawEvent //
22// //
23// Set of classes defining the ALICE RAW event format. The AliRawEvent //
24// class defines a RAW event. It consists of an AliEventHeader object //
25// an AliEquipmentHeader object, an AliRawData object and an array of //
26// sub-events, themselves also being AliRawEvents. The number of //
27// sub-events depends on the number of DATE LDC's. //
28// The AliRawEvent objects are written to a ROOT file using different //
29// technologies, i.e. to local disk via AliRawDB or via rfiod using //
30// AliRawRFIODB or via rootd using AliRawRootdDB or to CASTOR via //
31// rootd using AliRawCastorDB (and for performance testing there is //
32// also AliRawNullDB). //
33// The AliRunDB class provides the interface to the run and file //
34// catalogues (AliEn or plain MySQL). //
35// The AliStats class provides statics information that is added as //
36// a single keyed object to each raw file. //
37// The AliTagDB provides an interface to a TAG database. //
38// The AliMDC class is usid by the "alimdc" stand-alone program //
39// that reads data directly from DATE. //
40// //
41//////////////////////////////////////////////////////////////////////////
42
43#include "AliRawEquipmentHeader.h"
44#include "AliRawData.h"
45
46#include "AliRawEquipment.h"
47
48
49ClassImp(AliRawEquipment)
50
51
52//______________________________________________________________________________
f3c1e83c 53AliRawEquipment::AliRawEquipment():
54fEqpHdr(NULL),
55fRawData(NULL)
94d918a7 56{
57 // Create ALICE equipment object.
58
94d918a7 59}
60
61//______________________________________________________________________________
62AliRawEquipmentHeader *AliRawEquipment::GetEquipmentHeader()
63{
64 // Get equipment header part of AliRawEquipment.
65
66 if (!fEqpHdr)
67 fEqpHdr = new AliRawEquipmentHeader;
68
69 return fEqpHdr;
70}
71
72//______________________________________________________________________________
73AliRawData *AliRawEquipment::GetRawData()
74{
75 // Get raw data part of AliRawEquipment.
76
77 if (!fRawData)
78 fRawData = new AliRawData;
79
80 return fRawData;
81}
82
83//______________________________________________________________________________
84void AliRawEquipment::Reset()
85{
86 // Reset the equipment in case it needs to be re-used (avoiding costly
87 // new/delete cycle). We reset the size marker for the AliRawData
88 // object.
89
6bc85955 90 if (fEqpHdr) fEqpHdr->Reset();
94d918a7 91 GetRawData()->SetSize(0);
92}
93
94//______________________________________________________________________________
95AliRawEquipment::~AliRawEquipment()
96{
97 // Clean up event object. Delete also, possible, private raw data.
98
99 delete fEqpHdr;
100 delete fRawData;
101}