Accessories
Arduino for motors and lights library.
AccessoriesEventStack.hpp
1 //-------------------------------------------------------------------
2 #ifndef __AccessoriesEventStack_Hpp__
3 #define __AccessoriesEventStack_Hpp__
4 //-------------------------------------------------------------------
5 
6 #include <Accessories.h>
7 
8 // Commanders dont have need for more events at this moment : more events, more memory consumed !
9 // A debug message will be shown if an event is lost because of this tiny size !
10 #define ACCESSSORIES_EVENT_MAXNUMBER 3
11 
28 {
29 private:
30  unsigned long id[ACCESSSORIES_EVENT_MAXNUMBER];
31  ACCESSORIES_EVENT_TYPE type[ACCESSSORIES_EVENT_MAXNUMBER];
32  int data[ACCESSSORIES_EVENT_MAXNUMBER];
33 
35  {
36  for (byte i = 0; i < ACCESSSORIES_EVENT_MAXNUMBER; i++)
37  FreeEvent(i);
38  }
39 
40  void FreeEvent(byte inEvent);
41 
42 public:
45 
51  void PushEvent(unsigned long inId, ACCESSORIES_EVENT_TYPE inType, int inData);
58  void GetEvent(unsigned long *inpId, ACCESSORIES_EVENT_TYPE *inpType, int *inpData);
62  byte GetFreeEventIndex();
63 };
64 
65 
66 #endif
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