blob: 345dbf99da92ec654cb32f9a61835484b5ca6dc3 [file] [log] [blame]
#ifndef _RIVE_SKINNABLE_HPP_
#define _RIVE_SKINNABLE_HPP_
#include "rive/rive_types.hpp"
namespace rive
{
class Skin;
class Component;
class Skinnable
{
friend class Skin;
private:
Skin* m_Skin = nullptr;
protected:
void skin(Skin* skin);
public:
virtual ~Skinnable() {}
Skin* skin() const { return m_Skin; }
virtual void markSkinDirty() = 0;
static Skinnable* from(Component* component);
};
} // namespace rive
#endif