5#ifndef PICOSCENES_PLATFORM_LICENSEMODEL_HXX
6#define PICOSCENES_PLATFORM_LICENSEMODEL_HXX
44 std::optional<std::vector<std::pair<double, double>>>
valueRanges;
48 explicit Feature(
const std::string &
featureName,
const std::optional<std::vector<std::pair<double, double>>> &
valueRanges = std::nullopt,
const std::optional<std::vector<double>> &
discreteValueSet = std::nullopt,
const std::optional<std::vector<std::string>> &
stringSets = std::nullopt);
55 std::optional<std::string> proLicenseKey{};
56 std::string hardwareId{};
57 std::string licenseName{};
58 std::string licenseDescription{};
61 std::string licenseFilePath{};
static const std::string SDR_NumRxChannels
static const std::string MultiInstance
static const std::string SDR_MultiMotherBoard
static const std::string SDR_LegacyCSI
static const std::string SDR_RxFromFile
static const std::string SDR_ClockSource
static const std::string SDR_BasebandSignals
static const std::string SDR_Tx2File
static const std::string MaxNumFrontEnd
static const std::string MVM_RXFTMClock
static const std::string SDR_NumTxChannels
static const std::string SDR_Rx2File
static const std::string SDR_TxFromFile
static const std::string AccessReservedInformation
static const std::string SDR_BatchTx
std::optional< std::vector< std::pair< double, double > > > valueRanges
std::optional< std::vector< double > > discreteValueSet
Feature(const std::string &featureName, const std::optional< std::vector< std::pair< double, double > > > &valueRanges=std::nullopt, const std::optional< std::vector< double > > &discreteValueSet=std::nullopt, const std::optional< std::vector< std::string > > &stringSets=std::nullopt)
std::string featureDescription
std::optional< std::vector< std::string > > stringSets
std::string toString() const
std::string toString() const
std::map< std::string, Feature > features
std::optional< std::chrono::time_point< std::chrono::system_clock, std::chrono::seconds > > licenseExpirationTime
std::string getLicenseId()
static License fromFile(const std::string &licenseFilePath)
void save2HumanReadableLicenseJson(const std::string &jsonFile) const