BeeeOn Gateway
v2020.3.1-2-g6f737dc
Platform to interconnect the IoT world
|
Abstract implementation of the ZWaveNetwork class. It provides a pre-implemented polling mechanism. It is assumed that exactly one thread calls the method pollEvent() periodically to read the events (using multiple threads might be an issue because we use Poco::Event). More...
#include <AbstractZWaveNetwork.h>
Public Member Functions | |
PollEvent | pollEvent (const Poco::Timespan &timeout) override |
void | interrupt () override |
Public Member Functions inherited from BeeeOn::ZWaveNetwork | |
virtual void | startInclusion ()=0 |
Starts the Z-Wave network node inclusion process. More... | |
virtual void | cancelInclusion ()=0 |
Cancel inclusion if it is running. | |
virtual void | startRemoveNode ()=0 |
Start node removal process in the Z-Wave network. More... | |
virtual void | cancelRemoveNode ()=0 |
Cancel remove node if it is running. | |
virtual void | postValue (const ZWaveNode::Value &)=0 |
Post the given value into the Z-Wave network. There is no implicit feedback about the result status. More... | |
Protected Member Functions | |
void | notifyEvent (const PollEvent &event) |
Protected Member Functions inherited from BeeeOn::Loggable | |
void | setupLogger (Poco::Logger *logger=0) const |
Poco::Logger & | logger () const |
Loggable (const ClassInfo &info) | |
Loggable (const std::type_info &info) | |
Additional Inherited Members | |
Public Types inherited from BeeeOn::ZWaveNetwork | |
typedef Poco::SharedPtr < ZWaveNetwork > | Ptr |
Static Protected Member Functions inherited from BeeeOn::Loggable | |
static Poco::Logger & | forMethod (const char *name) |
static Poco::Logger & | forClass (const ClassInfo &info) |
static Poco::Logger & | forClass (const std::type_info &info) |
template<typename T > | |
static Poco::Logger & | forInstance (const T *i) |
static void | configureSimple (Poco::Logger &logger, const std::string &level) |
static void | logException (Poco::Logger &logger, const Poco::Message::Priority priority, const Poco::Exception &e, const char *file, size_t line) |
Abstract implementation of the ZWaveNetwork class. It provides a pre-implemented polling mechanism. It is assumed that exactly one thread calls the method pollEvent() periodically to read the events (using multiple threads might be an issue because we use Poco::Event).
|
overridevirtual |
Interrupt the pollEvent() operation to return regardless of the state of the m_eventsQueue.
Implements BeeeOn::ZWaveNetwork.
Reimplemented in BeeeOn::OZWNetwork.
|
protected |
This method enqueues the given event in the m_eventsQueue and wake ups the pollEvent() operation.
|
overridevirtual |
Implements the pollEvent() operation generically. It just waits on the m_event and reads events from the m_eventsQueue.
Implements BeeeOn::ZWaveNetwork.