[osg-users] Swapping ref_ptr

2010-06-30 Thread Sam Warns
Hi,

I am in a situation where I receive a osg::ref_ptrGroup to which I should add 
a Transform Node (or basically prepend it)

Usually the group I receive is in a hierarchy of nodes, so I was thinking about 
getting parents of this group, removing this group as a child and add the 
Transform instead. 

But is there a better way?
Since I actually do not know anything about the parents of the group it is also 
possible that there is no parent yet so the exchange is getting difficult.

Now I am wondering if it is possible and safe to swap the inner pointer of the 
ref_ptr. Basically my functions looks like

Code:

void foo (osg::ref_ptrosg::Group myGroup)
{
  // do something
 osg::ptr_refosg::MatrixTransform mat = new MatrixTransform;
 // change
 myGroup.swap(mat);
}




Which is called from a parent function like

Code:

void parentFoo()
{
  osg::ref_ptrosg::Group myGroup = new osg::Group;
  foo(myGroup);

  // now I need myGroup to point to MatrixTransform without noticing it

}




Is this going to work?
I have no compiler on this maschine to test right now so I am just assuming and 
browsing the docs.


Thank you!

Cheers,
Sam

--
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=29515#29515





___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] Swapping ref_ptr

2010-06-30 Thread Sunil S Nandihalli
just pass by reference .. I think that should do the trick ..

On Wed, Jun 30, 2010 at 3:04 PM, Sam Warns the_vincu...@hotmail.com wrote:

 Hi,

 I am in a situation where I receive a osg::ref_ptrGroup to which I should
 add a Transform Node (or basically prepend it)

 Usually the group I receive is in a hierarchy of nodes, so I was thinking
 about getting parents of this group, removing this group as a child and add
 the Transform instead.

 But is there a better way?
 Since I actually do not know anything about the parents of the group it is
 also possible that there is no parent yet so the exchange is getting
 difficult.

 Now I am wondering if it is possible and safe to swap the inner pointer of
 the ref_ptr. Basically my functions looks like

 Code:

 void foo (osg::ref_ptrosg::Group myGroup)
 {
  // do something
  osg::ptr_refosg::MatrixTransform mat = new MatrixTransform;
  // change
  myGroup.swap(mat);
 }




 Which is called from a parent function like

 Code:

 void parentFoo()
 {
  osg::ref_ptrosg::Group myGroup = new osg::Group;
  foo(myGroup);

  // now I need myGroup to point to MatrixTransform without noticing it

 }




 Is this going to work?
 I have no compiler on this maschine to test right now so I am just assuming
 and browsing the docs.


 Thank you!

 Cheers,
 Sam

 --
 Read this topic online here:
 http://forum.openscenegraph.org/viewtopic.php?p=29515#29515





 ___
 osg-users mailing list
 osg-users@lists.openscenegraph.org
 http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] Swapping ref_ptr

2010-06-30 Thread Sam Warns
Hi,
passing a ref_ptr by reference.

This sounds somehow strange to me.

--
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=29517#29517





___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org