From f44ecb1f65dab1eac35d98f285b05f721beb2e19 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Sun, 7 Nov 2004 12:13:56 +0000 Subject: [PATCH] Fixed insertion of files into an existing archive --- examples/osgarchive/osgarchive.cpp | 63 ++++++++++++------------------ include/osgDB/Archive | 2 +- src/osgDB/Archive.cpp | 17 ++------ 3 files changed, 28 insertions(+), 54 deletions(-) diff --git a/examples/osgarchive/osgarchive.cpp b/examples/osgarchive/osgarchive.cpp index e1b47dd7f..9b33c45fa 100644 --- a/examples/osgarchive/osgarchive.cpp +++ b/examples/osgarchive/osgarchive.cpp @@ -17,54 +17,39 @@ #include #include - - #include - #include - #include - #include - -class proxy_streambuf : public std::streambuf -{ - public: - - proxy_streambuf(std::streambuf* streambuf, unsigned int numChars): - _streambuf(streambuf), - _numChars(numChars) {} - - /// Destructor deallocates no buffer space. - virtual ~proxy_streambuf() {} - - std::streambuf* _streambuf; - unsigned int _numChars; - - protected: - - virtual int_type uflow () - { - if (_numChars==0) return -1; - --_numChars; - return _streambuf->sbumpc(); - } -}; +#include int main( int argc, char **argv ) { /* - std::ifstream fin("GNUmakefile"); - std::istream& ins = fin; - - proxy_streambuf mystreambuf(ins.rdbuf(),10000); - ins.rdbuf(&mystreambuf); - while (!fin.eof()) + std::fstream fout("test.data",std::ofstream::out | std::ofstream::binary); + unsigned int numCharacters = 26; + char baseCharacter = 'A'; + + for(unsigned int i=0;i