blob: e48a4f2adfcce979a17745c0f6444012324cd1fa [file] [log] [blame]
#ifndef _RIVE_LAYOUT_NODE_PROVIDER_HPP_
#define _RIVE_LAYOUT_NODE_PROVIDER_HPP_
#include <assert.h>
#include <vector>
namespace rive
{
class AABB;
class Component;
class LayoutConstraint;
class TransformComponent;
class LayoutNodeProvider
{
protected:
std::vector<LayoutConstraint*> m_layoutConstraints;
public:
static LayoutNodeProvider* from(Component* component);
virtual TransformComponent* transformComponent() = 0;
void addLayoutConstraint(LayoutConstraint* constraint);
virtual AABB layoutBounds() = 0;
};
} // namespace rive
#endif