2 #ifndef __Commanders_HPP__ 3 #define __Commanders_HPP__ 8 typedef void(*CommandersEventHandlerFunction)(
unsigned long inId,
COMMANDERS_EVENT_TYPE inEvent,
int inData);
26 static int lastEventData;
27 static uint8_t lastConfigAddress;
28 static unsigned long StartStatusLed;
29 static CommandersEventHandlerFunction EventHandler;
41 static inline void begin(
int inStatusLedPin = -1,
unsigned int inBlinkDelay = 1000)
43 #ifdef COMMANDERS_DEBUG_MODE 44 Serial.println(F(
""));
45 Serial.println(F(
"Commanders V1.61.0"));
46 Serial.println(F(
"Created by Thierry Paris."));
47 Serial.println(F(
"(c) Locoduino 2016-2018"));
48 Serial.println(F(
""));
50 Serial.println(F(
"*** Setup Commanders started."));
52 if (inStatusLedPin != -1)
54 StatusLedPin = Arduino_to_GPIO_pin(inStatusLedPin);
55 pinMode2f(StatusLedPin, OUTPUT);
56 BlinkDelay = inBlinkDelay;
65 static inline void begin(CommandersEventHandlerFunction func,
int inStatusLedPin = -1,
unsigned int inBlinkDelay = 1000)
67 Commanders::EventHandler = func;
68 begin(inStatusLedPin, inBlinkDelay);
75 static unsigned long loop();
108 #if defined(COMMANDERS_DEBUG_MODE) || defined(COMMANDERS_PRINT_COMMANDERS) 126 #define COMMANDERS_PRINT_EVENT(id, type, data) Commanders::printEvent(id, type, data); 128 #define COMMANDERS_PRINT_EVENT(id, type, data) static void printEvent(unsigned long inId, COMMANDERS_EVENT_TYPE inEventType, int inEventData)
static void printEventType(COMMANDERS_EVENT_TYPE inEventType, bool inDataFollow)
static void printEventData(COMMANDERS_EVENT_TYPE inEventType, int inEventData)
static unsigned long RaiseEvent(unsigned long inId, COMMANDERS_EVENT_TYPE inEvent = COMMANDERS_EVENT_MOVEPOSITIONID, int inData = 0)
Definition: Commanders.cpp:27
static void StatusBlink()
Definition: Commanders.cpp:18
static uint8_t GetLastConfigAddress()
Definition: Commanders.hpp:98
static void SetLastEventData(int inData)
Definition: Commanders.hpp:93
COMMANDERS_MOVE_TYPE
Definition: Events.h:8
static int GetLastEventData()
Definition: Commanders.hpp:84
static COMMANDERS_EVENT_TYPE GetLastEventType()
Definition: Commanders.hpp:80
static void SetLastEventType(COMMANDERS_EVENT_TYPE inEvent)
Definition: Commanders.hpp:89
static unsigned long loop()
Definition: Commanders.cpp:124
static void begin(CommandersEventHandlerFunction func, int inStatusLedPin = -1, unsigned int inBlinkDelay = 1000)
Definition: Commanders.hpp:65
static void begin(int inStatusLedPin = -1, unsigned int inBlinkDelay = 1000)
Definition: Commanders.hpp:41
static void printEventMoveType(COMMANDERS_MOVE_TYPE inMoveType)
static GPIO_pin_t StatusLedPin
Definition: Commanders.hpp:33
Definition: Commanders.hpp:22
static unsigned int BlinkDelay
Definition: Commanders.hpp:35
COMMANDERS_EVENT_TYPE
Definition: Events.h:25