47 lines
1.1 KiB
C
Raw Permalink Normal View History

#pragma once
#include "GetInterfaceData.h"
/**
* @brief IDL文件生成类IDL文件
*/
class GenIDL
{
public:
/**
* @brief IDL文件
* @param interfaceData
* @return
*/
static bool generateIDL(const AllInterfaceData &interfaceData);
/**
* @brief IDL文件路径
* @return IDL文件完整路径
*/
static std::string &getIDLFilePath() { return idlFilePath; }
/**
* @brief
* @return
*/
static bool createConfigDirectory(const std::string &configName);
private:
/**
* @brief IDL文件内容
* @param interfaceData
* @return IDL文件内容
*/
static std::string generateIDLContent(const AllInterfaceData &interfaceData);
/**
* @brief
* @param structData
* @return
*/
static std::string generateStructDefinition(const StructInterfaceData &structData);
static std::string idlFilePath; ///< IDL文件完整路径
};