]> git.uio.no Git - u/mrichter/AliRoot.git/blame - SHUTTLE/AliCDBPreProcessor.cxx
This commit was generated by cvs2svn to compensate for changes in r12269,
[u/mrichter/AliRoot.git] / SHUTTLE / AliCDBPreProcessor.cxx
CommitLineData
73abe331 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 *
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/*
17$Log$
18Revision 1.1.1.1 2005/09/12 22:11:40 byordano
19SHUTTLE package
20
21Revision 1.2 2005/08/29 21:15:47 byordano
22some docs added
23
24*/
25
26// Description:
27// This class is the CDBPreProcessor interface,
28// supposed to be implemented by any detector
29// interested in immediate processing of data
30// which is retrieved from DCS.
31// For every particular run set of aliases and
32// their corespoding value sets are returned.
33// Usage schema:
34// 1) virtual void Initialize(Int_t run, UInt_t startTime, UInt_t endTime)
35// This method is called at the begining of data retrieval.
36// run: run number
37// startTime: when the run started
38// endTime: when the run finished
39//
40// 2) virtual void Process(const char* alias, TList& valueSet,
41// Bool_t hasError)
42//
43// This method is called for every particular alias which the detector
44// is registered in the configuration (see AliShuttleConfig).
45// alias: alias name
46// valueSet: collection of AliDCSValue
47// hasError: flag indicating if some error has happened during
48// the retrieaval of the data for this alias.
49//
50// 3) virtual void Finalize()
51// This method is called after the last alias has been processed.
52//
53
54
55#include "AliCDBPreProcessor.h"
56
57#include "AliShuttle.h"
58#include "AliLog.h"
59
60ClassImp(AliCDBPreProcessor)
61
62AliCDBPreProcessor::AliCDBPreProcessor(const char* detector):
63 TNamed(detector, "")
64{
65 SetTitle(Form("AliCDBPreProcessor for %s subdetector.", detector));
66}
67
68AliCDBPreProcessor::~AliCDBPreProcessor() {
69
70}
71
72Int_t AliCDBPreProcessor::GetRun() const {
73 //
74 // Returns current run number.
75 //
76
77 if (!fShuttle) {
78 AliError(Form("Not registered AliCDBPreProcessor: %s",
79 GetName()));
80 return -1;
81 }
82
83 return fShuttle->GetCurrentRun();
84}
85
86UInt_t AliCDBPreProcessor::GetStartTime() const {
87 //
88 // Returns currernt run start time.
89 //
90 if (!fShuttle) {
91 AliError(Form("Not registered AliCDBPreProcessor: %s",
92 GetName()));
93 return 0;
94 }
95
96 return fShuttle->GetCurrentStartTime();
97}
98
99UInt_t AliCDBPreProcessor::GetEndTime() const {
100 //
101 // Returns current run end time.
102 //
103 if (!fShuttle) {
104 AliError(Form("Not registered AliCDBPreProcessor: %s",
105 GetName()));
106 return 0;
107 }
108
109 return fShuttle->GetCurrentEndTime();
110}
111
112Bool_t AliCDBPreProcessor::Store(const char* specType, TObject* object,
113 AliCDBMetaData* metaData)
114{
115 //
116 // Store object and metaData into the default AliCDBStorage.
117 // Storage path: <detector>/DCS/<specType>
118 //
119
120 if (!fShuttle) {
121 AliError(Form("Not registered AliCDBPreProcessor: %s",
122 GetName()));
123 return kFALSE;
124 }
125
126 return fShuttle->Store(GetName(), specType, object, metaData);
127}
128