Files
Aerofoil/GpShell/GpVOSEventQueue.h

27 lines
461 B
C
Raw Permalink Normal View History

2019-12-21 18:40:17 -05:00
#pragma once
#include <stdint.h>
2021-03-18 17:08:11 -04:00
#include <stddef.h>
2019-12-21 18:40:17 -05:00
#include "IGpVOSEventQueue.h"
2019-12-24 02:35:24 -05:00
#include "GpVOSEvent.h"
2019-12-21 18:40:17 -05:00
class GpVOSEventQueue final : public IGpVOSEventQueue
2019-12-24 02:35:24 -05:00
{
2019-12-21 18:40:17 -05:00
public:
GpVOSEventQueue();
~GpVOSEventQueue();
const GpVOSEvent *GetNext() override;
void DischargeOne() override;
2019-12-24 02:35:24 -05:00
GpVOSEvent *QueueEvent() override;
2019-12-21 18:40:17 -05:00
private:
static const size_t kMaxEvents = 10000;
GpVOSEvent m_events[kMaxEvents];
size_t m_firstEvent;
size_t m_numEventsQueued;
};