VLCB
Loading...
Searching...
No Matches
SerialUserInterface.h
Go to the documentation of this file.
1// Copyright (C) Sven Rosvall (sven@rosvall.ie)
2// This file is part of VLCB-Arduino project on https://github.com/SvenRosvall/VLCB-Arduino
3// Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
4// The full licence can be found at: http://creativecommons.org/licenses/by-nc-sa/4.0/
5
6#pragma once
7
8#include <Arduino.h>
9#include <Stream.h>
10
11#include "Service.h"
12#include "Configuration.h"
13#include "Transport.h"
14
15namespace VLCB
16{
23{
24public:
25 SerialUserInterface(Stream& _serial = Serial) : serial(_serial) {}
26
28 virtual VlcbServiceTypes getServiceID() const override { return SERVICE_ID_NONE; };
29 virtual byte getServiceVersionID() const override { return 1; };
30
31 virtual void process() override;
32 virtual void processAction(const Action &action) override;
34
35private:
36 Stream& serial;
37
38 void handleAction(const Action &action);
39 void processSerialInput();
40 void indicateMode(VlcbModeParams i);
41};
42
43}
SerialUserInterface(Stream &_serial=Serial)
Definition SerialUserInterface.h:25
virtual void process() override
This method that be called regularly from the VLCB core to let the service perform regular tasks.
Definition SerialUserInterface.cpp:15
virtual byte getServiceVersionID() const override
Return the version of the service specification implemented by this service.
Definition SerialUserInterface.h:29
virtual void processAction(const Action &action) override
Called when there is an action available.
Definition SerialUserInterface.cpp:20
virtual VlcbServiceTypes getServiceID() const override
Return a unique ID for this service.
Definition SerialUserInterface.h:28
Interface base class for all VLCB services.
Definition Service.h:25
Definition AbstractEventTeachingService.cpp:13
An action to be performed.
Definition Controller.h:51
VlcbModeParams
Definition vlcbdefs.hpp:562
VlcbServiceTypes
Definition vlcbdefs.hpp:487
@ SERVICE_ID_NONE
Definition vlcbdefs.hpp:491