ROOT logo
#ifndef HORASLOWPARTITION_H
#define HORASLOWPARTITION_H

using namespace std;
#include "TNamed.h"
#include "TObjArray.h"
#include <iostream>
#include <iomanip>
#include <fstream>

class HOraSlowReader;
class HOraSlowPeriod;
class TGraph;

class HOraSlowPartition : public TNamed {
private:
  TString    partition;       // Name of the data partition
  TString    startTime;       // Start time of the data (format yyyy-mm-dd hh:mi:ss)
  TString    endTime;         // End time of the data (format yyyy-mm-dd hh:mi:ss)
  TObjArray* pRunPeriods;     // Array of time periods or runs
  TIterator* periodIter;      // Iterator on pRunPeriods
  HOraSlowReader* pOraReader; // Interface to Oracle
  TObjArray* pRates;          // Array of archiver rates
  TIterator* ratesIter;       // Iterator on pRates
  TGraph*    pGraph;          // Pointer to the graph showing the archiver rates
public:
  HOraSlowPartition(const Char_t* name="");
  ~HOraSlowPartition();
  HOraSlowReader* getOraReader() {return pOraReader;}
  Bool_t openOraInput();
  void closeOraInput();
  void setTimeRange(const Char_t*,const Char_t*);
  const Char_t* getStartTime() {return startTime.Data();}
  const Char_t* getEndTime() {return endTime.Data();}
  TObjArray* setNumPeriods(Int_t);
  TObjArray* getRunPeriods() {return pRunPeriods;}
  void setRates(TObjArray* p);
  HOraSlowPeriod* getPeriod(Int_t);
  HOraSlowPeriod* getRun(Int_t);
  HOraSlowPeriod* getRun(const Char_t*);
  void print(Int_t opt=0);  
  void write(fstream& fout,Int_t opt=0);
  void printRates();
  void writeRates(fstream& fout);
  TGraph* getRatesGraph(Int_t mStyle=7,Int_t mColor=4);
  void setHldFileFilter(TList* l);
private:
  void clearRunPeriods();
  void clearRates();
  void deleteGraph();
  ClassDef(HOraSlowPartition,0) // Slowcontrol data partition
};

#endif  /* !HORASLOWPARTITION */
 horaslowpartition.h:1
 horaslowpartition.h:2
 horaslowpartition.h:3
 horaslowpartition.h:4
 horaslowpartition.h:5
 horaslowpartition.h:6
 horaslowpartition.h:7
 horaslowpartition.h:8
 horaslowpartition.h:9
 horaslowpartition.h:10
 horaslowpartition.h:11
 horaslowpartition.h:12
 horaslowpartition.h:13
 horaslowpartition.h:14
 horaslowpartition.h:15
 horaslowpartition.h:16
 horaslowpartition.h:17
 horaslowpartition.h:18
 horaslowpartition.h:19
 horaslowpartition.h:20
 horaslowpartition.h:21
 horaslowpartition.h:22
 horaslowpartition.h:23
 horaslowpartition.h:24
 horaslowpartition.h:25
 horaslowpartition.h:26
 horaslowpartition.h:27
 horaslowpartition.h:28
 horaslowpartition.h:29
 horaslowpartition.h:30
 horaslowpartition.h:31
 horaslowpartition.h:32
 horaslowpartition.h:33
 horaslowpartition.h:34
 horaslowpartition.h:35
 horaslowpartition.h:36
 horaslowpartition.h:37
 horaslowpartition.h:38
 horaslowpartition.h:39
 horaslowpartition.h:40
 horaslowpartition.h:41
 horaslowpartition.h:42
 horaslowpartition.h:43
 horaslowpartition.h:44
 horaslowpartition.h:45
 horaslowpartition.h:46
 horaslowpartition.h:47
 horaslowpartition.h:48
 horaslowpartition.h:49
 horaslowpartition.h:50
 horaslowpartition.h:51
 horaslowpartition.h:52
 horaslowpartition.h:53
 horaslowpartition.h:54