ROOT logo
#ifndef HDETPARROOTFILEIO_H
#define HDETPARROOTFILEIO_H

#include "hdetpario.h"
#include "TFile.h"
#include "TArrayI.h"

class HParRootFile;
class HDetector;
class HParSet;
class HDetGeomPar;

class HDetParRootFileIo : public HDetParIo {
protected:
  HParRootFile* pFile;    // pointer to parameter ROOT file
  TArrayI* modulesFound;  // array of modules found in the Root file
  TArrayI* initModules;   // array of modules initialized from Root file
  Bool_t isActiv;         // flag is set kTRUE by function readModules()
public:
  HDetParRootFileIo(HParRootFile* f);
  virtual ~HDetParRootFileIo();
  virtual Bool_t read(HParSet*);
  Int_t write(HParSet*);
  Bool_t write(HDetector*);
  void printInfo(const Text_t* msg);
  void resetActivFlag(Bool_t f=kFALSE) {isActiv=f;}
  Bool_t read(HDetGeomPar*,Int_t*);
protected:
  Int_t readModules(const Text_t* detName);
  Int_t findInputVersion(const Text_t* contName);
  Int_t getMaxVersion(const Text_t* contName);
  TObject* findContainer(const Text_t* contName, Int_t version);

  ClassDef(HDetParRootFileIo,0) // detector base class for parameter I/O from ROOT file
};

#endif  /* !HDETPARROOTFILEIO_H */

 hdetparrootfileio.h:1
 hdetparrootfileio.h:2
 hdetparrootfileio.h:3
 hdetparrootfileio.h:4
 hdetparrootfileio.h:5
 hdetparrootfileio.h:6
 hdetparrootfileio.h:7
 hdetparrootfileio.h:8
 hdetparrootfileio.h:9
 hdetparrootfileio.h:10
 hdetparrootfileio.h:11
 hdetparrootfileio.h:12
 hdetparrootfileio.h:13
 hdetparrootfileio.h:14
 hdetparrootfileio.h:15
 hdetparrootfileio.h:16
 hdetparrootfileio.h:17
 hdetparrootfileio.h:18
 hdetparrootfileio.h:19
 hdetparrootfileio.h:20
 hdetparrootfileio.h:21
 hdetparrootfileio.h:22
 hdetparrootfileio.h:23
 hdetparrootfileio.h:24
 hdetparrootfileio.h:25
 hdetparrootfileio.h:26
 hdetparrootfileio.h:27
 hdetparrootfileio.h:28
 hdetparrootfileio.h:29
 hdetparrootfileio.h:30
 hdetparrootfileio.h:31
 hdetparrootfileio.h:32
 hdetparrootfileio.h:33
 hdetparrootfileio.h:34
 hdetparrootfileio.h:35
 hdetparrootfileio.h:36
 hdetparrootfileio.h:37
 hdetparrootfileio.h:38