| LicenseSpring C++ SDK 7.32.0 Easily add Software Licensing to your application

Loading...
Searching...
No Matches
LicenseFeature.h
Go to the documentation of this file.
1#ifndef LS_C_LICENSE_FEATURE_H
2#define LS_C_LICENSE_FEATURE_H
3
4#include "../APIDef.h"
5#include "../PODTypes.h"
6#include <time.h>
7#include <stdbool.h>
8
9#ifdef __cplusplus
10 extern "C" {
11#endif
12
13 LS_API typedef struct LSLicenseFeature
14 {
15 const char* ( *toString )( struct LSLicenseFeature* self );
16
17 const char* ( *code )( struct LSLicenseFeature* self );
18
19 const char* ( *name )( struct LSLicenseFeature* self );
20
21 enum LSFeatureType( *featureType )( struct LSLicenseFeature* self );
22
23 enum LSFeatureType( *featureTypeFromString )( struct LSLicenseFeature* self, const char* value );
24
25 int ( *maxConsumption )( struct LSLicenseFeature* self );
26
27 int ( *totalConsumption )( struct LSLicenseFeature* self );
28
29 int ( *localConsumption )( struct LSLicenseFeature* self );
30
31 bool ( *isOveragesAllowed )( struct LSLicenseFeature* self );
32
33 bool ( *isUnlimitedConsumptionAllowed )( struct LSLicenseFeature* self );
34
35 int ( *maxOverages )( struct LSLicenseFeature* self );
36
37 bool ( *isResetConsumptionEnabled )( struct LSLicenseFeature* self );
38
39 enum LSConsumptionPeriod( *consumptionPeriod )( struct LSLicenseFeature* self );
40
41 struct tm( *expiryDate )( struct LSLicenseFeature* self );
42
43 struct tm( *expiryDateUtc )( struct LSLicenseFeature* self );
44
45 bool ( *isExpired )( struct LSLicenseFeature* self );
46
47 const char* ( *metadata )( struct LSLicenseFeature* self );
48
49 bool ( *isFloating )( struct LSLicenseFeature* self );
50
51 bool ( *isOfflineFloating )( struct LSLicenseFeature* self );
52
53 int32_t ( *floatingTimeout )( struct LSLicenseFeature* self );
54
55 int32_t ( *floatingUsers )( struct LSLicenseFeature* self );
56
57 int32_t ( *floatingInUseCount )( struct LSLicenseFeature* self );
58
59 struct tm ( *floatingEndDateTime )( struct LSLicenseFeature* self );
60
61 struct tm ( *floatingEndDateTimeUtc )( struct LSLicenseFeature* self );
62
63 bool ( *floatingIsExpired )( struct LSLicenseFeature* self );
64
65 void* inner;
66
67 } LSLicenseFeature;
68
69 LS_API LSLicenseFeature* CreateLSLicenseFeature();
70
71 LS_API void FreeLSLicenseFeature( LSLicenseFeature* feature );
72
73#ifdef __cplusplus
74} // end extern "C"
75#endif
76
77#endif // LS_C_LICENSE_FEATURE_H
LS_API
#define LS_API
Macros that expands to dllexport, dllimport or nothing on non Windows platforms or in case of static ...
Definition APIDef.h:22
FreeLSLicenseFeature
LS_API void FreeLSLicenseFeature(LSLicenseFeature *feature)
CreateLSLicenseFeature
LS_API LSLicenseFeature * CreateLSLicenseFeature()
LSFeatureType
LSFeatureType
Product feature type.
Definition PODTypes.h:19
LSConsumptionPeriod
LSConsumptionPeriod
Consumption period.
Definition PODTypes.h:38
LSLicenseFeature
Definition LicenseFeature.h:14
LSLicenseFeature::expiryDate
struct tm(* expiryDate)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:41
LSLicenseFeature::floatingIsExpired
bool(* floatingIsExpired)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:63
LSLicenseFeature::consumptionPeriod
enum LSConsumptionPeriod(* consumptionPeriod)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:39
LSLicenseFeature::isResetConsumptionEnabled
bool(* isResetConsumptionEnabled)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:37
LSLicenseFeature::maxConsumption
int(* maxConsumption)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:25
LSLicenseFeature::isUnlimitedConsumptionAllowed
bool(* isUnlimitedConsumptionAllowed)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:33
LSLicenseFeature::inner
void * inner
Definition LicenseFeature.h:65
LSLicenseFeature::isOveragesAllowed
bool(* isOveragesAllowed)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:31
LSLicenseFeature::floatingUsers
int32_t(* floatingUsers)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:55
LSLicenseFeature::isFloating
bool(* isFloating)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:49
LSLicenseFeature::featureTypeFromString
enum LSFeatureType(* featureTypeFromString)(struct LSLicenseFeature *self, const char *value)
Definition LicenseFeature.h:23
LSLicenseFeature::floatingInUseCount
int32_t(* floatingInUseCount)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:57
LSLicenseFeature::floatingTimeout
int32_t(* floatingTimeout)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:53
LSLicenseFeature::localConsumption
int(* localConsumption)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:29
LSLicenseFeature::featureType
enum LSFeatureType(* featureType)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:21
LSLicenseFeature::expiryDateUtc
struct tm(* expiryDateUtc)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:43
LSLicenseFeature::isOfflineFloating
bool(* isOfflineFloating)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:51
LSLicenseFeature::floatingEndDateTimeUtc
struct tm(* floatingEndDateTimeUtc)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:61
LSLicenseFeature::totalConsumption
int(* totalConsumption)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:27
LSLicenseFeature::maxOverages
int(* maxOverages)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:35
LSLicenseFeature::floatingEndDateTime
struct tm(* floatingEndDateTime)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:59
LSLicenseFeature::isExpired
bool(* isExpired)(struct LSLicenseFeature *self)
Definition LicenseFeature.h:45