diff --git a/simgear/canvas/CanvasMgr.hxx b/simgear/canvas/CanvasMgr.hxx
index 3255d4bc..e689a7f4 100644
--- a/simgear/canvas/CanvasMgr.hxx
+++ b/simgear/canvas/CanvasMgr.hxx
@@ -28,42 +28,39 @@ namespace simgear
namespace canvas
{
- class CanvasMgr:
- public PropertyBasedMgr
- {
- public:
+class CanvasMgr : public PropertyBasedMgr
+{
+public:
+ /**
+ * @param node Root node of branch used to control canvasses
+ */
+ CanvasMgr(SGPropertyNode_ptr node);
- /**
- * @param node Root node of branch used to control canvasses
- */
- CanvasMgr(SGPropertyNode_ptr node);
+ /**
+ * Create a new canvas
+ *
+ * @param name Name of the new canvas
+ */
+ CanvasPtr createCanvas(const std::string& name = "");
- /**
- * Create a new canvas
- *
- * @param name Name of the new canvas
- */
- CanvasPtr createCanvas(const std::string& name = "");
+ /**
+ * Get ::Canvas by index
+ *
+ * @param index Index of texture node in /canvas/by-index/
+ */
+ CanvasPtr getCanvas(size_t index) const;
- /**
- * Get ::Canvas by index
- *
- * @param index Index of texture node in /canvas/by-index/
- */
- CanvasPtr getCanvas(size_t index) const;
+ /**
+ * Get ::Canvas by name
+ *
+ * @param name Value of child node "name" in
+ * /canvas/by-index/texture[i]/name
+ */
+ CanvasPtr getCanvas(const std::string& name) const;
- /**
- * Get ::Canvas by name
- *
- * @param name Value of child node "name" in
- * /canvas/by-index/texture[i]/name
- */
- CanvasPtr getCanvas(const std::string& name) const;
-
- protected:
-
- void elementCreated(PropertyBasedElementPtr element) override;
- };
+protected:
+ void elementCreated(PropertyBasedElementPtr element) override;
+};
} // namespace canvas
} // namespace simgear
diff --git a/simgear/misc/interpolator.hxx b/simgear/misc/interpolator.hxx
index e0721c6c..9a5bdcfa 100644
--- a/simgear/misc/interpolator.hxx
+++ b/simgear/misc/interpolator.hxx
@@ -30,7 +30,8 @@
// code can register another one immediately without worrying about
// timer aliasing.
-class SGInterpolator : public SGSubsystem {
+class SGInterpolator : public SGSubsystem
+{
public:
SGInterpolator() { _list = 0; }
virtual void init() {}
diff --git a/simgear/props/PropertyBasedMgr.hxx b/simgear/props/PropertyBasedMgr.hxx
index 9a14dab5..e058206b 100644
--- a/simgear/props/PropertyBasedMgr.hxx
+++ b/simgear/props/PropertyBasedMgr.hxx
@@ -29,74 +29,71 @@
namespace simgear
{
- class PropertyBasedMgr:
- public SGSubsystem,
- public SGPropertyChangeListener
- {
- public:
- void init() override;
- void shutdown() override;
+class PropertyBasedMgr : public SGSubsystem,
+ public SGPropertyChangeListener
+{
+public:
+ void init() override;
+ void shutdown() override;
- void update (double delta_time_sec) override;
+ void update(double delta_time_sec) override;
- /**
- * Create a new PropertyBasedElement
- *
- * @param name Name of the new element
- */
- PropertyBasedElementPtr createElement(const std::string& name = "");
+ /**
+ * Create a new PropertyBasedElement
+ *
+ * @param name Name of the new element
+ */
+ PropertyBasedElementPtr createElement(const std::string& name = "");
- /**
- * Get an existing PropertyBasedElement by its index
- *
- * @param index Index of element node in property tree
- */
- PropertyBasedElementPtr getElement(size_t index) const;
+ /**
+ * Get an existing PropertyBasedElement by its index
+ *
+ * @param index Index of element node in property tree
+ */
+ PropertyBasedElementPtr getElement(size_t index) const;
- /**
- * Get an existing PropertyBasedElement by its name
- *
- * @param name Name (value of child node "name" will be matched)
- */
- PropertyBasedElementPtr getElement(const std::string& name) const;
+ /**
+ * Get an existing PropertyBasedElement by its name
+ *
+ * @param name Name (value of child node "name" will be matched)
+ */
+ PropertyBasedElementPtr getElement(const std::string& name) const;
- virtual const SGPropertyNode* getPropertyRoot() const;
+ virtual const SGPropertyNode* getPropertyRoot() const;
- protected:
+protected:
+ typedef boost::function
-namespace simgear
+namespace simgear {
+
+/**
+ * Subsystem that manages interpolation of properties.
+ *
+ * By default the numeric values of the properties are interpolated. For
+ * example, for strings this is probably not the wanted behavior. For this
+ * adapter classes can be registered to allow providing specific
+ * interpolations for certain types of properties. Using the type "color",
+ * provided by ColorInterpolator, strings containing %CSS colors can also be
+ * interpolated.
+ *
+ * Additionally different functions can be used for easing of the animation.
+ * By default "linear" (constant animation speed) and "swing" (smooth
+ * acceleration and deceleration) are available.
+ */
+class PropertyInterpolationMgr : public SGSubsystem
{
+public:
+ typedef PropertyInterpolator* (*InterpolatorFactory)();
- /**
- * Subsystem that manages interpolation of properties.
- *
- * By default the numeric values of the properties are interpolated. For
- * example, for strings this is probably not the wanted behavior. For this
- * adapter classes can be registered to allow providing specific
- * interpolations for certain types of properties. Using the type "color",
- * provided by ColorInterpolator, strings containing %CSS colors can also be
- * interpolated.
- *
- * Additionally different functions can be used for easing of the animation.
- * By default "linear" (constant animation speed) and "swing" (smooth
- * acceleration and deceleration) are available.
- */
- class PropertyInterpolationMgr:
- public SGSubsystem
- {
- public:
- typedef PropertyInterpolator* (*InterpolatorFactory)();
+ PropertyInterpolationMgr();
- PropertyInterpolationMgr();
+ /**
+ * Update all active interpolators.
+ */
+ void update(double dt);
- /**
- * Update all active interpolators.
- */
- void update(double dt);
+ /**
+ * Create a new property interpolator.
+ *
+ * @note To actually use it the interpolator needs to be attached to a
+ * property using PropertyInterpolationMgr::interpolate.
+ *
+ * @param type Type of animation ("numeric", "color", etc.)
+ * @param target Property containing target value
+ * @param duration Duration if the animation (in seconds)
+ * @param easing Type of easing ("linear", "swing", etc.)
+ */
+ PropertyInterpolator*
+ createInterpolator(const std::string& type,
+ const SGPropertyNode& target,
+ double duration,
+ const std::string& easing);
- /**
- * Create a new property interpolator.
- *
- * @note To actually use it the interpolator needs to be attached to a
- * property using PropertyInterpolationMgr::interpolate.
- *
- * @param type Type of animation ("numeric", "color", etc.)
- * @param target Property containing target value
- * @param duration Duration if the animation (in seconds)
- * @param easing Type of easing ("linear", "swing", etc.)
- */
- PropertyInterpolator*
- createInterpolator( const std::string& type,
- const SGPropertyNode& target,
- double duration,
- const std::string& easing );
+ /**
+ * Add animation of the given property from its current value to the
+ * target value of the interpolator. If no interpolator is given any
+ * existing animation of the given property is aborted.
+ *
+ * @param prop Property to be interpolated
+ * @param interp Interpolator used for interpolation
+ */
+ bool interpolate(SGPropertyNode* prop,
+ PropertyInterpolatorRef interp = 0);
- /**
- * Add animation of the given property from its current value to the
- * target value of the interpolator. If no interpolator is given any
- * existing animation of the given property is aborted.
- *
- * @param prop Property to be interpolated
- * @param interp Interpolator used for interpolation
- */
- bool interpolate( SGPropertyNode* prop,
- PropertyInterpolatorRef interp = 0 );
+ bool interpolate(SGPropertyNode* prop,
+ const std::string& type,
+ const SGPropertyNode& target,
+ double duration,
+ const std::string& easing);
- bool interpolate( SGPropertyNode* prop,
- const std::string& type,
- const SGPropertyNode& target,
- double duration,
- const std::string& easing );
+ bool interpolate(SGPropertyNode* prop,
+ const std::string& type,
+ const PropertyList& values,
+ const double_list& deltas,
+ const std::string& easing);
- bool interpolate( SGPropertyNode* prop,
- const std::string& type,
- const PropertyList& values,
- const double_list& deltas,
- const std::string& easing );
-
- /**
- * Register factory for interpolation type.
- */
- void addInterpolatorFactory( const std::string& type,
- InterpolatorFactory factory );
- template