2010-05-29 07:25:38 +00:00
|
|
|
#ifndef ENGINE_STORAGE_H
|
|
|
|
#define ENGINE_STORAGE_H
|
|
|
|
|
|
|
|
#include "kernel.h"
|
|
|
|
|
|
|
|
class IStorage : public IInterface
|
|
|
|
{
|
|
|
|
MACRO_INTERFACE("storage", 0)
|
|
|
|
public:
|
|
|
|
enum
|
|
|
|
{
|
|
|
|
TYPE_SAVE = 1,
|
|
|
|
TYPE_CURRENT = 2,
|
|
|
|
TYPE_DATA = 4,
|
|
|
|
TYPE_ALL = ~0
|
|
|
|
};
|
|
|
|
|
|
|
|
virtual void ListDirectory(int Types, const char *pPath, FS_LISTDIR_CALLBACK pfnCallback, void *pUser) = 0;
|
|
|
|
virtual IOHANDLE OpenFile(const char *pFilename, int Flags, char *pBuffer = 0, int BufferSize = 0) = 0;
|
2010-08-07 08:02:58 +00:00
|
|
|
virtual const char* ApplicationSavePath() = 0;
|
2010-05-29 07:25:38 +00:00
|
|
|
};
|
|
|
|
|
2010-08-05 18:26:03 +00:00
|
|
|
extern IStorage *CreateStorage(const char *pApplicationName, int NumArgs, const char **ppArguments);
|
2010-05-29 07:25:38 +00:00
|
|
|
|
|
|
|
|
|
|
|
#endif
|