#ifndef COMPONENT_H #define COMPONENT_H #include #include #include #include #include namespace sscl { class ComponentThread; class Component { public: Component(const std::shared_ptr &thread); ~Component() = default; public: std::shared_ptr thread; public: }; class PuppetComponent : public Component { public: PuppetComponent( PuppetApplication &parent, const std::shared_ptr &thread); ~PuppetComponent() = default; public: PuppetApplication &parent; }; } // namespace sscl #endif // COMPONENT_H