]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/JCORRAN/AliJRunHeader.cxx
excepting also empty directory for merging
[u/mrichter/AliRoot.git] / PWG4 / JCORRAN / AliJRunHeader.cxx
CommitLineData
2f4cac02 1/**************************************************************************
2* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3* *
4* Author: The ALICE Off-line Project. *
5* Contributors are mentioned in the code where appropriate. *
6* *
7* Permission to use, copy, modify and distribute this software and its *
8* documentation strictly for non-commercial purposes is hereby granted *
9* without fee, provided that the above copyright notice appears in all *
10* copies and that both the copyright notice and this permission notifce *
11* appear in the supporting documentation. The authors make no claims *
12* about the suitability of this software for any purpose. It is *
13* provided "as is" without express or implied warranty. *
14**************************************************************************/
15
16// $Id: AliJRunHeader.cxx,v 1.1 2008/02/04 13:28:47 rak Exp $
17
18////////////////////////////////////////////////////
19//
20// \file AliJRunHeader.cxx
21// \brief
22// \author J. Rak, D.J.Kim, F.Krizek(University of Jyvaskyla)
23// \email: djkim@cc.jyu.fi
24// \version $Revision: 1.1 $
25// \date $Date: 2008/02/04 13:28:47 $
26//
27// Class encapsulation aliroot run header information
28////////////////////////////////////////////////////
29#include "AliJRunHeader.h"
30
31ClassImp(AliJRunHeader)
32
33//----------------------------
34AliJRunHeader::AliJRunHeader():
35 TNamed(),
36 fRunNumber(-1),
37 fL3MagnetPolarity(0),
38 fMagneticFieldL3(0),
39 fActiveTriggersAlice(),
40 fSizeOfTableJCorran(0),
41 fActiveTriggersJCorran()
42{ //constructor
43
44 for(Int_t i=0;i<kRangeTriggerTableAlice;i++){
45 fActiveTriggersAlice.Add(new TObjString("EMPTY"));
46 fActiveTriggersJCorran.Add(new TObjString("EMPTY"));
47 }
48
49 fActiveTriggersAlice.SetOwner(kTRUE);
50 fActiveTriggersJCorran.SetOwner(kTRUE);
51
52 SetName("AliRunHeader");
53 SetTitle("AliRunHeader");
54
55}
56//________________________________________________________________________
57
58AliJRunHeader::AliJRunHeader(const AliJRunHeader& ap):
59 TNamed(ap),
60 fRunNumber(ap.fRunNumber),
61 fL3MagnetPolarity(ap.fL3MagnetPolarity),
62 fMagneticFieldL3(ap.fMagneticFieldL3),
63 fActiveTriggersAlice(ap.fActiveTriggersAlice),
64 fSizeOfTableJCorran(ap.fSizeOfTableJCorran),
65 fActiveTriggersJCorran(ap.fActiveTriggersJCorran)
66{
67 //cpy ctor
68}
69//________________________________________________________________________
70
71void AliJRunHeader::SetActiveTriggersAlice(TString *triggers){
72 // fill aliroot trigger table
73 for(Int_t t=0;t<kRangeTriggerTableAlice;t++){
74 ((TObjString*) (fActiveTriggersAlice.At(t)))->SetString(triggers[t].Data());
75 }
76
77 fActiveTriggersAlice.SetOwner(kTRUE);
78}
79//________________________________________________________________________
80
81void AliJRunHeader::SetActiveTriggersJCorran(TString *triggers, Int_t range){
82 //fill jcorran trigger table
83 for(Int_t t=0;t<range;t++){
84 ((TObjString*) (fActiveTriggersJCorran.At(t)))->SetString(triggers[t].Data());
85 }
86 fActiveTriggersJCorran.SetOwner(kTRUE);
87 fSizeOfTableJCorran = range;
88}
89//________________________________________________________________________
90
91Int_t AliJRunHeader::GetActiveTriggerBitAlice(TString TriggerName){
92 //get trigger bit corresponding to trigger name
93 Int_t tbit=-1;
94 for(Int_t t=0;t<kRangeTriggerTableAlice;t++){
95 if(TriggerName.Contains(((TObjString*)(fActiveTriggersAlice.At(t)))->GetString())){
96 tbit = t;
97 break;
98 }
99 }
100 return tbit;
101}
102//________________________________________________________________________
103
104void AliJRunHeader::PrintOut(){
105 //print object
106 cout<<"RUN "<<fRunNumber<<endl;
107 cout<<"Alice trigger table:"<<endl;
108 for(Int_t i=0;i<kRangeTriggerTableAlice;i++){
109 cout<<i<<" "<<GetActiveTriggerAlice(i)<<endl;
110 }
111 cout<<"============================="<<endl;
112 cout<<"JCorran trigger table:"<<endl;
113 for(Int_t i=0;i<fSizeOfTableJCorran;i++){
114 cout<<i<<" "<<GetActiveTriggerJCorran(i)<<endl;
115 }
116 cout<<"============================="<<endl;
117 cout<<"Magnet polarity "<<fL3MagnetPolarity<<endl;
118 cout<<"B "<<fMagneticFieldL3<<endl;
119 cout<<"============================="<<endl;
120
121}
122//_______________________________________________________________________
123AliJRunHeader& AliJRunHeader::operator=(const AliJRunHeader& header){
124 //operator =
125 if(this != &header) {
126 TNamed::operator=(header);
127 fRunNumber = header.fRunNumber;
128 fL3MagnetPolarity = header.fL3MagnetPolarity;
129 fMagneticFieldL3 = header.fMagneticFieldL3;
130 fActiveTriggersAlice = header.fActiveTriggersAlice;
131 fSizeOfTableJCorran = header.fSizeOfTableJCorran;
132 fActiveTriggersJCorran = header.fActiveTriggersJCorran;
133 }
134 return *this;
135}
136
137