5 #include "AccessoriesEventStack.hpp" 9 void AccessoriesEventStack::FreeEvent(byte inEvent)
11 id[inEvent] = UNDEFINED_ID;
12 type[inEvent] = ACCESSORIES_EVENT_NONE;
18 for (
int i =0; i < ACCESSSORIES_EVENT_MAXNUMBER; i++)
19 if (this->
id[i] == UNDEFINED_ID)
22 this->type[i] = inType;
23 this->data[i] = inData;
27 #ifdef COMMANDERS_DEBUG_MODE 28 Serial.println(F(
"Error : an event has been lost ! Stack is full !"));
34 for (
int i = 0; i < ACCESSSORIES_EVENT_MAXNUMBER; i++)
35 if (this->
id[i] == UNDEFINED_ID)
43 if (this->
id[0] == UNDEFINED_ID)
47 *inpType = this->type[0];
48 *inpData = this->data[0];
50 memmove(this->
id, this->
id + 1,
sizeof(
unsigned long));
51 memmove(this->type, this->type + 1,
sizeof(ACCESSORIES_EVENT_TYPE));
52 memmove(this->data, this->data + 1,
sizeof(
int));
54 this->
id[ACCESSSORIES_EVENT_MAXNUMBER - 1] = UNDEFINED_ID;
void PushEvent(unsigned long inId, ACCESSORIES_EVENT_TYPE inType, int inData)
void GetEvent(unsigned long *inpId, ACCESSORIES_EVENT_TYPE *inpType, int *inpData)
static AccessoriesEventStack EventsStack