#ifndef __HGPDTTOOLDB_H__ #define __HGPDTTOOLDB_H__ #include "base/HGDef.h" #include "base/HGBaseErr.h" #include "HGPdtToolDbErr.h" /* 状态正常 */ #define HGPDTTOOLDB_USERSTATUS_OK 0L /* 账户在其他地方登录 */ #define HGPDTTOOLDB_USERSTATUS_CONFLICT 1L /* 被管理员账户强制下线 */ #define HGPDTTOOLDB_USERSTATUS_REFUSE 2L /* 数据库异常 */ #define HGPDTTOOLDB_USERSTATUS_DBERROR 3L /* 管理员账户 */ #define HGPDTTOOLDB_USERTYPE_ROOT 1L /* 普通账户 */ #define HGPDTTOOLDB_USERTYPE_NORMAL 2L /* 未测试 */ #define HGPDTTOOLDB_ENTRYSTATUS_NOTTEST 0L /* 不通过 */ #define HGPDTTOOLDB_ENTRYSTATUS_NOTPASS 1L /* 不支持 */ #define HGPDTTOOLDB_ENTRYSTATUS_NOTSUPP 2L /* 通过 */ #define HGPDTTOOLDB_ENTRYSTATUS_PASS 3L HG_DECLARE_HANDLE(HGPdtToolDbUserMgr); HG_DECLARE_HANDLE(HGPdtToolDbDevice); /* 登录 */ HGEXPORT HGResult HGAPI HGPdtToolDb_CreateUserMgr(const HGChar *host, HGUShort port, const HGChar *userName, const HGChar *pwd, HGPdtToolDbUserMgr *userMgr); /* 登出 */ HGEXPORT HGResult HGAPI HGPdtToolDb_DestroyUserMgr(HGPdtToolDbUserMgr userMgr); /* 获取用户状态 */ HGEXPORT HGResult HGAPI HGPdtToolDb_GetUserStatus(HGPdtToolDbUserMgr userMgr, HGUInt* userStatus); /* 获取当前账户类型 */ HGEXPORT HGResult HGAPI HGPdtToolDb_GetUserType(HGPdtToolDbUserMgr userMgr, HGUInt *userType); /* 获取当前账户名称 */ HGEXPORT HGResult HGAPI HGPdtToolDb_GetUserName(HGPdtToolDbUserMgr userMgr, HGChar *userName, HGUInt maxLen); /* 强制某个账户下线,需要管理员账户才能调用 */ HGEXPORT HGResult HGAPI HGPdtToolDb_RefuseUser(HGPdtToolDbUserMgr userMgr, HGChar* userName); /* 获取账户列表,需要管理员账户才能调用 */ HGEXPORT HGResult HGAPI HGPdtToolDb_GetUserList(HGPdtToolDbUserMgr userMgr, HGChar **userNameList, HGUInt maxLen, HGUInt* count); /* 销毁账户列表 */ HGEXPORT HGResult HGAPI HGPdtToolDb_ReleaseUserList(HGChar **userNameList, HGUInt count); /* 创建账户,需要管理员账户才能调用 */ HGEXPORT HGResult HGAPI HGPdtToolDb_CreateUser(HGPdtToolDbUserMgr userMgr, const HGChar *userName, const HGChar* defPwd); /* 销毁账户,需要管理员账户才能调用 */ HGEXPORT HGResult HGAPI HGPdtToolDb_DestroyUser(HGPdtToolDbUserMgr userMgr, const HGChar* userName); /* 设置账户密码,需要管理员账户才能调用 */ HGEXPORT HGResult HGAPI HGPdtToolDb_SetPassword(HGPdtToolDbUserMgr userMgr, const HGChar* userName, const HGChar* pwd); /* 修改本账户的密码 */ HGEXPORT HGResult HGAPI HGPdtToolDb_ModifyPassword(HGPdtToolDbUserMgr userMgr, const HGChar* oldPwd, const HGChar* newPwd); /* 上传/更新文件,需要管理员账户才能调用 */ HGEXPORT HGResult HGAPI HGPdtToolDb_UploadFile(HGPdtToolDbUserMgr userMgr, const HGChar *tag, const HGChar *fileName); /* 下载文件 */ HGEXPORT HGResult HGAPI HGPdtToolDb_DownloadFile(HGPdtToolDbUserMgr userMgr, const HGChar* tag, const HGChar* fileName); /* 导出所有设备测试信息到XLS文件 */ HGEXPORT HGResult HGAPI HGPdtToolDb_Export(HGPdtToolDbUserMgr userMgr, const HGChar *xlsPath); /* 获取用户配置 */ HGEXPORT HGResult HGAPI HGPdtToolDb_GetUserConfig(HGPdtToolDbUserMgr userMgr, const HGChar* key, HGChar* value, HGUInt maxLen); /* 设置用户配置 */ HGEXPORT HGResult HGAPI HGPdtToolDb_SetUserConfig(HGPdtToolDbUserMgr userMgr, const HGChar* key, const HGChar* value); /* 获取测试项中文字符串 */ HGEXPORT HGResult HGAPI HGPdtToolDb_GetEntryNameCnStr(HGPdtToolDbUserMgr userMgr, const HGChar* entryName, HGChar* entryNameCnStr, HGUInt maxLen); /* 设置测试项中文字符串 */ HGEXPORT HGResult HGAPI HGPdtToolDb_SetEntryNameCnStr(HGPdtToolDbUserMgr userMgr, const HGChar* entryName, const HGChar* entryNameCnStr); /* 创建/打开设备,sn标识设备唯一序列号 */ HGEXPORT HGResult HGAPI HGPdtToolDb_OpenDevice(HGPdtToolDbUserMgr userMgr, const HGChar* sn, HGPdtToolDbDevice *device); /* 关闭设备 */ HGEXPORT HGResult HGAPI HGPdtToolDb_CloseDevice(HGPdtToolDbDevice device); /* 获取设备名称 */ HGEXPORT HGResult HGAPI HGPdtToolDb_GetDeviceName(HGPdtToolDbDevice device, HGChar* name, HGUInt maxLen); /* 设置设备名称 */ HGEXPORT HGResult HGAPI HGPdtToolDb_SetDeviceName(HGPdtToolDbDevice device, const HGChar* name); /* 获取设备类型 */ HGEXPORT HGResult HGAPI HGPdtToolDb_GetDeviceType(HGPdtToolDbDevice device, HGChar* type, HGUInt maxLen); /* 设置设备类型 */ HGEXPORT HGResult HGAPI HGPdtToolDb_SetDeviceType(HGPdtToolDbDevice device, const HGChar* type); /* 获取设备版本 */ HGEXPORT HGResult HGAPI HGPdtToolDb_GetDeviceVersion(HGPdtToolDbDevice device, HGChar* version, HGUInt maxLen); /* 设置设备版本 */ HGEXPORT HGResult HGAPI HGPdtToolDb_SetDeviceVersion(HGPdtToolDbDevice device, const HGChar* version); /* 获取某个测试项的状态 */ HGEXPORT HGResult HGAPI HGPdtToolDb_GetDeviceEntryStatus(HGPdtToolDbDevice device, const HGChar* entryName, HGUInt *entryStatus); /* 获取某个测试项的异常说明 */ HGEXPORT HGResult HGAPI HGPdtToolDb_GetDeviceEntryExcepDesc(HGPdtToolDbDevice device, const HGChar* entryName, HGChar *excepDesc, HGUInt maxLen); /* 设置某个测试项的状态 */ HGEXPORT HGResult HGAPI HGPdtToolDb_SetDeviceEntryStatus(HGPdtToolDbDevice device, const HGChar* entryName, HGUInt entryStatus); /* 设置某个测试项的异常说明 */ HGEXPORT HGResult HGAPI HGPdtToolDb_SetDeviceEntryExcepDesc(HGPdtToolDbDevice device, const HGChar* entryName, const HGChar* excepDesc); /* 下载某个测试项关联的图像 */ HGEXPORT HGResult HGAPI HGPdtToolDb_DownloadDeviceEntryImage(HGPdtToolDbDevice device, const HGChar* entryName, const HGChar* ftpHost, HGUShort ftpPort, HGUInt index, const HGChar* fileName); /* 获取某个测试项关联的图像数量 */ HGEXPORT HGResult HGAPI HGPdtToolDb_GetDeviceEntryImageCount(HGPdtToolDbDevice device, const HGChar* entryName, HGUInt* count); /* 清理某个测试项关联的图像 */ HGEXPORT HGResult HGAPI HGPdtToolDb_ClearDeviceEntryImage(HGPdtToolDbDevice device, const HGChar* entryName); /* 上传某个测试项关联的图像 */ HGEXPORT HGResult HGAPI HGPdtToolDb_UploadDeviceEntryImage(HGPdtToolDbDevice device, const HGChar* entryName, const HGChar* ftpHost, HGUShort ftpPort, const HGChar* fileName); #endif /* __HGPDTTOOLDB_H__ */