#ifndef _BODY_COMPONENT_H #define _BODY_COMPONENT_H #include #include #include #include namespace smo { class Mind; class ComponentThread; namespace body { class Body : public PuppetComponent { public: Body(Mind &parent, const std::shared_ptr &thread); ~Body() = default; typedef std::function bodyLifetimeMgmtOpCbFn; void initializeReq(Callback callback); void finalizeReq(Callback callback); private: class InitializeReq; class FinalizeReq; }; } // namespace body } // namespace smo #endif // _BODY_COMPONENT_H