00001 #ifndef APSPanel_H_
00002 #define APSPanel_H_
00003
00004 #include <string>
00005 #include <list>
00006 #include "APSLamp.h"
00007 #include "DEIFLamp.h"
00008 #include "Horn.h"
00009 #include "FlashLamp.h"
00010 #include "ConfirmLamp.h"
00011 #include "APSPanel_SK.h"
00012
00117 class APSPanel:
00118 public APSPanel_SK
00119
00120 {
00121 public:
00122 APSPanel( UniSetTypes::ObjectId id, xmlNode* cnode );
00123 virtual ~APSPanel();
00124
00125 static DebugStream dlog;
00126 static void init_dlog( DebugStream& dlog );
00127
00128 protected:
00129 virtual void step();
00130 void init( xmlNode* cnode );
00131 virtual void sigterm( int signo );
00132 void setControl( bool state );
00133
00134 #ifdef ASKMODE
00135 virtual void askSensors( UniversalIO::UIOCommand cmd );
00136 virtual void sensorInfo( UniSetTypes::SensorMessage* sm );
00137 virtual void sysCommand( UniSetTypes::SystemMessage* sm );
00138 #endif
00139
00140 private:
00141 typedef std::list<APSLamp*> LampList;
00142 LampList lmpList;
00143
00144 ConfirmLamp clamp;
00145 Horn horn;
00146 FlashLamp flamp;
00147 Trigger trHornReset;
00148 bool out_horn;
00149
00150 };
00151
00152 #endif // APSPanel_H_
00153