Commit Graph

108 Commits

Author SHA1 Message Date
Robert Osfield
0956f3cdb4 From Marco Jez, Fix for the class name lookup in osgDB::Registry::writeObject(), which can silently fail when a NodeKit's class (for example osgNVCg::Program) has the same name as that of an OSG's class (for example osg::Program). 2005-10-28 18:39:14 +00:00
Robert Osfield
032b7484d4 From Markus Trenkwalder, added meanigful return types in
Registry::read(const ReadFunctor& readFunctor) for ERROR_IN_READING_FILE and
FILE_NOT_FOUND cases.
2005-10-25 09:54:15 +00:00
Robert Osfield
d154c2a4cd From Eric Sokolowsky, warning fixes for g++ 4.0 under Fedora Core 4. 2005-08-25 17:53:01 +00:00
Robert Osfield
b9a74c87e1 From Jeremy Bell,
"My patch is a slight refactoring of the mac specific code in
Registry.cpp and FileUtils.cpp, specifically around the library and
resource file path initilialization methods. This patch cleans up a
lot of the mac specific code by moving repeated code into separate
local functions in FileUtils.cpp that are only compiled on mac builds.
It also adds one function to the API,
appendPlatformSpecificResourceFilePaths in FileUtils. This function
will mirror the already existing
appendPlatformSpecificLibraryFilePaths except for resource file paths.
Currently this function is empty except when built on the mac, in
which case it will add the application bundle's internal Resources
folder and the bundle's parent folder. Previously this code was
implemented as a separate mac specific #ifdef block in Registry.cpp
around the initDataFilePathList method. However, it now is implemented
in appendPlatformSpecificResourceFilePaths in FileUtils.cpp and the
initDataFilePathList method is now the same on all platforms. This
patch should behave the same as before on non-mac platforms.

This patch already includes the fix that Eric mentioned earlier. This
patch is based off of the 0.99 release code. I have tested this patch
using the following testing scheme:

Make a proper bundled application.
While Run from the Finder:
   Test that it finds plugins in its internal plugins path.
   Test that it finds resources in its internal resources path.
   Test that it finds resources in the bundle's parent directory
   Test that it finds plugins in the user's Application Support Directory
   Test that it finds plugins in the system's Application Support Directory
   Test that it finds plugins in the Network Application Support Directory
   Check the plugin and resource path lists after they have been
initialized to see if they are in the correct order

While Run from the command line (both from it's parent directory and
from inside the /Contents/MacOS directory) and repeat the above tests.
Check that it also finds plugins and resources within the paths
defined by various environment variables.

Now, Make an application that is NOT bundled/command line only
   Test that it does NOT try to look in an internal bundle
plugin/resource directory for plugins or resources.
   Test that it finds plugins/resources in the paths defined by the
environment variables.
"
2005-07-26 21:07:31 +00:00
Robert Osfield
07af23e280 From Eric Wing, fix to be able to handle "spacial" characters under OSX. 2005-07-26 20:31:43 +00:00
Robert Osfield
d1a1b1d95c Added more comprehensive releaseGLObjects(State*=0) throughout Nodes,
Drawables,StateSet, and osgDB::Registry.

Added cleanup_frame() from to osgProducer::OsgCamerGroup to help with proper
clean of OpenGL objects before exit, and modified osgviewer, osghangglider,
osgwindows examples to do the extra frame call to cleanup_frame() before exit.
2005-05-07 20:47:09 +00:00
Robert Osfield
9534cd8638 Removed rgb alias for Quicktime mapping since the Quicktime is not reliable
at loading all rgb files that the standard OSG rgb reader can read.
2005-05-05 20:05:11 +00:00
Robert Osfield
483242c9db Cleaned up the xine plugin to better handle unsupported video files. 2005-04-22 13:32:46 +00:00
Robert Osfield
648677ce44 Added next stage of support for osg::Uniform in .osg plugin 2005-04-18 12:34:28 +00:00
Robert Osfield
678b22ce83 Updated Copyright notices to 1998-2005. 2005-04-14 21:41:28 +00:00
Robert Osfield
72a0e38ed0 From Stephan Huber, changed fixed string sizes for dynamically allocated ones in OSX file system gets. 2005-04-08 18:46:51 +00:00
Robert Osfield
cd8634776d From Stephan Huber (contains Registry.cpp changes from David Guthrie):
"Attached is the new source for the Quicktime-Plugin which adds the
ability to write pictures in various formats (tested: jpg, png, tif,
psd) (24bit + 32bit only, 8bit not tested)

There are changes in the attached osgDB::Registry, which allows osg to
find resources/plugins in the right folders under OS X"

Note, from Robert Osfield, changed the FilePathList* filepath + delete to a
FilePathList filepath to avoid possible memory leaks when expections are thrown/
make it more maintainable.  Also didn't merge the automatic playing of movies.
2005-04-08 13:52:03 +00:00
Robert Osfield
5684a130b7 From Alberto Farre, addition of ProxyNode, with support in .osg, .ive and .flt loaders 2005-03-07 14:06:09 +00:00
Robert Osfield
7fca7456ce Added video aliases to xine plugin 2005-03-03 12:35:07 +00:00
Robert Osfield
3ff22d526c From Tree, change to naming of plugins when building OSG with Java to avoid
conflicts.
2005-01-07 20:01:06 +00:00
Robert Osfield
c0c02d6c24 Fixed caching of archives 2004-11-25 15:09:56 +00:00
Robert Osfield
46c46fba78 Fixed VS.NET warnings 2004-11-23 23:47:25 +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
e54f46f630 Removed the cache hints from registery placing them wholly into ReaderWriter's responsibility. 2004-11-22 14:49:27 +00:00
Robert Osfield
a6369da4f4 Moved Registry::CacheHintOptions into ReaderWriter::Options 2004-11-22 14:10:12 +00:00
Robert Osfield
2b310c6926 Added support for serialization of calls to ReaderWriter plugins. 2004-11-15 19:46:10 +00:00
Robert Osfield
06f1b602e7 Fixed the passing of the parsed server name/server file when handling files
via the .net plugin
2004-11-13 16:18:15 +00:00
Robert Osfield
4973824b1d Added new osga plugin for reading OSG native archives 2004-11-10 16:40:08 +00:00
Robert Osfield
2db9dc2e60 Moved the ReadFunctor to protected section. 2004-11-10 13:47:22 +00:00
Robert Osfield
d26c8460dc Updates to osgDB::Archive support, and refactoring of implementation of
reading files in Registry to faciliate the new archiving support.
2004-11-08 16:11:07 +00:00
Robert Osfield
f84f8d87e0 Added support for openArchive into osgDB 2004-11-07 21:17:31 +00:00
Robert Osfield
2027011beb Added support for http reading into the readObject, readImage and readHeightField methods
complimenting the previously checked in readNode supoort.
2004-10-06 15:15:01 +00:00
Robert Osfield
38a0e6bf4e Added support for parsing http:// names and mapping automatically to use
the .net plugin
2004-10-06 13:11:04 +00:00
Robert Osfield
9dc35ce47a Added mutex to access to the Registry::_objectCache. 2004-09-06 18:20:38 +00:00
Robert Osfield
255c27d552 Added a new osgDB::appendPlatformSpecificLibraryFilePaths() method to FileUtils.cpp
Includes a new OSX code from Eric Wing
2004-08-27 16:14:21 +00:00
Robert Osfield
aec98259a8 Added support for osgDB::ReaderWriter::ReadResult::FILE_LOADED_FROM_CACHE 2004-05-07 13:43:41 +00:00
Robert Osfield
2a6e155d03 From Alberto Farre, changed the cache hint option in read*() calls from being
a bool to a enum osgDB::Registru::CacheHintOptions to be used a bit mask flag.

From Robert Osfied, added osgDB::Registry::ReadFileCallback and
osgDB::Registry::WriteFileCallback to allow customizition of read and write
calls.
2004-04-10 16:11:56 +00:00
Robert Osfield
56ab8d3306 From Stephan Huber, support for reading movie files as ImageStreams using
Quicktime (under OSX) to do the reading of the movie files.  Originally submitted as
a sperate .mov plugin, but integrated into the QuickTime plugin by Robert
Osfield.
2004-03-14 15:40:34 +00:00
Robert Osfield
d8457a43e5 Added MPEG plugin 2004-03-09 15:00:52 +00:00
Robert Osfield
bd37f999c4 From Bob Kuehne, change on __DARWIN_OSX__ define to __APPLE__ 2004-03-08 11:02:05 +00:00
Robert Osfield
996d292979 Changes to help differentiate between OSX using Quicktime vs not using
quicktime, from Eric Sokolosky and Robert Osfield.
2004-02-03 22:46:10 +00:00
Robert Osfield
23443aa5db From Alberto Farre, added osgDB::SharedStateManager. Also a couple of
ammendments by Robert Osfield, adding get/setSharedStateManager()
methods into osgDB::Registry, and clean up fixes in SharedStateManager
for the StateSet arrays.
2004-01-10 17:13:20 +00:00
Robert Osfield
894537a016 Simplified the API for using the DatabasePager, by providing a single
DatabasePager::updateSceneGraph(..) method, and added a ref_ptr<> into
osDB::Registry for managing a single DatabasePager in a centralised way.
2004-01-06 21:18:36 +00:00
Robert Osfield
3b82c67c13 Added code to the DatagbasePager::removeExpiredSubgraphs() that update
the osgDB::Registry cache.
2004-01-06 14:09:12 +00:00
Robert Osfield
bf9af3f940 Added "&& oitr->second.first->referenceCount()<=1" check to removeExpiredObjectsInCache
so that it only expires objects in the cache that have no external reference.
2004-01-02 17:06:18 +00:00
Robert Osfield
0cbe10d399 From Michael Gronager, with updates from Robert Osfield, to add support
for Registry::closeAllLibrary and forced Registry destruction via
Registry::instance(true).
2003-12-13 16:36:29 +00:00
Robert Osfield
5011d994e8 Added a special AvailablerReaderWriterIterator class to handle the task
of iterating through the list of available reader writer, whilst handling
cases where the list itself changes size during iteration through the list.
Previous size changes during iteration was cause invalid iterators, which
in turn was causing a crash.
2003-12-10 15:24:14 +00:00
Robert Osfield
af482998b9 Improved the management of errors reported from ReaderWriters, and cleaned
up the reporting of errors in DynamicLibrary.
2003-12-10 11:40:58 +00:00
Robert Osfield
e6d3af7a46 From Eric Sokolosky, OSX uses DYLD_LIBRARY_PATH for initial library search path
instead of LD_LIBRARY_PATH.
2003-12-09 09:25:53 +00:00
Robert Osfield
83bf813e58 Moved the responsibility for finding file to load on to the ReaderWriter plugins,
instead of osgDB::Registry where it original lay.  This has been done to allow
fileName strings to be encode data rather than just file names, such as one
requires when using PagedLOD along with plugins for doing dynamic tesselation.
2003-12-08 11:24:43 +00:00
Don BURNS
4e8992d8c1 MIssing check for ptr == NULL at line 227 in Registry.cpp 2003-11-05 04:58:18 +00:00
Robert Osfield
bc7622149d Updated to slideshow3D to support animation + pausing of animation.
Updated associated osg/osgUtil classes that provide animation pausing.
2003-11-03 23:13:31 +00:00
Robert Osfield
f1c4dc3b0d Updates for osgdem. Including new read/writeHeightField() methods. 2003-10-29 11:11:17 +00:00
Robert Osfield
2db71d01cc Michael Gronager's changes for supporting the in memory gz archiving. 2003-10-17 15:26:03 +00:00