about summary refs log tree commit diff
path: root/src/engine/packet.h
diff options
context:
space:
mode:
authorMagnus Auvinen <magnus.auvinen@gmail.com>2007-07-22 09:15:34 +0000
committerMagnus Auvinen <magnus.auvinen@gmail.com>2007-07-22 09:15:34 +0000
commit3b1871499c52a41c6fe1e017d6da858b7e70a396 (patch)
tree410cca70987d8789088e25c8a8b5b24eb46a8c06 /src/engine/packet.h
parent1950995bb5137e084b5706275cce1d9d7398fc34 (diff)
downloadzcatch-3b1871499c52a41c6fe1e017d6da858b7e70a396.tar.gz
zcatch-3b1871499c52a41c6fe1e017d6da858b7e70a396.zip
laggometer, smaller gfx fixes
Diffstat (limited to 'src/engine/packet.h')
-rw-r--r--src/engine/packet.h11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/engine/packet.h b/src/engine/packet.h
index 6c92bf31..485dee42 100644
--- a/src/engine/packet.h
+++ b/src/engine/packet.h
@@ -43,6 +43,7 @@ class snapshot_storage
 {
 	struct holder
 	{
+		int64 tagtime;
 		int tick;
 		int data_size;
 		int *data() { return (int *)(this+1); }
@@ -71,15 +72,16 @@ public:
 		buffer.reset();
 	}
 
-	void add(int tick, int data_size, void *data)
+	void add(int tick, int64 tagtime, int data_size, void *data)
 	{
 		holder *h = (holder *)buffer.alloc(sizeof(holder)+data_size);
 		h->tick = tick;
 		h->data_size = data_size;
+		h->tagtime = tagtime;
 		mem_copy(h->data(), data, data_size);
 	}
 	
-	int get(int tick, void **data)
+	int get(int tick, int64 *tagtime, void **data)
 	{
 		ring_buffer::item *i = buffer.first();
 		while(i)
@@ -87,7 +89,10 @@ public:
 			holder *h = (holder *)i->data();
 			if(h->tick == tick)
 			{
-				*data = h->data();
+				if(data)
+					*data = h->data();
+				if(tagtime)
+					*tagtime = h->tagtime;
 				return h->data_size;
 			}