Files
comaps/libs/drape_frontend/animation/interpolation_holder.hpp
Alexander Borsuk 76ffc99abd New cpp folder structure
Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-08-14 20:52:04 +07:00

32 lines
645 B
C++

#pragma once
#include "base/macros.hpp"
#include <set>
namespace df
{
class BaseInterpolator;
class InterpolationHolder
{
public:
static InterpolationHolder & Instance();
bool IsActive() const;
void Advance(double elapsedSeconds);
private:
InterpolationHolder() = default;
~InterpolationHolder();
DISALLOW_COPY_AND_MOVE(InterpolationHolder);
private:
friend class BaseInterpolator;
void RegisterInterpolator(BaseInterpolator * interpolator);
void DeregisterInterpolator(BaseInterpolator * interpolator);
using TInterpolatorSet = std::set<BaseInterpolator *>;
TInterpolatorSet m_interpolations;
};
} // namespace df