00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __CSTOOL_NUMBEREDFILENAMEHELPER_H__
00020 #define __CSTOOL_NUMBEREDFILENAMEHELPER_H__
00021
00022 #include "csextern.h"
00023 #include "csutil/csstring.h"
00024 #include "iutil/vfs.h"
00025
00026 namespace CS
00027 {
00034 class CS_CRYSTALSPACE_EXPORT NumberedFilenameHelper
00035 {
00036 csString format;
00037 uint counter;
00038 public:
00042 NumberedFilenameHelper (const char* mask = 0)
00043 {
00044 Reset ();
00045 SetMask (mask);
00046 }
00050 void Reset() { counter = 0; }
00059 void SetMask (const char* mask);
00063 csString NextFilename ()
00064 {
00065 return csString().Format (format, counter++);
00066 }
00072 csString FindNextFilename (iVFS* vfs = 0);
00073 };
00074 }
00075
00076 #endif // __CSTOOL_NUMBEREDFILENAMEHELPER_H__