Implemented updating of revision files as new data is writing to the FileCache

This commit is contained in:
Robert Osfield
2009-06-04 14:07:12 +00:00
parent cf976e956d
commit 40155d59b4
7 changed files with 1690 additions and 53 deletions

View File

@@ -37,6 +37,8 @@ class OSGDB_EXPORT FileList : public osg::Object
bool contains(const std::string& filename) const { return _files.count(filename)!=0; }
bool removeFile(const std::string& filename);
protected:
virtual ~FileList();
@@ -73,6 +75,8 @@ class OSGDB_EXPORT DatabaseRevision : public osg::Object
bool isFileBlackListed(const std::string& filename) const;
bool removeFile(const std::string& filename);
protected:
virtual ~DatabaseRevision();
@@ -101,11 +105,15 @@ class OSGDB_EXPORT DatabaseRevisions : public osg::Object
void addRevision(DatabaseRevision* revision);
void removeRevision(DatabaseRevision* revision);
DatabaseRevision* getDatabaseRevision(unsigned int i) { return i<_revisionList.size() ? _revisionList[i] : 0; }
DatabaseRevisionList& getDatabaseRevisionList() { return _revisionList; }
const DatabaseRevisionList& getDatabaseRevisionList() const { return _revisionList; }
bool isFileBlackListed(const std::string& filename) const;
bool removeFile(const std::string& filename);
protected:
virtual ~DatabaseRevisions();

View File

@@ -67,6 +67,9 @@ class OSGDB_EXPORT FileCache : public osg::Referenced
DatabaseRevisionsList _databaseRevisionsList;
FileList* readFileList(const std::string& originalFileName) const;
bool removeFileFromBlackListed(const std::string& originalFileName) const;
};
}