57 lines
1.4 KiB
C
57 lines
1.4 KiB
C
|
#pragma once
|
||
|
|
||
|
#include <string>
|
||
|
#include <vector>
|
||
|
class XNModelGen
|
||
|
{
|
||
|
public:
|
||
|
XNModelGen();
|
||
|
~XNModelGen();
|
||
|
|
||
|
int Initialize(const std::string &className, const std::string &version,
|
||
|
const std::string &planeName, std::string &errorMsg);
|
||
|
|
||
|
int GenerateCode(std::string &errorMsg);
|
||
|
|
||
|
private:
|
||
|
std::string GetXNCorePath();
|
||
|
std::string UpperCase(const std::string &str);
|
||
|
void ParseStructName(const std::string &str, std::string &structName,
|
||
|
std::string &interfaceName);
|
||
|
|
||
|
bool GenerateHeaderFile();
|
||
|
bool GenerateSourceFile();
|
||
|
bool GenerateCMakeLists();
|
||
|
bool GenerateConfigFile();
|
||
|
|
||
|
private:
|
||
|
std::string m_planeName;
|
||
|
std::string m_className;
|
||
|
std::string m_version;
|
||
|
std::string m_confID;
|
||
|
std::string m_name;
|
||
|
std::string m_author;
|
||
|
std::string m_description;
|
||
|
std::string m_createTime;
|
||
|
std::string m_changeTime;
|
||
|
std::string m_runFreq;
|
||
|
std::string m_runNode;
|
||
|
std::string m_priority;
|
||
|
std::string m_dataPackagePath;
|
||
|
std::string m_dataPackageName;
|
||
|
std::string m_dataPackageHeaderName;
|
||
|
std::string m_dataPackageEntryPoint;
|
||
|
std::string m_dataPackageInterfaceName;
|
||
|
bool m_hasDataPackage;
|
||
|
std::string m_inputStructName;
|
||
|
std::string m_inputStructName_Interface;
|
||
|
std::string m_outputStructName;
|
||
|
std::string m_outputStructName_Interface;
|
||
|
std::string m_heartStructName;
|
||
|
std::string m_heartStructName_Interface;
|
||
|
std::string m_confName;
|
||
|
std::string m_workPath;
|
||
|
std::string m_modelsPath;
|
||
|
std::string m_codePath;
|
||
|
std::vector<std::string> m_cmdList;
|
||
|
};
|