IO::RFSwitch::Controller Class Reference
Controller for 433MHz transmitter. More...
#include <Controller.h>
Inheritance diagram for IO::RFSwitch::Controller:
Collaboration diagram for IO::RFSwitch::Controller:
Public Member Functions | |
Controller (uint8_t instance, uint8_t outputPin, bool outputInvert) | |
const FlashString & | classname () const override |
Get the class name for this Controller. More... | |
void | handleEvent (IO::Request *request, Event event) override |
Implementations override this method to process events as they pass through the stack. More... | |
![]() | |
Controller (uint8_t instance) | |
Construct a controller instance. More... | |
virtual | ~Controller () |
uint8_t | getInstance () const |
Get the controller instance number. More... | |
Device::OwnedList & | getDevices () |
Get list of devices for this controller. More... | |
void | freeDevices () |
Destroy all devices for this controller. More... | |
ErrorCode | createDevice (const char *id, JsonObjectConst config, Device *&device) |
Create a new devicce. More... | |
template<class DeviceClass > | |
ErrorCode | createDevice (const char *id, const typename DeviceClass::Config &config, DeviceClass *&device) |
Create a new device as a concrete type. More... | |
Device * | findDevice (const String &id) |
Locate a device from its identifier. More... | |
virtual void | start () |
Start the controller. More... | |
virtual void | stop () |
Stop all controllers. More... | |
virtual bool | canStop () const |
Check if it's OK to stop this controller. More... | |
const CString & | getId () const |
Get the fully-qualified unique controller identifier. More... | |
bool | operator== (const String &id) const |
![]() | |
Controller * | getNext () const |
bool | insertAfter (Controller *object) |
Iterator | begin () const |
Iterator | end () const |
Iterator | cbegin () const |
Iterator | cend () const |
![]() | |
virtual | ~LinkedObject () |
virtual LinkedObject * | next () const |
bool | insertAfter (LinkedObject *object) |
bool | operator== (const LinkedObject &other) const |
bool | operator!= (const LinkedObject &other) const |
Additional Inherited Members | |
![]() | |
using | List = LinkedObjectListTemplate< Controller > |
![]() | |
using | Iterator = IteratorTemplate< Controller, Controller *, Controller & > |
using | ConstIterator = IteratorTemplate< const Controller, const Controller *, const Controller & > |
![]() | |
static void | registerDeviceClass (const Device::Factory &factory) |
Register a device factory. More... | |
![]() | |
void | submit (Request *request) |
Queue a request. More... | |
void | checkDevices () |
void | resetTransactionTime () |
Detailed Description
Controller for 433MHz transmitter.
Protocol is flexible but tested only with i-Lumos light switches. Written specifically for ESP8266 and uses the hardware timer to generate PWM signal via interrupts.
Constructor & Destructor Documentation
◆ Controller()
|
inline |
Member Function Documentation
◆ classname()
|
inlineoverridevirtual |
Get the class name for this Controller.
Implements IO::Controller.
◆ handleEvent()
|
overridevirtual |
Implementations override this method to process events as they pass through the stack.
Reimplemented from IO::Controller.
The documentation for this class was generated from the following file: