- void initDirectory(const char *path)
- {
- InitDirectory(path, FileSystemQ3API_getArchiveModules());
- }
- void initialise()
- {
- globalOutputStream() << "filesystem initialised\n";
- g_observers.realise();
- }
- void shutdown()
- {
- g_observers.unrealise();
- globalOutputStream() << "filesystem shutdown\n";
- Shutdown();
- }
-
- int getFileCount(const char *filename, int flags)
- {
- return GetFileCount(filename, flags);
- }
- ArchiveFile* openFile(const char* filename)
- {
- return OpenFile(filename);
- }
- ArchiveTextFile* openTextFile(const char* filename)
- {
- return OpenTextFile(filename);
- }
- std::size_t loadFile(const char *filename, void **buffer)
- {
- return LoadFile(filename, buffer, 0);
- }
- void freeFile(void *p)
- {
- FreeFile(p);
- }
-
- void forEachDirectory(const char* basedir, const FileNameCallback& callback, std::size_t depth)
- {
- GSList* list = GetDirList(basedir, depth);
-
- for(GSList* i = list; i != 0; i = g_slist_next(i))
- {
- callback(reinterpret_cast<const char*>((*i).data));
- }
-
- ClearFileDirList(&list);
- }
- void forEachFile(const char* basedir, const char* extension, const FileNameCallback& callback, std::size_t depth)
- {
- GSList* list = GetFileList(basedir, extension, depth);
-
- for(GSList* i = list; i != 0; i = g_slist_next(i))
- {
- const char* name = reinterpret_cast<const char*>((*i).data);
- if(extension_equal(path_get_extension(name), extension))
- {
- callback(name);
- }
- }
-
- ClearFileDirList(&list);
- }
- GSList* getDirList(const char *basedir)
- {
- return GetDirList(basedir, 1);
- }
- GSList* getFileList(const char *basedir, const char *extension)
- {
- return GetFileList(basedir, extension, 1);
- }
- void clearFileDirList(GSList **lst)
- {
- ClearFileDirList(lst);
- }
-
- const char* findFile(const char *name)
- {
- return FindFile(name);
- }
- const char* findRoot(const char *name)
- {
- return FindPath(name);
- }
-
- void attach(ModuleObserver& observer)
- {
- g_observers.attach(observer);
- }
- void detach(ModuleObserver& observer)
- {
- g_observers.detach(observer);
- }
-
- Archive* getArchive(const char* archiveName, bool pakonly)
- {
- for(archives_t::iterator i = g_archives.begin(); i != g_archives.end(); ++i)
- {
- if(pakonly && !(*i).is_pakfile)
- continue;
-
- if(path_equal((*i).name.c_str(), archiveName))
- return (*i).archive;
- }
- return 0;
- }
- void forEachArchive(const ArchiveNameCallback& callback, bool pakonly, bool reverse)
- {
- if (reverse)
- g_archives.reverse();
-
- for(archives_t::iterator i = g_archives.begin(); i != g_archives.end(); ++i)
- {
- if(pakonly && !(*i).is_pakfile)
- continue;
-
- callback((*i).name.c_str());
- }
-
- if (reverse)
- g_archives.reverse();
- }
+void initDirectory( const char *path ){
+ InitDirectory( path, FileSystemQ3API_getArchiveModules() );
+}
+void initialise(){
+ globalOutputStream() << "filesystem initialised\n";
+ g_observers.realise();
+}
+void shutdown(){
+ g_observers.unrealise();
+ globalOutputStream() << "filesystem shutdown\n";
+ Shutdown();
+}
+
+int getFileCount( const char *filename, int flags ){
+ return GetFileCount( filename, flags );
+}
+ArchiveFile* openFile( const char* filename ){
+ return OpenFile( filename );
+}
+ArchiveTextFile* openTextFile( const char* filename ){
+ return OpenTextFile( filename );
+}
+std::size_t loadFile( const char *filename, void **buffer ){
+ return LoadFile( filename, buffer, 0 );
+}
+void freeFile( void *p ){
+ FreeFile( p );
+}
+
+void forEachDirectory( const char* basedir, const FileNameCallback& callback, std::size_t depth ){
+ GSList* list = GetDirList( basedir, depth );
+
+ for ( GSList* i = list; i != 0; i = g_slist_next( i ) )
+ {
+ callback( reinterpret_cast<const char*>( ( *i ).data ) );
+ }
+
+ ClearFileDirList( &list );
+}
+void forEachFile( const char* basedir, const char* extension, const FileNameCallback& callback, std::size_t depth ){
+ GSList* list = GetFileList( basedir, extension, depth );
+
+ for ( GSList* i = list; i != 0; i = g_slist_next( i ) )
+ {
+ const char* name = reinterpret_cast<const char*>( ( *i ).data );
+ if ( extension_equal( path_get_extension( name ), extension ) ) {
+ callback( name );
+ }
+ }
+
+ ClearFileDirList( &list );
+}
+GSList* getDirList( const char *basedir ){
+ return GetDirList( basedir, 1 );
+}
+GSList* getFileList( const char *basedir, const char *extension ){
+ return GetFileList( basedir, extension, 1 );
+}
+void clearFileDirList( GSList **lst ){
+ ClearFileDirList( lst );
+}
+
+const char* findFile( const char *name ){
+ return FindFile( name );
+}
+const char* findRoot( const char *name ){
+ return FindPath( name );
+}
+
+void attach( ModuleObserver& observer ){
+ g_observers.attach( observer );
+}
+void detach( ModuleObserver& observer ){
+ g_observers.detach( observer );
+}
+
+Archive* getArchive( const char* archiveName, bool pakonly ){
+ for ( archives_t::iterator i = g_archives.begin(); i != g_archives.end(); ++i )
+ {
+ if ( pakonly && !( *i ).is_pakfile ) {
+ continue;
+ }
+
+ if ( path_equal( ( *i ).name.c_str(), archiveName ) ) {
+ return ( *i ).archive;
+ }
+ }
+ return 0;
+}
+void forEachArchive( const ArchiveNameCallback& callback, bool pakonly, bool reverse ){
+ if ( reverse ) {
+ g_archives.reverse();
+ }
+
+ for ( archives_t::iterator i = g_archives.begin(); i != g_archives.end(); ++i )
+ {
+ if ( pakonly && !( *i ).is_pakfile ) {
+ continue;
+ }
+
+ callback( ( *i ).name.c_str() );
+ }
+
+ if ( reverse ) {
+ g_archives.reverse();
+ }
+}