VLCB
Toggle main menu visibility
Loading...
Searching...
No Matches
EventConsumerService.h
Go to the documentation of this file.
1
// Copyright (C) Martin Da Costa 2023 (martindc.merg@gmail.com)
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 "
Service.h
"
9
#include <
vlcbdefs.hpp
>
10
11
namespace
VLCB
{
12
13
struct
VlcbMessage
;
24
class
EventConsumerService
:
public
Service
25
{
26
public
:
29
void
setEventHandler
(
void
(*fptr)(
byte
index,
const
VlcbMessage
*msg));
31
virtual
void
processAction
(
const
Action
&action)
override
;
32
33
virtual
VlcbServiceTypes
getServiceID
()
const override
34
{
35
return
SERVICE_ID_CONSUMER
;
36
}
37
virtual
byte
getServiceVersionID
()
const override
38
{
39
return
1;
40
}
41
42
private
:
43
void (*eventhandler)(
byte
index,
const
VlcbMessage
*msg) =
nullptr
;
44
void
handleConsumedMessage(
const
VlcbMessage
*msg);
45
void
processAccessoryEvent(
const
VlcbMessage
*msg,
unsigned
int
nn,
unsigned
int
en);
46
47
protected
:
48
unsigned
int
diagEventsConsumed
= 0;
49
unsigned
int
diagEventsAcknowledged
= 0;
51
};
52
53
}
// VLCB
Service.h
VLCB::EventConsumerService
Service for consuming events.
Definition
EventConsumerService.h:25
VLCB::EventConsumerService::diagEventsConsumed
unsigned int diagEventsConsumed
Definition
EventConsumerService.h:48
VLCB::EventConsumerService::setEventHandler
void setEventHandler(void(*fptr)(byte index, const VlcbMessage *msg))
register the user handler for learned events
Definition
EventConsumerService.cpp:17
VLCB::EventConsumerService::processAction
virtual void processAction(const Action &action) override
Called when there is an action available.
Definition
EventConsumerService.cpp:51
VLCB::EventConsumerService::getServiceVersionID
virtual byte getServiceVersionID() const override
Return the version of the service specification implemented by this service.
Definition
EventConsumerService.h:37
VLCB::EventConsumerService::getServiceID
virtual VlcbServiceTypes getServiceID() const override
Return a unique ID for this service.
Definition
EventConsumerService.h:33
VLCB::EventConsumerService::diagEventsAcknowledged
unsigned int diagEventsAcknowledged
Definition
EventConsumerService.h:49
VLCB::Service
Interface base class for all VLCB services.
Definition
Service.h:25
VLCB
Definition
AbstractEventTeachingService.cpp:13
VLCB::Action
An action to be performed.
Definition
Controller.h:86
VLCB::VlcbMessage
VLCB message type.
Definition
Controller.h:38
vlcbdefs.hpp
VlcbServiceTypes
VlcbServiceTypes
Definition
vlcbdefs.hpp:487
SERVICE_ID_CONSUMER
@ SERVICE_ID_CONSUMER
Definition
vlcbdefs.hpp:497
src
EventConsumerService.h
Generated by
1.18.0