]> git.mxchange.org Git - simgear.git/commitdiff
Use of copy-constructors
authorTorsten Dreyer <Torsten@t3r.de>
Sun, 25 Dec 2011 19:11:06 +0000 (20:11 +0100)
committerTorsten Dreyer <Torsten@t3r.de>
Sun, 25 Dec 2011 19:11:06 +0000 (20:11 +0100)
explicitly initialize the base class in a copy-constructor instead
of implicitly calling the default constructor.

simgear/props/props.cxx
simgear/scene/material/Effect.cxx
simgear/scene/material/EffectCullVisitor.cxx
simgear/scene/material/Technique.cxx
simgear/scene/material/Technique.hxx
simgear/scene/util/SGSceneUserData.hxx

index 499d417fb06009ad0f8e6e42dadd9d0d92ff4b7b..5fe9bc90b10d88a19efe31489ceb9686b7662906 100644 (file)
@@ -664,7 +664,8 @@ SGPropertyNode::SGPropertyNode ()
  * Copy constructor.
  */
 SGPropertyNode::SGPropertyNode (const SGPropertyNode &node)
-  : _index(node._index),
+  : SGReferenced(node),
+    _index(node._index),
     _name(node._name),
     _parent(0),                        // don't copy the parent
     _type(node._type),
index 3736782a9029b5f192dc3beb26bf7dc1f58728dd..c021b98e46e252b5f185a6c6665d55a3fadcab11 100644 (file)
@@ -90,7 +90,7 @@ Effect::Effect()
 }
 
 Effect::Effect(const Effect& rhs, const CopyOp& copyop)
-    : root(rhs.root), parametersProp(rhs.parametersProp), _cache(0),
+    : osg::Object(rhs,copyop), root(rhs.root), parametersProp(rhs.parametersProp), _cache(0),
       _isRealized(rhs._isRealized)
 {
     typedef vector<ref_ptr<Technique> > TechniqueList;
index efac70b7e7809f6c808798a29ab12f8023e68464..e2d199207dd52293e17b1c5b7f73e8535e0bcdfc 100644 (file)
@@ -36,6 +36,7 @@ EffectCullVisitor::EffectCullVisitor()
 }
 
 EffectCullVisitor::EffectCullVisitor(const EffectCullVisitor& rhs) :
+    osg::Referenced(rhs),
     CullVisitor(rhs)
 {
 }
index aeab9cf365b9b3057c70701b82e6d9165fd02397..a540fb2f67b496c8eff69ffdf52a1618900f220a 100644 (file)
@@ -58,6 +58,7 @@ Technique::Technique(bool alwaysValid)
 }
 
 Technique::Technique(const Technique& rhs, const osg::CopyOp& copyop) :
+    osg::Object(rhs,copyop),
     _contextMap(rhs._contextMap), _alwaysValid(rhs._alwaysValid),
     _shadowingStateSet(copyop(rhs._shadowingStateSet.get())),
     _validExpression(rhs._validExpression),
index b2ce020f07166d26f0d536fbff6c6f66c352f2f4..b2895cd13f1892ff71360a4b0c59b2bdfe24b8d5 100644 (file)
@@ -103,7 +103,7 @@ protected:
     struct ContextInfo : public osg::Referenced
     {
         ContextInfo() : valid(UNKNOWN) {}
-        ContextInfo(const ContextInfo& rhs) : valid(rhs.valid()) {}
+        ContextInfo(const ContextInfo& rhs) : osg::Referenced(rhs), valid(rhs.valid()) {}
         ContextInfo& operator=(const ContextInfo& rhs)
         {
             valid = rhs.valid;
index 1296e9c348f321719d7bcad89736c7b918c49a11..d0c69d030275ccdc3f15e6a815d1d989e8d2247a 100644 (file)
@@ -34,7 +34,8 @@ public:
   SGSceneUserData() {}
   SGSceneUserData(const SGSceneUserData& rhs,
                   const osg::CopyOp& copyOp = osg::CopyOp::SHALLOW_COPY)
-    : _bvhNode(rhs._bvhNode), _velocity(rhs._velocity),
+    : osg::Object(rhs,copyOp),
+      _bvhNode(rhs._bvhNode), _velocity(rhs._velocity),
       _pickCallbacks(rhs._pickCallbacks)
   {
   }