#pragma once #include "IServoDriveFactory.h" namespace DIOS::Dev::Detail::MachineryECOM { const std::string SERVO_DRIVE_BS = "SERVO_DRIVE_BS"; const std::string SERVO_DRIVE_JR = "SERVO_DRIVE_JR"; class IServoDrive; class ServoDriveFactory : public IServoDriveFactory { public: ServoDriveFactory(); ~ServoDriveFactory(); public: static ServoDriveFactory *Instance(); virtual IServoDrive *Create(const std::string &typeName) override; private: static ServoDriveFactory *m_instance; std::vector m_servos; }; }