Hi Magnus,

I'm aware that this introduces a massive API break, but in fact this has
already been done to some extent when MatrixManipulator was renamed. All
old code using this class had to be adapted there as well.

In general, what does the community feel about breaking API in this manner
between major revisions? Is this more of a nuisance, or a way to keep the
API clean and consistent?

I agree with you that the API has already been broken, and I think consistency would be important as well, so I would agree with your changes.

To note, I recently made our framework compile with recent OSG from SVN, and since I needed to keep backward compatibility (i.e. compile with OSG 2.6, 2.8.3 and SVN from the same code base) I ended up putting a typedef CameraManipulator MatrixManipulator in a few places. OSG could pretty easily have added a header called MatrixManipulator that would have been simply:

#include <osgGA/CameraManipulator>
typedef CameraManipulator MatrixManipulator;

and thus kept backward compatibility. It would have made things easier for me and probably others too, but then again since the next official version of OSG is 3.0, changing the API and having as little backward compatibility overhead makes sense too...

J-S
--
______________________________________________________
Jean-Sebastien Guay    [email protected]
                               http://www.cm-labs.com/
                        http://whitestar02.webhop.org/
_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org

Reply via email to