#ifndef _RIVE_DRAW_RULES_HPP_
#define _RIVE_DRAW_RULES_HPP_
#include "rive/generated/draw_rules_base.hpp"
#include <stdio.h>
namespace rive
{
    class DrawTarget;
    class DrawRules : public DrawRulesBase
    {
    private:
        DrawTarget* m_ActiveTarget = nullptr;

    public:
        DrawTarget* activeTarget() const { return m_ActiveTarget; }

        StatusCode onAddedDirty(CoreContext* context) override;
        StatusCode onAddedClean(CoreContext* context) override;

    protected:
        void drawTargetIdChanged() override;
    };
} // namespace rive

#endif