00001
00002 #ifndef SLOWCONTROLENTRY_HH
00003 #define SLOWCONTROLENTRY_HH
00004
00005 #include <map>
00006 #include "mTypes.h"
00007
00008 class ChamberSlowControl;
00009 class BoardSlowControl;
00010 class PMSlowControl;
00011 class PMParams_t;
00012 class MeshParams_t;
00013 class DriftParams_t;
00014
00015
00016
00017
00018 class SlowControlEntry {
00019 friend std::ostream& operator <<(std::ostream& out, const SlowControlEntry& x);
00020
00021
00022 public:
00023 SlowControlEntry();
00024 ~SlowControlEntry();
00025 SlowControlEntry(const SlowControlEntry& aSce);
00026 SlowControlEntry& operator=(const SlowControlEntry& aSce);
00027
00028
00029 const BoardSlowControl& getBoard(const ui32 chamberId, const ui32 dif_id, const ui32 id) const ;
00030 const PMSlowControl& getPM(const ui32 id) const ;
00031
00032 void setBoardParams(ui32 chamberId, ui32 difId, ui32 boardId, BoardSlowControl& boardSC);
00033 void setPmParams(const ui32 id,PMSlowControl& pmSC);
00034
00035 void setTimeStamp(double value) { timeStamp = value; };
00036 void setPressure(float value) { pressure = value; };
00037 void setOverPressure(float value){ overPressure = value; };
00038 void setTemperature(float value) { temperature = value; };
00039
00040
00041 double getTimeStamp(void) const { return timeStamp;};
00042 float getPressure(void) const { return pressure;};
00043 float getOverPressure(void) const { return overPressure;};
00044 float getTemperature(void) const { return temperature;};
00045
00046
00047
00048
00049 private:
00050 double timeStamp;
00051 float pressure;
00052 float overPressure;
00053 float temperature;
00054 std::map<ui32, std::map<ui32, std::map<ui32, BoardSlowControl>* >* > boardMap;
00055 std::map<ui32, PMSlowControl> pmMap;
00056 };
00057
00058 #endif