about summary refs log tree commit diff
path: root/src/engine/client/client.h
diff options
context:
space:
mode:
authoroy <Tom_Adams@web.de>2010-12-11 18:55:28 +0100
committeroy <Tom_Adams@web.de>2010-12-11 18:55:28 +0100
commita0985314c92cd1422c994f81ec22ab2a9c5dcd07 (patch)
tree33eccfa457248e732ce57bb8bc45623f8447e726 /src/engine/client/client.h
parent4756c031c5bfd931009d16ff4bb84be912508422 (diff)
downloadzcatch-a0985314c92cd1422c994f81ec22ab2a9c5dcd07.tar.gz
zcatch-a0985314c92cd1422c994f81ec22ab2a9c5dcd07.zip
made it possible to "recycle" auto recorded demos
Diffstat (limited to 'src/engine/client/client.h')
-rw-r--r--src/engine/client/client.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/engine/client/client.h b/src/engine/client/client.h
index 1a35788b..8486e481 100644
--- a/src/engine/client/client.h
+++ b/src/engine/client/client.h
@@ -73,6 +73,36 @@ public:
 };
 
 
+class CFileCollection
+{
+	enum
+	{
+		MAX_ENTRIES=1000,
+		TIMESTAMP_LENGTH=20,	// _YYYY-MM-DD_HH-MM-SS
+	};
+
+	int64 m_aTimestamps[MAX_ENTRIES];
+	int m_NumTimestamps;
+	int m_MaxEntries;
+	char m_aFileDesc[128];
+	int m_FileDescLength;
+	char m_aFileExt[32];
+	int m_FileExtLength;
+	char m_aPath[512];
+	IStorage *m_pStorage;
+
+	bool IsFilenameValid(const char *pFilename);
+	int64 ExtractTimestamp(const char *pTimestring);
+	void BuildTimestring(int64 Timestamp, char *pTimestring);
+
+public:
+	void Init(IStorage *pStorage, const char *pPath, const char *pFileDesc, const char *pFileExt, int MaxEntries);
+	void AddEntry(int64 Timestamp);
+
+	static void FilelistCallback(const char *pFilename, int IsDir, int StorageType, void *pUser);
+};
+
+
 class CClient : public IClient, public CDemoPlayer::IListner
 {
 	// needed interfaces