Moved the Options constructors and destructor implementaions into the cpp to make it easier to do debugging

This commit is contained in:
Robert Osfield 2018-05-11 08:58:30 +01:00
parent be363ef8d4
commit 0fc7aa8cc0
2 changed files with 32 additions and 16 deletions

View File

@ -95,21 +95,9 @@ class OSGDB_EXPORT Options : public osg::Object
};
Options():
osg::Object(true),
_objectCacheHint(CACHE_ARCHIVES),
_precisionHint(FLOAT_PRECISION_ALL),
_buildKdTreesHint(NO_PREFERENCE) {}
Options();
Options(const std::string& str):
osg::Object(true),
_str(str),
_objectCacheHint(CACHE_ARCHIVES),
_precisionHint(FLOAT_PRECISION_ALL),
_buildKdTreesHint(NO_PREFERENCE)
{
parsePluginStringData(str);
}
Options(const std::string& str);
Options(const Options& options,const osg::CopyOp& copyop=osg::CopyOp::SHALLOW_COPY);
@ -257,10 +245,11 @@ class OSGDB_EXPORT Options : public osg::Object
bool operator < (const Options &rhs) const;
bool operator == (const Options &rhs) const;
virtual ~Options() {}
protected:
virtual ~Options();
std::string _str;
FilePathList _databasePaths;

View File

@ -16,6 +16,26 @@
using namespace osgDB;
Options::Options():
osg::Object(true),
_objectCacheHint(CACHE_ARCHIVES),
_precisionHint(FLOAT_PRECISION_ALL),
_buildKdTreesHint(NO_PREFERENCE)
{
}
Options::Options(const std::string& str):
osg::Object(true),
_str(str),
_objectCacheHint(CACHE_ARCHIVES),
_precisionHint(FLOAT_PRECISION_ALL),
_buildKdTreesHint(NO_PREFERENCE)
{
parsePluginStringData(str);
}
Options::Options(const Options& options,const osg::CopyOp& copyop):
osg::Object(options,copyop),
_str(options._str),
@ -32,7 +52,14 @@ Options::Options(const Options& options,const osg::CopyOp& copyop):
_fileLocationCallback(options._fileLocationCallback),
_fileCache(options._fileCache),
_terrain(options._terrain),
_parentGroup(options._parentGroup) {}
_parentGroup(options._parentGroup)
{
}
Options::~Options()
{
abort();
}
void Options::parsePluginStringData(const std::string& str, char separator1, char separator2)
{