using namespace osgDB;
using namespace simgear;
-using OpenThreads::ReentrantMutex;
-using OpenThreads::ScopedLock;
-
// Little helper class that holds an extra reference to a
// loaded 3d model.
// Since we clone all structural nodes from our 3d models,
ModelRegistry::readImage(const string& fileName,
const ReaderWriter::Options* opt)
{
- ScopedLock<ReentrantMutex> lock(readerMutex);
CallbackMap::iterator iter
= imageCallbackMap.find(getFileExtension(fileName));
{
ModelRegistry::readNode(const string& fileName,
const ReaderWriter::Options* opt)
{
- ScopedLock<ReentrantMutex> lock(readerMutex);
-
ReaderWriter::ReadResult res;
CallbackMap::iterator iter
= nodeCallbackMap.find(getFileExtension(fileName));
#ifndef _SG_MODELREGISTRY_HXX
#define _SG_MODELREGISTRY_HXX 1
-#include <OpenThreads/ReentrantMutex>
-
#include <osg/ref_ptr>
#include <osg/Node>
#include <osgDB/FileUtils>
CallbackMap imageCallbackMap;
CallbackMap nodeCallbackMap;
osg::ref_ptr<DefaultCallback> _defaultCallback;
- // Protect against simultaneous calls from main thread (MP models)
- // and pager thread.
- OpenThreads::ReentrantMutex readerMutex;
};
// Callback that only loads the file without any caching or