]> git.uio.no Git - u/mrichter/AliRoot.git/blame - T0/AliT0DataDCS.cxx
expantion of recoParam (Markus) and fix bug in HLT mode
[u/mrichter/AliRoot.git] / T0 / AliT0DataDCS.cxx
CommitLineData
9dcc11e4 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 notice * * appear in the supporting documentation. The authors make no claims *
11 * about the suitability of this software for any purpose. It is *
12 * provided "as is" without express or implied warranty. *
13 **************************************************************************/
14
15/*
16$Log: AliT0DataDCS.cxx,v $
17 Revision 2008/01/30
18Fetching data points from DCS, calculating mean and storing data to Reference DB
19
20 Version 1.1 2006/10
21Preliminary test version (T.Malkiewicz)
22*/
23
dc7ca31d 24#include "AliT0DataDCS.h"
25
26#include "AliCDBMetaData.h"
27#include "AliDCSValue.h"
28#include "AliLog.h"
29
30#include <TTimeStamp.h>
31#include <TObjString.h>
32#include <TH2F.h>
33#include <TProfile.h>
34#include <TGraph.h>
35#include <TDatime.h>
36#include <TStyle.h>
37#include <TCanvas.h>
38
9dcc11e4 39// AliT0DataDCS class
40// declaring DCS aliases for T0
41// fetching T0 data points from DCS,
42// calculating mean values for the entire run
43// and storing the result to Reference DB
44
dc7ca31d 45ClassImp(AliT0DataDCS)
46
47//---------------------------------------------------------------
48AliT0DataDCS::AliT0DataDCS():
49 TObject(),
9dcc11e4 50 fRun(0),
dc7ca31d 51 fStartTime(0),
52 fEndTime(0),
dc7ca31d 53 fIsProcessed(kFALSE)
54{
dc7ca31d 55}
56
57//---------------------------------------------------------------
58AliT0DataDCS::AliT0DataDCS(Int_t nRun, UInt_t startTime, UInt_t endTime):
59 TObject(),
60 fRun(nRun),
61 fStartTime(startTime),
62 fEndTime(endTime),
dc7ca31d 63 fIsProcessed(kFALSE)
64{
65 AliInfo(Form("\n\tRun %d \n\tStartTime %s \n\tEndTime %s", nRun,
66 TTimeStamp(startTime).AsString(),
67 TTimeStamp(endTime).AsString()));
68
dc7ca31d 69 Init();
70
71}
72
73//---------------------------------------------------------------
74AliT0DataDCS::~AliT0DataDCS() {
75
dc7ca31d 76}
77
78//---------------------------------------------------------------
91366e58 79Bool_t AliT0DataDCS::ProcessData(TMap& aliasMap)
80{
9dcc11e4 81 Float_t t0_scaler[32];
82 Int_t aliasEntr[32];
970bb0d0 83 TObjArray *aliasArr;
970bb0d0 84 for(int j=0; j<kNAliases; j++)
85 {
9dcc11e4 86 for (Int_t k=0;k<32;k++)
87 {
88 t0_scaler[k]=0;
89 aliasEntr[k]=0;
90 }
91 aliasArr = (TObjArray*) aliasMap.GetValue(fAliasNames[j].Data());
970bb0d0 92 if(!aliasArr)
93 {
94 AliError(Form("Alias %s not found!", fAliasNames[j].Data()));
91366e58 95 continue;
970bb0d0 96 }
970bb0d0 97 if(aliasArr->GetEntries()<2)
98 {
99 AliError(Form("Alias %s has just %d entries!",
100 fAliasNames[j].Data(),aliasArr->GetEntries()));
101 continue;
102 }
9dcc11e4 103 aliasEntr[j] = aliasArr->GetEntries();
104 for(int l=0; l<aliasEntr[j]; l++)
970bb0d0 105 {
9dcc11e4 106 AliDCSValue *aValue=dynamic_cast<AliDCSValue*> (aliasArr->At(l));
107 t0_scaler[j]+= aValue->GetFloat();
970bb0d0 108 }
9dcc11e4 109 fScalerMean[j] = t0_scaler[j] / aliasEntr[j] ;
970bb0d0 110 }
dc7ca31d 111 fIsProcessed=kTRUE;
9dcc11e4 112 return kTRUE;
dc7ca31d 113}
114
115//---------------------------------------------------------------
91366e58 116void AliT0DataDCS::Init()
117{
9dcc11e4 118 TString sindex;
91366e58 119 for(int i=0;i<kNAliases;i++)
120 {
9dcc11e4 121 fAliasNames[i] = "t00_ac_scaler_";
122 sindex.Form("%02d",i);
123 fAliasNames[i] += sindex;
dc7ca31d 124 }
125
dc7ca31d 126}
127
128//---------------------------------------------------------------
129void AliT0DataDCS::Introduce(UInt_t numAlias, const TObjArray* aliasArr){
130
131 int entries=aliasArr->GetEntries();
132 AliInfo(Form("************ Alias: %s **********",fAliasNames[numAlias].Data()));
133 AliInfo(Form(" %d DP values collected",entries));
134
135}
136
dc7ca31d 137
91366e58 138