Ejemplo n.º 1
0
ArchiveFilePtr Doom3FileSystem::openFile(const std::string& filename) {
    if (filename.find("\\") != std::string::npos) {
        rError() << "Filename contains backslash: " << filename << std::endl;
        return ArchiveFilePtr();
    }

    for (ArchiveList::iterator i = _archives.begin(); i != _archives.end(); ++i) {
        ArchiveFilePtr file = i->archive->openFile(filename);
        if (file != NULL) {
            return file;
        }
    }

    // not found
    return ArchiveFilePtr();
}
    bool AudiereArchiveFile::Open( const String& fileName )
    {
        mArchiveFile.SetNull();
        mArchiveFile = ArchiveFilePtr( ArchiveManager::GetSingleton().CreateArchiveFile( fileName ) );
        return !mArchiveFile.IsNull();
//        if ( mFileStream.is_open() )
//            mFileStream.close();
//        mFileStream.open( filename.c_str(), std::ios::in | std::ios::binary );
//        return mFileStream.is_open();
    }
Ejemplo n.º 3
0
ArchiveFilePtr Doom3FileSystem::openFileInAbsolutePath(const std::string& filename)
{
    DirectoryArchiveFilePtr file(new DirectoryArchiveFile(filename, filename));

    if (!file->failed())
    {
        return file;
    }

    return ArchiveFilePtr();
}
Ejemplo n.º 4
0
ArchiveFilePtr DirectoryArchive::openFile(const std::string& name) {
	UnixPath path(_root);
	path.push_filename(name);

	DirectoryArchiveFilePtr file(new DirectoryArchiveFile(name, path));

	if (!file->failed()) {
		return file;
	}

	return ArchiveFilePtr();
}
 AudiereArchiveFile::AudiereArchiveFile( const String& fileName )
     : mArchiveFile( ArchiveFilePtr( ArchiveManager::GetSingleton().CreateArchiveFile( fileName ) ) )
 {
     //ctor
     Open( fileName );
 }