00001 #ifndef APSLamp_H_
00002 #define APSLamp_H_
00003
00004 #include <Trigger.h>
00005 #include <UniSetTypes.h>
00006 #include <PassiveTimer.h>
00007 #include <extensions/SMInterface.h>
00008
00010 class APSLamp
00011 {
00012 public:
00013 APSLamp();
00014 virtual ~APSLamp();
00015
00016 virtual void confirm( bool state );
00017
00018 inline UniSetTypes::LampCommand get()
00019 {
00020 return lmpState;
00021 }
00022
00023 virtual void step( bool state );
00024
00025
00026 inline bool change(){ return trChange.change( lmpState ); };
00027
00028 protected:
00029 virtual UniSetTypes::LampCommand check();
00030
00031 Trigger trOn;
00032 Trigger trChange;
00033 UniSetTypes::LampCommand lmpState;
00034 bool apsState;
00035
00036 private:
00037 };
00038
00039 #endif // APSLamp_H_
00040