00001
00002
00003 #ifndef SCTPIXELROD_RODSTATUS_H
00004 #define SCTPIXELROD_RODSTATUS_H
00005
00006 #include "RodModule.h"
00007
00008 namespace SctPixelRod {
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 class RodStatus
00022 {
00023 public:
00024 RodStatus();
00025 RodStatus( const RodStatus& );
00026 ~RodStatus();
00027 RodStatus& operator=( const RodStatus&);
00028 friend ostream& operator<<(ostream& os, RodModule& rod);
00029
00030
00031 long getSlotNumber() const { return m_slotNumber; };
00032
00033
00034 long getSerialNumber() const { return m_serialNumber; };
00035
00036
00037 long getNumSlaves() const { return m_numSlaves; };
00038
00039
00040 unsigned long getStatusReg(long regNumber) const {return
00041 m_statusReg[regNumber]; };
00042
00043
00044 unsigned long getCommandReg(long regNumber) const {return
00045 m_commandReg[regNumber]; };
00046
00047
00048 PrimState getPrimState() const {return m_primState;};
00049
00050
00051 TextBuffState getTextState() const {return m_textState;};
00052
00053
00054
00055 void snapShot(RodModule& rod);
00056
00057 private:
00058
00059 unsigned long m_serialNumber;
00060
00061 unsigned long m_slotNumber;
00062
00063 unsigned long m_numSlaves;
00064
00065 unsigned long m_statusReg[3];
00066
00067 unsigned long m_commandReg[2];
00068
00069 PrimState m_primState;
00070
00071 TextBuffState m_textState;
00072
00073 };
00074 };
00075
00076 #endif // SCTPIXELROD_RODSTATUS_H