00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef STSVTCONFIG_HH
00028 #define STSVTCONFIG_HH
00029
00030 #define MAX_NUMBER_OF_BARRELS 3
00031
00032 #include "StObject.h"
00033 #include "TString.h"
00034
00035 class StSvtConfig: public StObject
00036 {
00037 public:
00038 StSvtConfig();
00039 virtual ~StSvtConfig();
00040
00041 StSvtConfig(const StSvtConfig&);
00042 StSvtConfig& operator = (const StSvtConfig&);
00043
00044 int getNumberOfBarrels() {return mNumberOfBarrels;}
00045 int getNumberOfLadders(int barrel) {return mNumberOfLadders[barrel-1];}
00046 int getNumberOfWafers(int barrel) {return mNumberOfWafers[barrel-1];}
00047 int getNumberOfHybrids() {return mNumberOfHybrids;}
00048 int getTotalNumberOfHybrids() {return mTotalNumberOfHybrids;}
00049
00050 int getNumberOfAnodes() {return mNumberOfAnodes;}
00051 int getNumberOfTimeBins() {return mNumberOfTimeBins;}
00052
00053 void setNumberOfBarrels(int barrels) {mNumberOfBarrels = barrels;}
00054 void setNumberOfLadders(int barrel, int ladders) {mNumberOfLadders[barrel-1] = ladders;}
00055 void setNumberOfWafers(int barrel, int wafers) {mNumberOfWafers[barrel-1] = wafers;}
00056 void setNumberOfHybrids(int hybrids) {mNumberOfHybrids = hybrids;}
00057 void setTotalNumberOfHybrids(int hybrids) {mTotalNumberOfHybrids = hybrids;}
00058
00059 void setNumberOfAnodes(int anodes) {mNumberOfAnodes = anodes;}
00060 void setNumberOfTimeBins(int timeBins) {mNumberOfTimeBins = timeBins;}
00061
00062 void setConfiguration();
00063 void setConfiguration(const char* config);
00064
00065 int getHybridIndex(int barrelID, int ladderID, int waferID, int hybridID);
00066 int getProperHybridIndex(int barrelID, int ladderID, int waferID, int hybridID);
00067 int getBarrel(int index);
00068 int getLayer(int index);
00069 int getLadder(int index);
00070 int getWafer(int index);
00071 int getHybrid(int index);
00072
00073 const char* getConfiguration();
00074
00075 protected:
00076 int mNumberOfBarrels;
00077 int mNumberOfLadders[MAX_NUMBER_OF_BARRELS];
00078 int mNumberOfWafers[MAX_NUMBER_OF_BARRELS];
00079 int mNumberOfHybrids;
00080
00081 int mTotalNumberOfHybrids;
00082
00083 int mNumberOfAnodes;
00084 int mNumberOfTimeBins;
00085
00086 TString mConfig;
00087
00088 ClassDef(StSvtConfig,1)
00089 };
00090
00091 #endif