Commit Graph

31 Commits

Author SHA1 Message Date
Laurens Voerman
0619fe1cfa src\osgplugins\osgjs\Animation(9): warning C4099: 'WriteVisitor': type name first seen using 'class' now seen using 'struct' 2016-09-26 13:56:38 +02:00
Alberto Luaces
01c712e851 Explicit signed char declarations for portability.
Some platforms (ARM, PowerPC, s390x) have "unsigned char" as the default
char type, and thus the build fails for certain parts of the code where
negative values are assigned to those kind of variables.
2016-09-24 12:33:37 +02:00
Robert Osfield
1794374c78 Fixed build error reported on gcc 4.6.4/Ubuntu 12.04 32bit, issue #108 2016-07-31 11:06:51 +01:00
Robert Osfield
5ab9a1b420 Fixed potential memory leak 2016-07-07 07:16:56 +01:00
Robert Osfield
6d85404cf0 Added ref_ptr<> to quieten down Coverity 2016-07-06 20:57:53 +01:00
Robert Osfield
c820b611ed Removed dead code 2016-07-06 20:36:50 +01:00
Robert Osfield
f99408f254 Fixed possible memory leak 2016-07-06 20:34:41 +01:00
Robert Osfield
e5e89a3ac9 Added handling of null 2016-07-06 20:23:34 +01:00
Robert Osfield
8b3944f51c Changed dynamic_cast<> to static_cast<> as type is known based on getType() query.
Added missing break statement.
2016-07-06 20:21:53 +01:00
Robert Osfield
ca4355974f Fixed warnings 2016-07-05 17:57:28 +01:00
Marc Helbling
67c301c236 Adds specific flag for compressed animation buffers 2016-07-05 16:52:17 +02:00
Marc Helbling
67b17fa801 Updates osgjs plugin for animation serialization 2016-07-05 16:48:53 +02:00
Robert Osfield
be26725867 Added handling of null dynamic_cast 2016-06-30 09:59:27 +01:00
Robert Osfield
cbba625b07 Added null pointer handling 2016-06-30 09:48:44 +01:00
Robert Osfield
89c6fac40a Removed dead code 2016-06-27 17:38:32 +01:00
Robert Osfield
4b3c7e47a5 Added ref_ptr<> usage to address memory leaks 2016-06-10 16:34:36 +01:00
Robert Osfield
bfd1d7c55b Fixed unused parameter warning. 2016-06-08 09:49:58 +01:00
Robert Osfield
9bdb3f55dd Replaced (long int) with more portable (GLint64) 2016-02-18 10:57:19 +00:00
Robert Osfield
8882fb697e From Wojciech Lewandowski, Visual Studio 2008 compatibility fix
Two fixed files:

osgPlugins/osgjs/JSON_Objects
osgPlugins/stl/ReaderWriterSTL.cpp.

They did not compile with VS 2008 (recent master from Github). It looks like they defined stdint types  (missing in VS 2008) but code using them also included <osg/Types> header. Errors were caused by minor differences in signed int definitions. I just removed own definitions and added include<osg/Types> instead. It solves the problem and makes the code clearer now.
2015-12-14 17:59:45 +00:00
Robert Osfield
dd996a3289 Introduced CMake option OSG_PROVIDE_READFILE option that defaults to ON, but when switched to OFF disables the building of the osgDB::read*File() methods,
forcing users to use osgDB::readRef*File() methods.  The later is preferable as it closes a potential threading bug when using paging databases in conjunction
with the osgDB::Registry Object Cache.  This threading bug occurs when one thread gets an object from the Cache via an osgDB::read*File() call where only
a pointer to the object is passed back, so taking a reference to the object is delayed till it gets reassigned to a ref_ptr<>, but at the same time another
thread calls a flush of the Object Cache deleting this object as it's referenceCount is now zero.  Using osgDB::readREf*File() makes sure the a ref_ptr<> is
passed back and the referenceCount never goes to zero.

To ensure the OSG builds when OSG_PROVIDE_READFILE is to OFF the many cases of osgDB::read*File() usage had to be replaced with a ref_ptr<> osgDB::readRef*File()
usage.  The avoid this change causing lots of other client code to be rewritten to handle the use of ref_ptr<> in place of C pointer I introduced a serious of
templte methods in various class to adapt ref_ptr<> to the underly C pointer to be passed to old OSG API's, example of this is found in include/osg/Group:

    bool addChild(Node* child); // old method which can only be used with a Node*

    tempalte<class T> bool addChild(const osg::ref_ptr<T>& child) { return addChild(child.get()); } // adapter template method

These changes together cover 149 modified files, so it's a large submission. This extent of changes are warrent to make use of the Object Cache
and multi-threaded loaded more robust.



git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@15164 16af8721-9629-0410-8352-f15c8da7e697
2015-10-22 13:42:19 +00:00
Robert Osfield
13a5608975 Changed the _MSC_VER check to <= 1700 to support VS2012.
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14989 16af8721-9629-0410-8352-f15c8da7e697
2015-07-20 07:42:05 +00:00
Robert Osfield
f0ac1a16f9 Build fix
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14934 16af8721-9629-0410-8352-f15c8da7e697
2015-07-02 08:57:08 +00:00
Robert Osfield
3a2380932f Changed MSVC version test to <= to enable fallback for VS2010.
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14841 16af8721-9629-0410-8352-f15c8da7e697
2015-04-16 11:19:50 +00:00
Robert Osfield
3add98180c From Philippe Renon, MingW build fix
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14834 16af8721-9629-0410-8352-f15c8da7e697
2015-04-14 15:50:51 +00:00
Robert Osfield
950d7bb60b From Wojciech Lewandowski, Windows build fixes, "These are the tweaks I had to make. JSON_Objects / json_stream headers attached. I am not sure how these will behave on VS 2010. Someone with VS 2010 should test it. Should be okay on VS 2008 and below + VS 2012 and above, though."
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14816 16af8721-9629-0410-8352-f15c8da7e697
2015-04-02 10:12:22 +00:00
Robert Osfield
d9f920ee37 Fixed VisualStudio warning
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14802 16af8721-9629-0410-8352-f15c8da7e697
2015-03-17 18:10:21 +00:00
Robert Osfield
b8cd439697 Changed to using osgDB::ofstream to work around Windows build issue
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14794 16af8721-9629-0410-8352-f15c8da7e697
2015-03-17 08:19:05 +00:00
Robert Osfield
728d5ead52 Removed unneccessary library link line.
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14793 16af8721-9629-0410-8352-f15c8da7e697
2015-03-16 17:01:57 +00:00
Robert Osfield
d3e9c44440 From Mattias Helsing, add copyright notice from other osgjs header to the json_stream header
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14781 16af8721-9629-0410-8352-f15c8da7e697
2015-03-12 13:41:00 +00:00
Robert Osfield
3d144a0312 Added using namespace std and removed the std:: prefixes before the std::isfinte and std::isinf function calls to avoid problems with Android builds against older NDK's.
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14780 16af8721-9629-0410-8352-f15c8da7e697
2015-03-12 13:37:08 +00:00
Robert Osfield
2a84719f4a From Cedric Pinson, gles and osgjs plugins that support conversion of OSG loaded models into a form that can be used with osgjs JavaScript library
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14770 16af8721-9629-0410-8352-f15c8da7e697
2015-03-09 11:27:26 +00:00