Libraries/IOControl/include/IO/Custom/Device.h
Go to the documentation of this file.
A Controller is responsible for serialising requests for a physical bus.
Definition: IOControl/include/IO/Controller.h:42
Controller for PWM output.
Definition: IOControl/include/IO/Custom/Controller.h:35
Definition: Libraries/IOControl/include/IO/Custom/Device.h:35
IO::Device * createDevice(IO::Controller &controller, const char *id) const override
Create a new device instance.
Definition: Libraries/IOControl/include/IO/Custom/Device.h:37
const FlashString & controllerClass() const override
Return the expected controller type for this device class, e.g. 'rs485'.
Definition: Libraries/IOControl/include/IO/Custom/Device.h:42
Definition: Libraries/IOControl/include/IO/Custom/Device.h:30
virtual ErrorCode execute(Request &request)=0
const DeviceType type() const override
Definition: Libraries/IOControl/include/IO/Custom/Device.h:50
IO::Request * createRequest() override
Create a request object for this device.
virtual void getRequestJson(const Request &request, JsonObject json) const
virtual int getNodeValue(IO::DevNode node) const
Definition: Libraries/IOControl/include/IO/Custom/Device.h:57
Definition: IOControl/include/IO/Custom/Request.h:30
Abstract class which allows device instances to be created.
Definition: Libraries/IOControl/include/IO/Device.h:45
Handles requests for a specific device; the requests are executed by the relevant controller.
Definition: Libraries/IOControl/include/IO/Device.h:36
Device(Controller &controller, const char *id)
Device constructor.
Definition: Libraries/IOControl/include/IO/Device.h:110
Controller & controller
Definition: Libraries/IOControl/include/IO/Device.h:234
Request represents a single user request/response over a bus.
Definition: IOControl/include/IO/Request.h:80
Json json
Definition: IOControl/include/IO/Custom/Controller.h:25
@ Custom