Extending period for DCS DPs query to the time when the run number was created
[u/mrichter/AliRoot.git] / SHUTTLE / AliShuttleLogbookEntry.h
CommitLineData
2bb7b766 1#ifndef ALI_SHUTTLE_LOGBOOK_ENTRY_H
2#define ALI_SHUTTLE_LOGBOOK_ENTRY_H
3
4
5/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
6 * See cxx source for full Copyright notice */
7
8/* $Id$ */
9
10//
11// This class is a container for the data queried from DAQ's logbook and logbook_shuttle tables.
12//
13
14#include <TObject.h>
eba76848 15#include <TString.h>
16#include <TMap.h>
2bb7b766 17
eba76848 18#include "AliShuttleInterface.h"
2bb7b766 19
eba76848 20class AliShuttleLogbookEntry : public TObject {
2bb7b766 21
22public:
23 enum Status {
24 kUnprocessed = 0,
25 kInactive,
26 kFailed, // final
27 kDone // final
28 };
29
30 AliShuttleLogbookEntry();
eba76848 31 AliShuttleLogbookEntry(Int_t run, Status* status=0);
2bb7b766 32 ~AliShuttleLogbookEntry();
33
34 AliShuttleLogbookEntry& operator=(const AliShuttleLogbookEntry& c);
35 AliShuttleLogbookEntry(const AliShuttleLogbookEntry& c);
36 virtual void Copy(TObject& c) const;
37
38 Int_t GetRun() const {return fRun;}
89bcf3b4 39 UInt_t GetStartTime() const {TString tmp(GetRunParameter("DAQ_time_start")); return tmp.Atoi();}
40 UInt_t GetEndTime() const {TString tmp(GetRunParameter("DAQ_time_end")); return tmp.Atoi();}
5f3fe74e 41 UInt_t GetTimeCreated() const {TString tmp(GetRunParameter("time_created")); return tmp.Atoi();}
89bcf3b4 42 Bool_t GetECSSuccess() const {TString tmp(GetRunParameter("ecs_success")); return (Bool_t) tmp.Atoi();}
2bb7b766 43
eba76848 44// void SetRun(Int_t run) {fRun=run;}
45
46 void SetRunParameter(const char* key, const char* value);
47 const char* GetRunParameter(const char* key) const;
2bb7b766 48
441b0e9c 49 Status GetDetectorStatus(const char* detCode) const
50 {return GetDetectorStatus(AliShuttleInterface::GetDetPos(detCode));}
2bb7b766 51 Status GetDetectorStatus(Int_t detPos) const;
52 Status* GetDetectorStatus() const {return (Status*) fDetectorStatus;}
53
54 void SetDetectorStatus(const char* detCode, Status status);
55 void SetDetectorStatus(Status* status);
56 void SetDetectorStatus(UInt_t detPos, Status status);
eba76848 57 void SetDetectorStatus(const char* detCode, const char* statusName);
58 void SetDetectorStatus(UInt_t detPos, const char* statusName);
2bb7b766 59
9827400b 60 const char* GetRunType() const { return GetRunParameter("run_type"); }
441b0e9c 61
2bb7b766 62 Bool_t IsDone() const;
63
64 static const char* GetDetectorStatusName(Status status);
65 void Print(Option_t *option) const;
66
2bb7b766 67private:
68
69 Int_t fRun; // Run number
eba76848 70 TMap fRunParameters; // run parameters written in DAQ logbook
71 Status fDetectorStatus[AliShuttleInterface::kNDetectors]; // Detector status array
2bb7b766 72
73 ClassDef(AliShuttleLogbookEntry, 0)
74};
75
76#endif
77