3#include <NDEVR/INIInterface.h>
6#include <NDEVR/TimeSpan.h>
7#include <NDEVR/TranslatedString.h>
10 struct ActivationInfo;
23 , e_software_user_name
37 NDEVR_BASE_API NDEVRActivation();
43 NDEVRActivation(
const TranslatedString& activation_name,
const StringView&
id);
48 NDEVRActivation(
const File& file);
53 virtual void getINI(INIFactory& factory)
final override;
58 TranslatedString
name()
const;
63 NDEVR_BASE_API String id()
const;
73 String localCheckID();
77 void selectDefaultINIFile();
82 TimeSpan activationTimeSpan()
const;
87 NDEVR_BASE_API
void setActivationTimeSpan(
const TimeSpan& span);
92 NDEVR_BASE_API
bool isActivated()
const;
98 NDEVR_BASE_API
bool isActivated(StringView request_string)
const;
105 NDEVR_BASE_API
void setActive(LicenseType type,
bool active,
bool force_active);
111 NDEVR_BASE_API
void temporaryActivate(
const TimeSpan& span, StringView password);
116 void setActiveRange(TimeSpan span);
123 NDEVR_BASE_API
void generateAltLicense(
const StringView& password, File output);
131 NDEVR_BASE_API
void activate(StringView request_string, File admin_file, File local_validation);
133 TranslatedString m_name;
134 ActivationInfo* m_activation_info;
140 class NDEVR_BASE_API NDEVRActivationServer
146 static void ReadSoftwareLicenses();
151 static bool IsSoftwareActivated();
156 static TimeSpan SoftwareActivationTimePeriod();
162 static bool IsFeatureActivated(
const StringView&
id);
168 static String LocalCheckID(
const StringView& feature_id);
175 static void GenerateTrialPeriod(
const StringView& feature_id, TimeSpan span,
const StringView& password);
181 static bool AcceptSoftwareLicense(File file);
187 static bool AddActivation(NDEVRActivation* activation);
192 static Time InternetTime();
198 static void SetInternetTime(
const Time& time,
const StringView& password);
204 static void SetInternetTimeOffset(
const TimeSpan& time,
const StringView& password);
209 static NDEVRActivation* ApplicationActivation();
215 static NDEVRActivation* FeatureActivation(
const StringView&
id);
222 static NDEVRActivation* FeatureActivation(
const TranslatedString name,
const StringView&
id);
224 static Dictionary<String, NDEVRActivation*> s_activated_features;
Contains methods for easily reading and writing to an INI file including efficient casting,...
The primary namespace for the NDEVR SDK.
uint8_t uint01
-Defines an alias representing a 1 byte, unsigned integer -Can represent exact integer values 0 throu...
@ name
The display name of the object.