LicenseSpring C++ SDK  7.27.0
Easily add Software Licensing to your application
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 
34 
35  int ( *maxOverages )( struct LSLicenseFeature* self );
36 
37  bool ( *isResetConsumptionEnabled )( struct LSLicenseFeature* self );
38 
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  void* inner;
50 
52 
54 
56 
57 #ifdef __cplusplus
58 } // end extern "C"
59 #endif
60 
61 #endif // LS_C_LICENSE_FEATURE_H
#define LS_API
Macros that expands to dllexport, dllimport or nothing on non Windows platforms or in case of static ...
Definition: APIDef.h:22
LS_API void FreeLSLicenseFeature(LSLicenseFeature *feature)
LS_API LSLicenseFeature * CreateLSLicenseFeature()
LS_API struct LSLicenseFeature LSLicenseFeature
LSFeatureType
Product feature type.
Definition: PODTypes.h:19
LSConsumptionPeriod
Consumption period.
Definition: PODTypes.h:38
bool(* isResetConsumptionEnabled)(struct LSLicenseFeature *self)
int(* totalConsumption)(struct LSLicenseFeature *self)
bool(* isUnlimitedConsumptionAllowed)(struct LSLicenseFeature *self)
enum LSFeatureType(* featureTypeFromString)(struct LSLicenseFeature *self, const char *value)
int(* localConsumption)(struct LSLicenseFeature *self)
bool(* isOveragesAllowed)(struct LSLicenseFeature *self)
int(* maxOverages)(struct LSLicenseFeature *self)
bool(* isExpired)(struct LSLicenseFeature *self)
enum LSFeatureType(* featureType)(struct LSLicenseFeature *self)
int(* maxConsumption)(struct LSLicenseFeature *self)
struct tm(* expiryDateUtc)(struct LSLicenseFeature *self)
enum LSConsumptionPeriod(* consumptionPeriod)(struct LSLicenseFeature *self)
struct tm(* expiryDate)(struct LSLicenseFeature *self)