BeeeOn Gateway  v2020.3.1-2-g6f737dc
Platform to interconnect the IoT world
Public Member Functions | Protected Member Functions
BeeeOn::AbstractZWaveNetwork Class Reference

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>

Inheritance diagram for BeeeOn::AbstractZWaveNetwork:
BeeeOn::ZWaveNetwork BeeeOn::Loggable BeeeOn::OZWNetwork

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)
 

Detailed Description

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).

Member Function Documentation

void AbstractZWaveNetwork::interrupt ( )
overridevirtual

Interrupt the pollEvent() operation to return regardless of the state of the m_eventsQueue.

Implements BeeeOn::ZWaveNetwork.

Reimplemented in BeeeOn::OZWNetwork.

void AbstractZWaveNetwork::notifyEvent ( const PollEvent event)
protected

This method enqueues the given event in the m_eventsQueue and wake ups the pollEvent() operation.

ZWaveNetwork::PollEvent AbstractZWaveNetwork::pollEvent ( const Poco::Timespan &  timeout)
overridevirtual

Implements the pollEvent() operation generically. It just waits on the m_event and reads events from the m_eventsQueue.

Implements BeeeOn::ZWaveNetwork.


The documentation for this class was generated from the following files: