Bug fix. Removed delete statement
[u/mrichter/AliRoot.git] / STEER / AliRunTag.h
CommitLineData
f3a97c86 1#ifndef ALIRUNTAG_H
2#define ALIRUNTAG_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6
7/* $Id$ */
8
9//-------------------------------------------------------------------------
10// Class AliRunTag
11// This is the class to deal with the tags for the run level
12//
13// Origin: Panos Christakoglou, UOA-CERN, Panos.Christakoglou@cern.ch
14//-------------------------------------------------------------------------
15
17a9d008 16#include <TObject.h>
17#include <TString.h>
18#include <TClonesArray.h>
f3a97c86 19#include "AliLHCTag.h"
c5caed45 20#include "AliDetectorTag.h"
9ee5d033 21#include "AliQA.h"
e16601cf 22
23class AliEventTag;
c5caed45 24//class AliDetectorTag;
f3a97c86 25
26
bec9a2e7 27//___________________________________________________________________________
28class AliRunTag : public TObject {
f3a97c86 29 public:
30 AliRunTag();
31 virtual ~AliRunTag();
27293674 32 AliRunTag(const AliRunTag& qa) ;
33 AliRunTag& operator = (const AliRunTag& tag) ;
bec9a2e7 34 //____________________________________________________//
35 void SetRunId(Int_t Pid) {fAliceRunId = Pid;}
36 void SetMagneticField(Float_t Pmag) {fAliceMagneticField = Pmag;}
37 void SetRunStartTime(Int_t Pt0) {fAliceRunStartTime = Pt0;}
38 void SetRunStopTime(Int_t Pt1) {fAliceRunStopTime = Pt1;}
39 void SetAlirootVersion(TString v) {fAlirootVersion = v;}
40 void SetRootVersion(TString v) {fRootVersion = v;}
41 void SetGeant3Version(TString v) {fGeant3Version = v;}
42 void SetRunQuality(Int_t Pn) {fAliceRunQuality = Pn;}
43 void SetBeamEnergy(Float_t PE) {fAliceBeamEnergy = PE;}
44 void SetBeamType(TString Ptype) {fAliceBeamType = Ptype;}
45 void SetCalibVersion(Int_t Pn) {fAliceCalibrationVersion = Pn;}
46 void SetDataType(Int_t i) {fAliceDataType = i;}
47 void SetNEvents(Int_t Pn) { fNumEvents = Pn; }
c5caed45 48 void SetLHCTag(Float_t Plumin, TString type);
49 void SetDetectorTag(UInt_t mask);
9ee5d033 50 void SetQA(const AliQA &qa) { fQA=qa; }
51 void SetQAArray(ULong_t * qa, Int_t qalength) ;
27293674 52 void SetEventSpecies(Bool_t * es, Int_t eslength) ;
bec9a2e7 53 void AddEventTag(const AliEventTag &t);
54 void Clear(const char * opt = "");
4c117ffd 55
56 void CopyStandardContent(AliRunTag *oldtag);
f3a97c86 57
bec9a2e7 58 //____________________________________________________//
59 Int_t GetRunId() const {return fAliceRunId;}
60 Float_t GetMagneticField() const {return fAliceMagneticField;}
61 Int_t GetRunStartTime() const {return fAliceRunStartTime;}
62 Int_t GetRunStopTime() const {return fAliceRunStopTime;}
63 const char* GetAlirootVersion() const {return fAlirootVersion.Data();}
64 const char* GetRootVersion() const {return fRootVersion.Data();}
65 const char* GetGeant3Version() const {return fGeant3Version.Data();}
66 Int_t GetRunQuality() const {return fAliceRunQuality;}
67 Float_t GetBeamEnergy() const {return fAliceBeamEnergy;}
68 const char *GetBeamType() const {return fAliceBeamType.Data();}
69 Int_t GetCalibVersion() const {return fAliceCalibrationVersion;}
70 Int_t GetDataType() const {return fAliceDataType;}
71 Int_t GetNEvents() const {return fNumEvents;}
72 AliLHCTag *GetLHCTag() {return &fLHCTag; }
c5caed45 73 AliDetectorTag *GetDetectorTags() {return &fDetectorTag;}
17a9d008 74 const TClonesArray *GetEventTags() const {return &fEventTag;}
9ee5d033 75 const AliQA *GetQA() const {return &fQA;}
76 ULong_t * GetQAArray() const {return fQAArray;}
27293674 77 Int_t GetQALength() const { return fQALength ; }
78 Bool_t * GetEventSpecies() const {return fEventSpecies;}
79 Int_t GetESLength() const { return fESLength ; }
46af88be 80
bec9a2e7 81 //____________________________________________________//
e16601cf 82 private:
bec9a2e7 83 Int_t fAliceRunId; //the run id
84 Float_t fAliceMagneticField; //value of the magnetic field
85 Int_t fAliceRunStartTime; //run start date
86 Int_t fAliceRunStopTime; //run stop date
87 TString fAlirootVersion; //aliroot version
88 TString fRootVersion; //root version
89 TString fGeant3Version; //geant3 version
90 Bool_t fAliceRunQuality; //validation script
91 Float_t fAliceBeamEnergy; //beam energy cm
92 TString fAliceBeamType; //run type (pp, AA, pA)
93 Int_t fAliceCalibrationVersion; //calibration version
94 Int_t fAliceDataType; //0: simulation -- 1: data
95 Int_t fNumEvents; //number of events per file
96 Int_t fNumDetectors; //number of detector configs per file
97 TClonesArray fEventTag; //array with all event tags
46af88be 98 AliDetectorTag fDetectorTag; //array with all the detector tags
bec9a2e7 99 AliLHCTag fLHCTag; //LHC tag object
9ee5d033 100 AliQA fQA; //needed for backward compaibility
27293674 101 Int_t fQALength; // Length of the fQA array
9ee5d033 102 ULong_t * fQAArray ; //[fQALength] QA objects's data
27293674 103 Int_t fESLength; // Length of the Event Specie Length
104 Bool_t * fEventSpecies; //[fESLength] EventSpecies in this run
e16601cf 105
9ee5d033 106 ClassDef(AliRunTag,6) //(ClassName, ClassVersion)
f3a97c86 107};
bec9a2e7 108//___________________________________________________________________________
f3a97c86 109
110#endif