#define TypeLastMessage 5
#define TypeRejectedMessage 6
#define TypeTableStatus 7
+#define TypeSlot 8
class Entry : public Liveness {
/* Records whether the information is still live or has been
superceded by a newer update. */
private:
bool islive;
-
protected:
Slot *parentslot;
public:
Entry(Slot *_parentslot) : islive(true), parentslot(_parentslot) {}
-
+ virtual ~Entry() {}
/**
* Returns true if the Entry object is still live.
*/
*/
virtual void encode(ByteBuffer *bb) = 0;
-
/**
* Returns the size in chars the entry object will take in the char
* array.
virtual int getSize() = 0;
- /**
- * Returns a char encoding the type of the entry object.
- */
- virtual char getType() = 0;
-
-
/**
* Returns a copy of the Entry that can be added to a different slot.
*/
virtual Entry *getCopy(Slot *s) = 0;
+ friend Entry *Entry_decode(Slot *slot, ByteBuffer *bb);
};
/**