libcmo21/Unvirt/AccessibleValue.hpp

33 lines
1.0 KiB
C++
Raw Normal View History

2023-02-08 22:57:31 +08:00
#pragma once
#include <VTConstants.hpp>
2023-02-09 14:12:02 +08:00
#include <vector>
2023-02-08 22:57:31 +08:00
#include <string>
namespace Unvirt {
namespace AccessibleValue {
2023-02-09 14:12:02 +08:00
template<typename TEnum>
using EnumDescPairArray = std::vector<std::pair<TEnum, const char*>>;
2023-02-08 22:57:31 +08:00
2023-02-09 14:12:02 +08:00
namespace EnumDesc {
extern const EnumDescPairArray<LibCmo::CK_FILE_WRITEMODE> CK_FILE_WRITEMODE;
extern const EnumDescPairArray<LibCmo::CK_LOAD_FLAGS> CK_LOAD_FLAGS;
extern const EnumDescPairArray<LibCmo::CK_FO_OPTIONS> CK_FO_OPTIONS;
}
template<typename TEnum>
void GetEnumName(const EnumDescPairArray<TEnum> desc, std::string& strl, TEnum val);
template<typename TEnum>
void GetFlagEnumName(const EnumDescPairArray<TEnum> desc, std::string& strl, TEnum val);
2023-02-08 22:57:31 +08:00
void GetClassIdName(std::string& strl, LibCmo::CK_CLASSID cls);
void GetCkErrorName(std::string& strl, LibCmo::CKERROR err);
void GetClassIdHierarchy(std::string& strl, LibCmo::CK_CLASSID cls);
void GetCkErrorDescription(std::string& strl, LibCmo::CKERROR err);
2023-02-09 14:12:02 +08:00
2023-02-08 22:57:31 +08:00
void GetAccessibleFileSize(std::string& strl, uint64_t size);
}
}