|
UniSet
2.2.1
|
00001 #ifndef TDelay_H_ 00002 #define TDelay_H_ 00003 // -------------------------------------------------------------------------- 00004 #include "PassiveTimer.h" 00005 #include "Element.h" 00006 // --------------------------------------------------------------------------- 00007 // "ON" delay element 00008 // Сбрасывается без задержки.. а срабатывает с задержкой. 00009 class TDelay: 00010 public Element 00011 { 00012 00013 public: 00014 TDelay( Element::ElementID id, timeout_t delayMS = 0, unsigned int inCount = 0 ); 00015 virtual ~TDelay(); 00016 00017 00018 virtual void tick() override; 00019 virtual void setIn( int num, bool state ) override; 00020 virtual bool getOut() override; 00021 virtual std::string getType() override 00022 { 00023 return "Delay"; 00024 } 00025 00026 void setDelay( timeout_t timeMS ); 00027 inline timeout_t getDelay() 00028 { 00029 return delay; 00030 } 00031 00032 protected: 00033 TDelay(): myout(false), delay(0) {}; 00034 00035 bool myout; 00036 PassiveTimer pt; 00037 timeout_t delay; 00038 00039 private: 00040 }; 00041 // --------------------------------------------------------------------------- 00042 #endif 00043 // --------------------------------------------------------------------------- 00044
1.7.6.1