uniset-algorithms  0.2
CommonHorn.h
00001 #ifndef CommonHorn_H_
00002 #define CommonHorn_H_
00003 // -----------------------------------------------------------------------------
00004 #include <list>
00005 #include <UniSetTypes.h>
00006 #include "CommonHorn_SK.h"
00007 // -----------------------------------------------------------------------------
00012 class CommonHorn:
00013     public CommonHorn_SK
00014 {
00015     public:
00016         CommonHorn( UniSetTypes::ObjectId id, xmlNode* cnode );
00017         virtual ~CommonHorn();
00018         
00019     protected:
00020         virtual void step();
00021         bool check();
00022         virtual void sigterm( int signo );
00023 
00024 #ifdef ASKMODE
00025         virtual void askSensors( UniversalIO::UIOCommand cmd );
00026         virtual void sensorInfo( UniSetTypes::SensorMessage* sm );
00027         virtual void sysCommand( UniSetTypes::SystemMessage* sm );
00028 #endif
00029         bool prev_out;
00030         struct InputInfo
00031         {
00032             InputInfo():sid(UniSetTypes::DefaultObjectId),state(false){}
00033 
00034             UniSetTypes::ObjectId sid;
00035             bool state;
00036         };
00037 
00038         typedef std::list<InputInfo> InputList; 
00039         InputList lst; 
00041         UniSetTypes::ObjectId outID; 
00044     private:
00045 };
00046 // -----------------------------------------------------------------------------
00047 #endif // CommonHorn_H_
00048 // -----------------------------------------------------------------------------