64 _Ptr=_Fac->Get_File(filename);
72 _Fac->Return_File(_Ptr);
140 int sub_len = strlen(sub_directory);
142 if (sub_len > 1021) {
145 }
else if (sub_len < 1) {
150 char temp_sub_dir[1024];
151 strcpy(temp_sub_dir, sub_directory);
152 if (temp_sub_dir[sub_len - 1] !=
'\\') {
153 temp_sub_dir[sub_len] =
'\\';
154 temp_sub_dir[sub_len + 1] = 0;
157 temp_sub_dir[sub_len] =
';';
158 temp_sub_dir[sub_len + 1] = 0;
175 int sub_len = strlen(sub_directory);
177 if (sub_len > 1022) {
180 }
else if (sub_len < 1) {
185 char temp_sub_dir[1024];
186 strcpy(temp_sub_dir, sub_directory);
187 if (temp_sub_dir[sub_len - 1] !=
'\\') {
188 temp_sub_dir[sub_len] =
'\\';
189 temp_sub_dir[sub_len + 1] = 0;
216Is_Full_Path (
const char *path)
220 if (path !=
NULL && path[0] != 0) {
223 retval =
bool(path[1] ==
':');
226 retval |=
bool((path[0] ==
'\\') && (path[1] ==
'\\'));
242 const char * ptr = ::strrchr( filename,
'\\' );
248 stripped_name = filename;
251 stripped_name = filename;
261 if (Is_Full_Path ( new_name ) ==
false) {
282 if (strchr(subdir,
';'))
286 while((tok=strtok(tokstart,
";")) !=
NULL) {
virtual char const * Set_Name(char const *filename)
virtual int Open(char const *filename, int rights=READ)
RawFileClass * Get_File(char const *filename)
void Return_File(FileClass *file)
CriticalSectionClass Mutex
void Append_Sub_Directory(const char *sub_directory)
SimpleFileFactoryClass(void)
void Get_Sub_Directory(StringClass &new_dir) const
virtual void Return_File(FileClass *file)
virtual FileClass * Get_File(char const *filename)
void Set_Sub_Directory(const char *sub_directory)
void Prepend_Sub_Directory(const char *sub_directory)
int _cdecl Format(const TCHAR *format,...)
TCHAR * Peek_Buffer(void)
file_auto_ptr(FileFactoryClass *fac, const char *filename)
RawFileFactoryClass * _TheWritingFileFactory
FileFactoryClass * _TheFileFactory
SimpleFileFactoryClass _DefaultFileFactory
SimpleFileFactoryClass * _TheSimpleFileFactory
RawFileFactoryClass _DefaultWritingFileFactory