#ifndef HGO4ONLINECONFIG_H
#define HGO4ONLINECONFIG_H
#include "hparcond.h"
#include "TArrayI.h"
class TList;
class TString;
class HMdcDetector;
class HParamList;
class HRuntimeDb;
class HGo4OnlineParam;
class HGo4OnlineParam : public TNamed {
protected:
Int_t nLoop;
Int_t sleep;
Int_t maxrate;
Int_t triggerrefresh;
Int_t startrefresh;
Int_t hodorefresh;
Int_t wallrefresh;
Int_t richrefresh;
Int_t richODrefresh;
Int_t mdcrefresh;
Int_t tofrefresh;
Int_t tofinorefresh;
Int_t showerrefresh;
Int_t physicsrefresh;
Int_t trigger;
Int_t start;
Int_t startRaw;
Int_t startCal;
Int_t startHit;
TArrayI startdetsetup;
Int_t rich;
Int_t richRaw;
Int_t richCal;
Int_t richHit;
Int_t mdc;
Int_t mdcLevel;
TArrayI mdcdetsetup;
Int_t tof;
Int_t tofRaw;
Int_t tofCal;
Int_t tofHit;
Int_t tofino;
Int_t tofinoRaw;
Int_t tofinoCal;
Int_t hodo;
Int_t hodoRaw;
Int_t hodoCal;
Int_t hodoHit;
TArrayI hododetsetup;
TArrayI hodohitf;
Int_t hodohit2start;
Int_t wall;
Int_t wallRaw;
Int_t wallCal;
Int_t wallHit;
Int_t showertofino;
Int_t shower;
Int_t showerRaw;
Int_t showerCal;
Int_t showerHit;
Int_t showerIPUCal;
Int_t showerIPUHit;
Int_t physics;
TArrayI startunp;
TArrayI richunp;
TArrayI mdcunp;
TArrayI tofunp;
TArrayI tofinounp;
TArrayI hodounp;
TArrayI wallunp;
TArrayI showerunp;
public:
HGo4OnlineParam(const Char_t* name ="",
const Char_t* title ="");
~HGo4OnlineParam();
void setTriggerRefresh(Int_t i){triggerrefresh=i;}
Int_t getTriggerRefresh() {return triggerrefresh;}
void setStartRefresh(Int_t i) {startrefresh=i;}
Int_t getStartRefresh() {return startrefresh;}
void setHodoRefresh(Int_t i) {hodorefresh=i;}
Int_t getHodoRefresh() {return hodorefresh;}
void setWallRefresh(Int_t i) {wallrefresh=i;}
Int_t getWallRefresh() {return wallrefresh;}
void setRichRefresh(Int_t i) {richrefresh=i;}
Int_t getRichRefresh() {return richrefresh;}
void setRichODRefresh(Int_t i) {richODrefresh=i;}
Int_t getRichODRefresh() {return richODrefresh;}
void setMdcRefresh(Int_t i) {mdcrefresh=i;}
Int_t getMdcRefresh() {return mdcrefresh;}
void setTofRefresh(Int_t i) {tofrefresh=i;}
Int_t getTofRefresh() {return tofrefresh;}
void setTofinoRefresh(Int_t i) {tofinorefresh=i;}
Int_t getTofinoRefresh() {return tofinorefresh;}
void setShowerRefresh(Int_t i) {showerrefresh=i;}
Int_t getShowerRefresh() {return showerrefresh;}
void setPhysicsRefresh(Int_t i){physicsrefresh=i;}
Int_t getPhysicsRefresh() {return physicsrefresh;}
void setNLoop(Int_t i) {nLoop=i;}
Int_t getNLoop() {return nLoop;}
void setSleep(Int_t i) {sleep=i;}
Int_t getSleep() {return sleep;}
void setMaxRate(Int_t i) {maxrate=i;}
Int_t getMaxRate() {return maxrate;}
void setTrigger(Int_t i) {trigger=i;}
Int_t getTrigger() {return trigger;}
void setStart(Int_t i) {start=i;}
Int_t getStart() {return start;}
void setStartRaw(Int_t i) {startRaw=i;}
Int_t getStartRaw() {return startRaw;}
void setStartCal(Int_t i) {startCal=i;}
Int_t getStartCal() {return startCal;}
void setStartHit(Int_t i) {startHit=i;}
Int_t getStartHit() {return startHit;}
TArrayI* getStartDetSetup() {return &startdetsetup;}
void setupStartDetector();
Bool_t setupStartDetectorHasChanged();
void setHodo(Int_t i) {hodo=i;}
Int_t getHodo() {return hodo;}
void setHodoRaw(Int_t i) {hodoRaw=i;}
Int_t getHodoRaw() {return hodoRaw;}
void setHodoCal(Int_t i) {hodoCal=i;}
Int_t getHodoCal() {return hodoCal;}
void setHodoHit(Int_t i) {hodoHit=i;}
Int_t getHodoHit() {return hodoHit;}
TArrayI* getHodoDetSetup() {return &hododetsetup;}
TArrayI* getHodoHitf() {return &hodohitf;}
void setHodoHit2Start(Int_t i) {hodohit2start=i;}
Int_t getHodoHit2Start() {return hodohit2start;}
void setupHodoDetector();
Bool_t setupHodoDetectorHasChanged();
void setWall(Int_t i) {wall=i;}
Int_t getWall() {return wall;}
void setWallRaw(Int_t i) {wallRaw=i;}
Int_t getWallRaw() {return wallRaw;}
void setWallCal(Int_t i) {wallCal=i;}
Int_t getWallCal() {return wallCal;}
void setWallHit(Int_t i) {wallHit=i;}
Int_t getWallHit() {return wallHit;}
void setRich(Int_t i) {rich=i;}
Int_t getRich() {return rich;}
void setRichRaw(Int_t i) {richRaw=i;}
Int_t getRichRaw() {return richRaw;}
void setRichCal(Int_t i) {richCal=i;}
Int_t getRichCal() {return richCal;}
void setRichHit(Int_t i) {richHit=i;}
Int_t getRichHit() {return richHit;}
void setMdc(Int_t i) {mdc=i;}
Int_t getMdc() {return mdc;}
void setMdcLevel(Int_t i) {mdcLevel=i;}
Int_t getMdcLevel() {return mdcLevel;}
void setMdcDetSetup(TArrayI& array) {mdcdetsetup.Copy(array);}
TArrayI* getMdcDetSetup() {return &mdcdetsetup;}
void setupMdcDetector();
Bool_t setupMdcDetectorHasChanged();
void setTof(Int_t i) {tof=i;}
Int_t getTof() {return tof;}
void setTofRaw(Int_t i) {tofRaw=i;}
Int_t getTofRaw() {return tofRaw;}
void setTofCal(Int_t i) {tofCal=i;}
Int_t getTofCal() {return tofCal;}
void setTofHit(Int_t i) {tofHit=i;}
Int_t getTofHit() {return tofHit;}
void setTofino(Int_t i) {tofino=i;}
Int_t getTofino() {return tofino;}
void setTofinoRaw(Int_t i) {tofinoRaw=i;}
Int_t getTofinoRaw() {return tofinoRaw;}
void setTofinoCal(Int_t i) {tofinoCal=i;}
Int_t getTofinoCal() {return tofinoCal;}
void setShowerTofino(Int_t i){showertofino=i;}
Int_t getShowerTofino() {return showertofino;}
void setShower(Int_t i) {shower=i;}
Int_t getShower() {return shower;}
void setShowerRaw(Int_t i) {showerRaw=i;}
Int_t getShowerRaw() {return showerRaw;}
void setShowerCal(Int_t i) {showerCal=i;}
Int_t getShowerCal() {return showerCal;}
void setShowerHit(Int_t i) {showerHit=i;}
Int_t getShowerHit() {return showerHit;}
void setShowerIPUCal(Int_t i){showerIPUCal = i;};
Int_t getShowerIPUCal(void) {return showerIPUCal;};
void setShowerIPUHit(Int_t i){showerIPUHit = i;};
Int_t getShowerIPUHit(void) {return showerIPUHit;};
void setPhysics(Int_t i) {physics=i;}
Int_t getPhysics() {return physics;}
TArrayI* getStartUnp() {return &startunp;}
TArrayI* getHodoUnp() {return &hodounp;}
TArrayI* getWallUnp() {return &wallunp;}
TArrayI* getRichUnp() {return &richunp;}
TArrayI* getMdcUnp() {return &mdcunp;}
TArrayI* getTofUnp() {return &tofunp;}
TArrayI* getTofinoUnp() {return &tofinounp;}
TArrayI* getShowerUnp() {return &showerunp;}
Int_t getTriggerMaxLevel() {return trigger;}
void setTriggerMaxLevel(Int_t i){trigger=i;}
Int_t getStartMaxLevel()
{
if(startHit==1) return 3;
else if(startCal==1)return 2;
else if(startRaw==1)return 1;
else return 0;
}
void setStartMaxLevel(Int_t i)
{
if(i==3) {startHit=startCal=startRaw=1;}
else if(i==2){startHit=0;startCal=startRaw=1;}
else if(i==1){startHit=startCal=0;startRaw=1;}
else if(i==0){startHit=startCal=startRaw=start=0;}
}
Int_t getHodoMaxLevel()
{
if(hodoHit==1) return 3;
else if(hodoCal==1)return 2;
else if(hodoRaw==1)return 1;
else return 0;
}
void setHodoMaxLevel(Int_t i)
{
if(i==3) {hodoHit=hodoCal=hodoRaw=1;}
else if(i==2){hodoHit=0;hodoCal=hodoRaw=1;}
else if(i==1){hodoHit=hodoCal=0;hodoRaw=1;}
else if(i==0){hodoHit=hodoCal=hodoRaw=hodo=0;}
}
Int_t getWallMaxLevel()
{
if(wallHit==1) return 3;
else if(wallCal==1)return 2;
else if(wallRaw==1)return 1;
else return 0;
}
void setWallMaxLevel(Int_t i)
{
if(i==3) {wallHit=wallCal=wallRaw=1;}
else if(i==2){wallHit=0;wallCal=wallRaw=1;}
else if(i==1){wallHit=wallCal=0;wallRaw=1;}
else if(i==0){wallHit=wallCal=wallRaw=wall=0;}
}
Int_t getRichMaxLevel()
{
if(richHit==1) return 3;
else if(richCal==1)return 2;
else if(richRaw==1)return 1;
else return 0;
}
void setRichMaxLevel(Int_t i)
{
if(i==3) {richHit=richCal=richRaw=1;}
else if(i==2){richHit=0;richCal=richRaw=1;}
else if(i==1){richHit=richCal=0;richRaw=1;}
else if(i==0){richHit=richCal=richRaw=rich=0;}
}
Int_t getMdcMaxLevel() {return mdcLevel;}
void setMdcMaxLevel(Int_t i) {mdcLevel=i;}
Int_t getTofMaxLevel()
{
if(tofHit==1)return 3;
if(tofCal==1)return 2;
if(tofRaw==1)return 1;
else return 0;
}
void setTofMaxLevel(Int_t i)
{
if(i==3) {tofHit=tofCal=tofRaw=1;}
else if(i==2){tofHit=0;tofCal=tofRaw=1;}
else if(i==1){tofHit=tofCal=0;tofRaw=1;}
else if(i==0){tofHit=tofCal=tofRaw=tof=0;}
}
Int_t getTofinoMaxLevel()
{
if(tofinoCal==1)return 2;
if(tofinoRaw==1)return 1;
else return 0;
}
void setTofinoMaxLevel(Int_t i)
{
if(i==2) {tofinoCal=tofinoRaw=1;}
else if(i==1){tofinoCal=0;tofinoRaw=1;}
else if(i==0){tofinoCal=tofinoRaw=tofino=0;}
}
Int_t getShowerTofinoMaxLevel() {return showertofino;}
void setTofinoShowerMaxLevel(Int_t i){showertofino=i;}
void setShowerMaxLevel(Int_t i)
{
if(i==3) {showerHit=showerCal=showerRaw=1;}
else if(i==2){showerHit=0;showerCal=showerRaw=1;}
else if(i==1){showerHit=showerCal=0;showerRaw=1;}
else if(i==0){showerHit=showerCal=showerRaw=shower=0;}
}
Int_t getShowerMaxLevel()
{
if(showerHit==1)return 3;
if(showerCal==1)return 2;
if(showerRaw==1)return 1;
else return 0;
}
void putParams(HParamList*);
Bool_t getParams(HParamList*);
void clear();
void printParam(void);
void printStatus(void);
void copySet(HGo4OnlineParam*);
Bool_t isEqual(HGo4OnlineParam*,Int_t det=0);
ClassDef(HGo4OnlineParam,1)
};
class HGo4OnlineConfig : public HParCond {
protected:
HMdcDetector* fMdc;
static HGo4OnlineConfig* fGo4OnlineConfig;
HGo4OnlineParam* param;
public:
HGo4OnlineConfig(const Char_t* name ="Go4OnlineConfig",
const Char_t* title ="parameters for Go4 online configuration",
const Char_t* context="Go4OnlineConfigProduction");
~HGo4OnlineConfig();
static HGo4OnlineConfig* getExObject();
static HGo4OnlineConfig* getObject();
void setGo4ParIo(HRuntimeDb*);
Bool_t init(HParIo*, Int_t*);
Bool_t initStandAlone();
Int_t write(HParIo*);
void putParams(HParamList*);
Bool_t getParams(HParamList*);
void clear();
void printParam(void);
void printStatus(void);
HGo4OnlineParam* getGo4OnlineParam(){return param;}
ClassDef(HGo4OnlineConfig,1)
};
#endif /*!HGO4ONLINECONFIG_H*/
Last change: Sat May 22 12:56:59 2010
Last generated: 2010-05-22 12:56
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.