#pragma once #include #include class XNServiceGen { public: XNServiceGen(); ~XNServiceGen(); int Initialize(const std::string &className, const std::string &version, std::string &errorMsg); int GenerateCode(std::string &errorMsg); const std::string &GetCodePath() const; private: std::string GetXNCorePath(); std::string UpperCase(const std::string &str); std::vector SplitString(const std::string &str); bool GenerateHeaderFile(); bool GenerateSourceFile(); bool GenerateCMakeLists(); bool GenerateConfigFile(); private: std::string m_className; std::string m_version; std::string m_name; std::string m_author; std::string m_description; std::string m_createTime; std::string m_changeTime; std::string m_workPath; std::string m_codePath; };