ROOT logo
#ifndef HPARIO_H
#define HPARIO_H

#include "TObject.h"
#include "TList.h"
#include "TString.h"

class HDetParIo;
class HRun;

class HParIo : public TObject {
protected:
  TString inputName;     // file name or "Oracle"
  TList*  detParIoList;  // list of detector I/Os
  Bool_t  autoWritable;  // flag indicating if automatic write is possible
public:
  HParIo();
  virtual ~HParIo();
  virtual HDetParIo* getDetParIo(const Text_t*);
  virtual void setDetParIo(HDetParIo*);
  virtual void removeDetParIo(const Text_t*);
  void setInputNumber(Int_t);
  virtual void close() {;}
  virtual Bool_t reconnect() {return kTRUE;}
  virtual void disconnect() {;}

  // creates input/output class for a special detector and stores pointer
  // used only for Oracle input/output
  // (code in  class OraIo)
  virtual void setDetParIo(const Text_t*) {;}

  // prints information about input/output
  virtual void print() {;}

  // checks if the input/output is open
  virtual Bool_t check() { return kFALSE; }

  // reads versions of parameter containers for an event file
  virtual void readVersions(HRun*) {;}

  // sets global file pointer in ROOT if input/output is a ROOT-file
  // (code in HParRootFileIo)
  virtual void cd() {;}

  // returns the file name or "Oracle"
  const Char_t* getInputName() { return inputName.Data(); }

  // set and get for flag autoWritable
  void setAutoWritable(Bool_t f=kTRUE) {autoWritable=f;}
  Bool_t isAutoWritable() {return autoWritable;}

  // returns the list of runs for a specified experiment and range
  // is only implemented by HParOraIo
  virtual TList* getListOfRuns(const Char_t* ,const Char_t* startAt="",const Char_t* endAt="") {return 0;}  

  ClassDef(HParIo,0) // Base class for all parameter I/Os
};

#endif  /* !HPARIO_H */




 hpario.h:1
 hpario.h:2
 hpario.h:3
 hpario.h:4
 hpario.h:5
 hpario.h:6
 hpario.h:7
 hpario.h:8
 hpario.h:9
 hpario.h:10
 hpario.h:11
 hpario.h:12
 hpario.h:13
 hpario.h:14
 hpario.h:15
 hpario.h:16
 hpario.h:17
 hpario.h:18
 hpario.h:19
 hpario.h:20
 hpario.h:21
 hpario.h:22
 hpario.h:23
 hpario.h:24
 hpario.h:25
 hpario.h:26
 hpario.h:27
 hpario.h:28
 hpario.h:29
 hpario.h:30
 hpario.h:31
 hpario.h:32
 hpario.h:33
 hpario.h:34
 hpario.h:35
 hpario.h:36
 hpario.h:37
 hpario.h:38
 hpario.h:39
 hpario.h:40
 hpario.h:41
 hpario.h:42
 hpario.h:43
 hpario.h:44
 hpario.h:45
 hpario.h:46
 hpario.h:47
 hpario.h:48
 hpario.h:49
 hpario.h:50
 hpario.h:51
 hpario.h:52
 hpario.h:53
 hpario.h:54
 hpario.h:55
 hpario.h:56
 hpario.h:57
 hpario.h:58
 hpario.h:59
 hpario.h:60
 hpario.h:61
 hpario.h:62
 hpario.h:63