The real question is -- does boost even offer a smart pointer type that replicates
ref_ptr, or is all this a pointless exercise?

I've stepped through ref_ptr code before and it does seem similar to intrusive and perhaps shared as well. I have also discovered a few matrix classes that are public one of which is optimized SSE and SSE2, where some of the benchmark code pointed out a standard to work with them among several offered (including Microsoft's).

The most attractive thing about standards like std::, boost, and tr1, is that they are tested extensively by a wider c++ community and so they must be pretty darn robust and more versatile, but more important if you are like me and code for more platforms other than osg, you'll find it extremely useful to be able to transfer knowledge of one standard and apply it to multiple projects with completely different environments.


James Killian
----- Original Message ----- From: "Chris 'Xenon' Hanson" <xe...@alphapixel.com>
To: "OpenSceneGraph Users" <osg-users@lists.openscenegraph.org>
Sent: Sunday, May 31, 2009 8:21 PM
Subject: Re: [osg-users] osg::ref_ptr<> used anymore


Judd Tracy wrote:
Boost only needs to be installed if you use certain features.  Shared
pointers is not one of those features in which it needs to be
installed.

I like boost myself, and have used parts of it in different projects. But, I want to
clarify the sense of "installed" here.

I'd differentiate the multiple meanings of "installed" into headers-installed and libraries-installed. To use any part of boost in your code, you (the person compiling the boost-using project) must have the boost development kit with headers installed. This is one component that OSG doesn't currently require. It's pretty version-safe -- generally if
you require boost x.y.z, any version > than that should be fine.

Judd is right in that most of boost does its magic at compile-time and doesn't need
binary libraries at link-time.

However, it seems it is still possible to get in trouble when you mix binaries compiled by different people who used different versions of boost -- whether they were using
compile-time or link-time portions of boost.

Because OSG incorporates other third-party libraries (such as Collada) that incorporate boost and are difficult for individual OSG developers or the project maintainers to recompile every time something changes, we've run afoul of this problem and are gun-shy.

The real question is -- does boost even offer a smart pointer type that replicates
ref_ptr, or is all this a pointless exercise?

--
Chris 'Xenon' Hanson, omo sanza lettere Xenon AlphaPixel.com PixelSense Landsat processing now available! http://www.alphapixel.com/demos/ "There is no Truth. There is only Perception. To Perceive is to Exist." - Xen
_______________________________________________
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

Reply via email to