From 2027011beb2a3ed3464c4a02a43842f5ccce80aa Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Wed, 6 Oct 2004 15:15:01 +0000 Subject: [PATCH] Added support for http reading into the readObject, readImage and readHeightField methods complimenting the previously checked in readNode supoort. --- src/osgDB/Registry.cpp | 85 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) diff --git a/src/osgDB/Registry.cpp b/src/osgDB/Registry.cpp index afbaca063..ee82f8245 100644 --- a/src/osgDB/Registry.cpp +++ b/src/osgDB/Registry.cpp @@ -1118,6 +1118,34 @@ bool Registry::writeObject(const osg::Object& obj,Output& fw) // ReaderWriter::ReadResult Registry::readObject(const std::string& fileName) { + if (containsServerAddress(fileName)) + { + std::string serverName = getServerAddress(fileName); + std::string serverFile = getServerFileName(fileName); + osg::notify(osg::INFO)<<"Contains sever address : "<readObject(serverName+":"+serverFile,_options.get()); + } + else + { + return ReaderWriter::ReadResult("Warning: Could not find the .net plugin to read from server."); + } + } + // record the errors reported by readerwriters. typedef std::vector Results; Results results; @@ -1276,6 +1304,35 @@ ReaderWriter::WriteResult Registry::writeObjectImplementation(const Object& obj, ReaderWriter::ReadResult Registry::readImage(const std::string& fileName) { + if (containsServerAddress(fileName)) + { + std::string serverName = getServerAddress(fileName); + std::string serverFile = getServerFileName(fileName); + osg::notify(osg::INFO)<<"Contains sever address : "<readImage(serverName+":"+serverFile,_options.get()); + } + else + { + return ReaderWriter::ReadResult("Warning: Could not find the .net plugin to read from server."); + } + } + + // record the errors reported by readerwriters. typedef std::vector Results; Results results; @@ -1435,6 +1492,34 @@ ReaderWriter::WriteResult Registry::writeImageImplementation(const Image& image, ReaderWriter::ReadResult Registry::readHeightField(const std::string& fileName) { + if (containsServerAddress(fileName)) + { + std::string serverName = getServerAddress(fileName); + std::string serverFile = getServerFileName(fileName); + osg::notify(osg::INFO)<<"Contains sever address : "<readHeightField(serverName+":"+serverFile,_options.get()); + } + else + { + return ReaderWriter::ReadResult("Warning: Could not find the .net plugin to read from server."); + } + } + // record the errors reported by readerwriters. typedef std::vector Results; Results results;