diff options
Diffstat (limited to 'src/engine/client/client.h')
| -rw-r--r-- | src/engine/client/client.h | 30 |
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 |