#pragma once #include #include "ifaces/ILink.h" class ILinkMixin; using MixinPtr = std::shared_ptr; using LinkPtr = std::shared_ptr>; class ILinkMixin { public: virtual ~ILinkMixin() = default; virtual void linkChild(const MixinPtr& child) = 0; virtual void unlinkParent() = 0; virtual LinkPtr getLink() = 0; };