#ifndef __CAMERA_MODIFIER__
#define __CAMERA_MODIFIER__
class RKCamera;
/// \brief The camera modifier base class. This should be derived from
/// for systems that need to adjust the game camera.
class CameraModifier
{
public:
/// \brief Protected virtual destructor - call Destroy()
virtual ~CameraModifier() {}
/// \brief Destroys this object. By default will delete this object,
/// but implementations may decide to override this to re-use the object.
virtual void Destroy();
/// \brief Update the passed camera with the given delta time
/// \param a_dt The time delta
/// \param a_camera The camera to update
/// \return Returns true if future updates should occur
virtual bool Update(float a_dt, RKCamera * a_camera) = 0;
};
#endif //__CAMERA_MODIFIER__