certificate/include/api/ICertificate.h

34 lines
710 B
C++

#pragma once
#include <stdint.h>
class IView;
namespace util {
class ICeroptions;
class ICertificate {
public:
virtual ~ICertificate() = default;
// 解析证书
virtual void Parse(const char* lic, uint16_t len) = 0;
// 获取与硬件相关的标识
virtual void GetMachineCode(char* code, uint16_t len) = 0;
// 生成证书
virtual void CreateCertificate(const IView* v, ICeroptions* op) = 0;
// 验证证书
virtual int Verification(const char* lic) = 0;
// 验证失败的具体信息
virtual void GetErrMsg(int index, char er[30]) const = 0;
// 配置视图程序
virtual void PushView(const IView* ) = 0;
static ICertificate* CreateCertificate() noexcept;
};
}