| #pragma once |
| #include <cstdint> |
| #include <nlohmann/json.hpp> |
| |
| namespace license |
| { |
| // clang-format off |
| |
| enum class LicenseType : std::uint8_t{ |
| Invalid, |
| Production, |
| Prototype, |
| Trial, |
| }; |
| |
| enum class AuthorizationScope : std::uint8_t{ |
| Invalid, |
| Device, |
| Capacity, |
| Service, |
| }; |
| |
| enum class LicenseOrigin : std::uint8_t{ |
| Invalid, |
| BuiltIn, |
| Installed, |
| }; |
| |
| NLOHMANN_JSON_SERIALIZE_ENUM(LicenseType, { |
| {LicenseType::Invalid, "Invalid"}, |
| {LicenseType::Production, "Production"}, |
| {LicenseType::Prototype, "Prototype"}, |
| {LicenseType::Trial, "Trial"}, |
| }); |
| |
| NLOHMANN_JSON_SERIALIZE_ENUM(AuthorizationScope, { |
| {AuthorizationScope::Invalid, "Invalid"}, |
| {AuthorizationScope::Device, "Device"}, |
| {AuthorizationScope::Capacity, "Capacity"}, |
| {AuthorizationScope::Service, "Service"}, |
| }); |
| |
| NLOHMANN_JSON_SERIALIZE_ENUM(LicenseOrigin, { |
| {LicenseOrigin::Invalid, "Invalid"}, |
| {LicenseOrigin::BuiltIn, "BuiltIn"}, |
| {LicenseOrigin::Installed, "Installed"}, |
| }); |
| |
| } // namespace license |
| // clang-format on |