#ifndef SLOTBUFFER_H
#define SLOTBUFFER_H
-#include"common.h"
+#include "common.h"
/**
* Circular buffer that holds the live set of slots.
* @version 1.0
*/
-#define SlotBuffer_DEFAULT_SIZE 16
+#define SlotBuffer_DEFAULT_SIZE 4
class SlotBuffer {
- private:
- Array<Slot *> * array;
+private:
+ Array<Slot *> *array;
int32_t head;
int32_t tail;
+ int64_t oldestseqn;
void incrementHead();
void incrementTail();
-
- public:
- int64_t oldestseqn;
+public:
SlotBuffer();
+ ~SlotBuffer();
int32_t size();
int32_t capacity();
void resize(int newsize);
void putSlot(Slot *s);
- Slot * getSlot(int64_t seqnum);
+ Slot *getSlot(int64_t seqnum);
int64_t getOldestSeqNum() { return oldestseqn; }
int64_t getNewestSeqNum() { return oldestseqn + size() - 1;}
};