uniset-algorithms  0.2
APSPanel.h
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 //      PassiveTimer pt;
00150 };
00151 // -----------------------------------------------------------------------------
00152 #endif // APSPanel_H_
00153 // -----------------------------------------------------------------------------