|
uniset-algorithms 0.2
|
00001 #ifndef CommonLamp_H_ 00002 #define CommonLamp_H_ 00003 // ----------------------------------------------------------------------------- 00004 #include <list> 00005 #include <UniSetTypes.h> 00006 #include "CommonLamp_SK.h" 00007 // ----------------------------------------------------------------------------- 00013 class CommonLamp: 00014 public CommonLamp_SK 00015 { 00016 public: 00017 CommonLamp( UniSetTypes::ObjectId id, xmlNode* cnode ); 00018 virtual ~CommonLamp(); 00019 00020 static DebugStream dlog; 00021 static void init_dlog( DebugStream& dlog ); 00022 00023 protected: 00024 virtual void step(); 00025 UniSetTypes::LampCommand check(); 00026 virtual void sigterm( int signo ); 00027 void setOut(); 00028 00029 #ifdef ASKMODE 00030 virtual void askSensors( UniversalIO::UIOCommand cmd ); 00031 virtual void sensorInfo( UniSetTypes::SensorMessage* sm ); 00032 virtual void sysCommand( UniSetTypes::SystemMessage* sm ); 00033 #endif 00034 UniSetTypes::LampCommand prev_out; 00035 00036 struct InputInfo 00037 { 00038 InputInfo():sid(UniSetTypes::DefaultObjectId),lstate(UniSetTypes::lmpOFF){} 00039 00040 UniSetTypes::ObjectId sid; 00041 UniSetTypes::LampCommand lstate; 00042 }; 00043 00044 typedef std::list<InputInfo> InputList; 00045 InputList lst; 00047 UniSetTypes::ObjectId outID; 00048 UniSetTypes::ObjectId outID2; 00049 UniversalIO::IOTypes outIOType; 00050 UniSetTypes::LampCommand outState; 00052 private: 00053 }; 00054 // ----------------------------------------------------------------------------- 00055 #endif // CommonLamp_H_ 00056 // -----------------------------------------------------------------------------
1.7.4