]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG4/JCORRAN/AliJRunHeader.cxx
Removing the tasks from the digitization (Ruben)
[u/mrichter/AliRoot.git] / PWG4 / JCORRAN / AliJRunHeader.cxx
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
31 ClassImp(AliJRunHeader)
32
33 //----------------------------
34 AliJRunHeader::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
58 AliJRunHeader::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
71 void AliJRunHeader::SetActiveTriggersAlice(const 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
81 void AliJRunHeader::SetActiveTriggersJCorran(const 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
91 Int_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
104 void 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 //_______________________________________________________________________
123 AliJRunHeader& 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