VLCB
Loading...
Searching...
No Matches
VLCB::LEDUserInterface Class Reference

User interface "service" that communicates with LEDs and a push button. More...

#include <LEDUserInterface.h>

Inheritance diagram for VLCB::LEDUserInterface:
VLCB::Service

Public Member Functions

 LEDUserInterface (byte greenLedPin, byte yellowLedPin, byte pushButtonPin)
virtual VlcbServiceTypes getServiceID () const override
 Return a unique ID for this service.
virtual byte getServiceVersionID () const override
 Return the version of the service specification implemented by this service.
bool isButtonPressed ()
virtual void process () override
 This method that be called regularly from the VLCB core to let the service perform regular tasks.
virtual void processAction (const Action &action) override
 Called when there is an action available.
Public Member Functions inherited from VLCB::Service
void setController (Controller *ctrl)
 Set a pointer to the controller object for use in implementing class.
virtual void begin ()
 This optional method is called at the beginning of the Arduino sketch. Define this method for the service to do any setup required at the beginning.
virtual void reportDiagnostics (byte serviceIndex, byte diagnosticsCode)
 Report a given diagnostic value.
virtual int getDiagnosticCount ()
 report how many diagnostics this service supports.
virtual Data getServiceData ()
 Return Data bytes specific for the implementing service. The meaning of each data byte is defined in the service specification.

Additional Inherited Members

Protected Member Functions inherited from VLCB::Service
bool isThisNodeNumber (unsigned int nodeNumber)
 Helper function to decide if a given node number is the same as that assigned to this node.
Protected Attributes inherited from VLCB::Service
Controllercontroller
 Pointer to the Controller object that can be used by implementing classes.

Detailed Description

User interface "service" that communicates with LEDs and a push button.

This service manages the green and yellow LEDs and mode push button on a VLCB module. The LEDs indicate current mode and any activity. The push button allows the user to change mode. See VLCB Technical Introduction document for details about how the LEDs and push button are used.

Constructor & Destructor Documentation

◆ LEDUserInterface()

VLCB::LEDUserInterface::LEDUserInterface ( byte greenLedPin,
byte yellowLedPin,
byte pushButtonPin )

Member Function Documentation

◆ getServiceID()

virtual VlcbServiceTypes VLCB::LEDUserInterface::getServiceID ( ) const
inlineoverridevirtual

Return a unique ID for this service.

This ID is used by configuration utilities to identify the service type. The service IDs are listed in the VLCB service specifications.

Implements VLCB::Service.

◆ getServiceVersionID()

virtual byte VLCB::LEDUserInterface::getServiceVersionID ( ) const
inlineoverridevirtual

Return the version of the service specification implemented by this service.

This version is used by configuration utilities to identify which features are implemented by this service.

Implements VLCB::Service.

◆ isButtonPressed()

bool VLCB::LEDUserInterface::isButtonPressed ( )

◆ process()

void VLCB::LEDUserInterface::process ( )
overridevirtual

This method that be called regularly from the VLCB core to let the service perform regular tasks.

Implementing service classes shall implement this to perform tasks specific to that service such as polling for changes of input pins. This method does not need to be implemented if there are no such regular tasks for the service.

Reimplemented from VLCB::Service.

◆ processAction()

void VLCB::LEDUserInterface::processAction ( const Action & action)
overridevirtual

Called when there is an action available.

This method does not need to be implemented if the service does react to any actions.

Parameters
actionThe action that the service may have interest in.

Reimplemented from VLCB::Service.


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