Commit Graph

32 Commits

Author SHA1 Message Date
Robert Osfield
76b6cd6fa3 From Bradley Anderegg, "Ok, I am re-submitting this with the changes we discussed. That is, there is a default implementation of osgDB::Archive::getDirectoryContents() that uses getFileNames(), and the osgDB::ArchiveExtended header was removed as it is now unnecessary.
Here is a quick list of the modified files:

Archive - getDirectoryContents() no longer pure virtual
Archive.cpp - default getDirectoryContents() implementation
unzip.cpp - modified to fix a bug where the same file will not load twice in a row
ZipArchive.h / ZipArchive.cpp - extends osgDB::Archive and provides support for random access loading within a .zip file
ReaderWriterZip.cpp - modified to use the ZipArchive class"
2011-05-25 09:04:44 +00:00
Robert Osfield
b4353c1a8e Added following methods to osgDB::Archive in support of work by Fradley Anderegg on .zip archive support:
/** Get the file name which represents the archived file.*/
       virtual std::string getArchiveFileName() const = 0;

       /** return type of file. */
       virtual FileType getFileType(const std::string& filename) const = 0;

       /** return the contents of a directory.
       * returns an empty array on any error.*/
       virtual DirectoryContents getDirectoryContents(const std::string& dirName) const = 0;

Added implementations of these new methods into src/osgPlugins/osga/OSGA_Archive.h src/osgPlugins/osga/OSGA_Archive.cpp
2011-04-29 16:34:26 +00:00
Robert Osfield
b7b065abe3 Refactored the Registry::ReadFileCallback, WriteFileCallback and ReaderWriter::Options to they are now defined in their own header and in the osgDB namespace.
Introduced a new FindFileCallback to Registry to compliement the existing ReadFileCallback and WriteFileCallback.

Added support for assign Find, Read and WriteFileCallbacks to osdDB::Options to enable plugins/applications to override the callbacks just for that
read/write call and any nested file operations
2009-05-09 08:49:27 +00:00
Robert Osfield
c88d34ee97 Renamed Archive::ArchiveStatus to ReaderWriter::ArchiveStatus 2008-07-15 14:15:42 +00:00
Robert Osfield
f1c2694c17 Updated copyright years. 2006-07-18 15:21:48 +00:00
Robert Osfield
10232cf81a Fixed method signatures. 2005-05-16 11:18:11 +00:00
Robert Osfield
678b22ce83 Updated Copyright notices to 1998-2005. 2005-04-14 21:41:28 +00:00
Robert Osfield
d9b9a6f1f8 Made read/write methods in ReaderWriter all const to facilate multi-threading 2004-11-23 15:29:52 +00:00
Robert Osfield
ffcd95b004 Tripped out experiemental threadSafe_ methods in ReaderWriter 2004-11-23 12:57:00 +00:00
Robert Osfield
a6369da4f4 Moved Registry::CacheHintOptions into ReaderWriter::Options 2004-11-22 14:10:12 +00:00
Robert Osfield
eff3482ec6 Removed the public open methods 2004-11-18 22:13:13 +00:00
Robert Osfield
2b310c6926 Added support for serialization of calls to ReaderWriter plugins. 2004-11-15 19:46:10 +00:00
Robert Osfield
ddb0d6bd4f Added prelimarny support for reading archives via the .net plugin 2004-11-13 16:21:48 +00:00
Robert Osfield
f30146a9fe From Stephane Simon, added missing OSGDB_EXPORT to osgDB::openArchive functions 2004-11-11 22:26:07 +00:00
Robert Osfield
6f96cf4ad2 Moved the .osga implementation into the src/osgPlugins/osga plugin and made
osgDB::Archive a pure virtual base class.
2004-11-11 13:22:55 +00:00
Robert Osfield
9fcda76143 Fixed uninitialized variable. 2004-11-10 22:11:28 +00:00
Robert Osfield
141c3cadbf Set the pos_type and size_type explictly to 8 byte types. 2004-11-10 21:52:30 +00:00
Robert Osfield
3523577235 Added check for endianess of .osga archives 2004-11-10 21:18:31 +00:00
Robert Osfield
4e19c03de1 Added support for master file and clean up Archive API. 2004-11-10 13:03:52 +00:00
Robert Osfield
564869487a Added support of archiving into osgTerrain::DataSet and osgdem. 2004-11-09 14:18:29 +00:00
Robert Osfield
72b7e08d93 From Stephane ???, fixes for VS.NET build 2004-11-08 16:39:32 +00:00
Robert Osfield
f84f8d87e0 Added support for openArchive into osgDB 2004-11-07 21:17:31 +00:00
Robert Osfield
f44ecb1f65 Fixed insertion of files into an existing archive 2004-11-07 12:13:56 +00:00
Robert Osfield
8d6aa8b405 Further work on osgDB::Archive 2004-11-06 21:18:19 +00:00
Robert Osfield
c691860b5c Improved handling of uflow and underflow() in proxy_streambuf, and change
unsigned char* to char* to avoid stoooopid VS6.0 compile errors
2004-11-02 21:04:14 +00:00
Robert Osfield
ffca165611 Added prelimanary prox stream buffer to fake the ending of file. 2004-11-02 17:05:15 +00:00
Robert Osfield
2b8140e125 Added support for listing contents of archive 2004-10-28 14:27:41 +00:00
Robert Osfield
90e5586777 Updates to osgDB::Archive, and IVE plugin to support usage via the Archive. 2004-10-28 12:16:47 +00:00
Robert Osfield
61b0f5d301 Added IndexBlock inner class to osgDB::Archive 2004-10-27 14:09:24 +00:00
Robert Osfield
676f204cdb Updates to osgDB::Archive 2004-10-26 18:29:27 +00:00
Robert Osfield
66836ef3d0 Added new osgDB::Archive class, and osgarchive example. These are both
very early beginnings so do not function yet.
2004-10-25 19:16:38 +00:00
Robert Osfield
d734d6d532 Added osgDB::Archive 2004-10-24 14:24:15 +00:00