![]() |
VR-Vantage 3.1 API Documentation
|
Go to the source code of this file.
Functions | |
| JrmLmError | JrmLmCheckLicense (JrmLmProduct product, const JrmLmProducts *dependencies, const char *releaseTime, const int reuseExistingLicense, JrmLmLicenseData *const dataOut) |
| Checks for the existance of a license for the product specified in the input parameters. | |
| int | EncryptDecryptCharacter (char *c, int encrypt) |
This module provides a C-compatible interface to our licensing back-end (CodeMeter / WibuKey). Use it to check for licenses or encrypt data / files.
| JrmLmError JrmLmCheckLicense | ( | JrmLmProduct | product, |
| const JrmLmProducts * | dependencies, | ||
| const char * | releaseTime, | ||
| const int | reuseExistingLicense, | ||
| JrmLmLicenseData *const | dataOut | ||
| ) |
Checks for the existance of a license for the product specified in the input parameters.
Each licensing backend for which the specified product is defined is searched until a license is found, in this order: CodeMeter, WibuKey.
| [in] | product | The product for which to look for a license. |
| [in] | dependencies | (optional) Other products upon which the main product depends. If a license is found for the specified product, then these products are also considered licensed within the currently-running process. This allows a product to use other products without providing explicit licenses for its dependencies that would allow any linking process to use them. For example, Osv requires MatLib, SigSim3a, and SenSim, but we do not want to provide licenses for all of these as that would effectivily be giving away the SDK for free. Specify as NULL to indicate no dependencies. |
| [in] | releaseTime | (optional) Software release time. For licenses that specify a maintenance period, this time must fall within that period for the software to run. Always specify this as NULL except when testing or to back-date a release for some reason. When specified as NULL, this defaults to the compilation time of JrmLicenseManager/core/LicenseManager.cpp. Format is equivalent to that of the string (DATE " " TIME), which is ANSI-defined. |
| [in] | reuseExistingLicense | Flag indicating if a license for product found by a previous check may be used to satisfy the current check. When non-zero, if a license has already been found then no backend check is done and success is returned immediately. Otherwise, a backend check is always done, which consumes an additional available license. This will usually be specified as non-zero. An example of an appropriate time to specifiy as zero would be to implement a "license per channel" licensing policy, e.g. from SenSim's constructor. |
| [out] | dataOut | (optional) If specified as non-NULL, then this is populated with data either describing the acquired license or the errors encountered. Upon success, output includes a human-readable string describing the license policies in effect. Upon failure, output includes an error message (which may or may not be helpful to the end user). |