ROOT logo
#ifndef HMDCGEOMSTRUCT_H
#define HMDCGEOMSTRUCT_H

#include "TObject.h"
#include "TObjArray.h"
#include "TArrayI.h"
#include "hparset.h"

class HParIo;

class HMdcGeomModStru: public TObject {
protected:
  Int_t nCells[6];  // number of cells in the layers
public:
  HMdcGeomModStru() {}
  ~HMdcGeomModStru() {}
  Int_t operator [](Int_t i) {return nCells[i];}
  void fill(Int_t i, Int_t n) {if (i<6) nCells[i]=n;}
  void clear() {for(Int_t i=0;i<6;i++) nCells[i] = 0;}
  Int_t getSize() {return 6;}
  ClassDef(HMdcGeomModStru,2) // Layer level of the MdcGeomStruct container
};


class HMdcGeomSecStru: public TObject {
protected:
  TObjArray* array;  // pointer array containing HMdcGeomModStru objects
public:
  HMdcGeomSecStru(Int_t n=4);
  ~HMdcGeomSecStru();
  HMdcGeomModStru& operator[](Int_t i) {
    return *static_cast<HMdcGeomModStru*>((*array)[i]);
  }
  Int_t getSize() {return array->GetEntries();}
  ClassDef(HMdcGeomSecStru,2) // Sector level of the MdcGeomStruct container
};


class HMdcGeomStruct : public HParSet {
protected:
  TObjArray* array;     // pointer array containing HMdcGeomSecStru objects
public:
  HMdcGeomStruct(const Char_t* name="MdcGeomStruct",
                 const Char_t* title="Mdc parameters for geometry structure",
                 const Char_t* context="",
                 Int_t n=6);
  ~HMdcGeomStruct();
  HMdcGeomSecStru& operator[](Int_t i) {
    return *static_cast<HMdcGeomSecStru*>((*array)[i]);
  }
  Bool_t init(HParIo* input,Int_t* set);
  Int_t  write(HParIo* output);
  void putAsciiHeader(TString&);
  void readline(const Char_t*, Int_t*);
  Bool_t writeline(Char_t *, Int_t, Int_t, Int_t);
  void clear();
  void printParam();
  void getMaxIndices(TArrayI*);
  Int_t getSize() {return array->GetEntries();}
  ClassDef(HMdcGeomStruct,2) // MdcGeomStruct container for number of wires per layer
};

#endif /* !HMDCGEOMSTRUCT_H */



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