![]() |
Perfectly Clear SDK Documentation
9.1.1.325
|
NOTE: If you have been provided with an SDK license key by EyeQ, then you will need to follow the few steps below to activate your license on each run of the applications that you create from this SDK. If you have licensed an un-protected version of this SDK, then you can skip these steps - though leaving them in will not cause any problems.
You will receive these files from EyeQ as part of the Perfectly Clear SDK:
filename | Contents & Purpose |
---|---|
license.key | Contains valid license key |
registration_email.txt | Email address for registration |
ShaferFilechck.dll, ShaferFilechck.so, ShaferFilechck.dylib PFCAppTrack.dll, libPFCAppTrack.so, libPFCAppTrack.dylib | License handling libraries |
To enable this license:
sdk_license
PerfectlyClear(“c:\\path\\of\\sdk_license”);
PFC_SetProtectionPath("/home/user/sdk_license");
The SDK will validate the license every 12 hours via a network connection to my.nalpeiron.com, at ip address 184.106.60.185. Please ensure the computer running the SDK has internet access to at least this IP address. During this connection process, the SDK will report usage data to appsmanager.athentech.com (52.72.235.36 or 52.203.55.148).
If the license validation fails, then the PFC_Apply() and PFC_ApplyLocal() functions will return PFCAPPLYSTATUS of APPLY_INVALIDLICENSE and returns the input image as is without Perfectly Clear corrections. Failure can be due to an expired license, failure to reach the validation server, an invalid license key or other licenses errors. Each of these will return a different return code from the PFC_SetProtectionPath() function.
Each license from EyeQ will be enabled for a certain number of “nodes” – or unique computers where the SDK will be used. If your deployment will be run on Virtual Machines or cloud compute instances, please be aware of how cloning and deploying new instances will affect this node count. You can contact EyeQ at any time to reset all previous activations if you are nearing your node limit.
NOTE: Setting up license protection requires approximately 100ms to 150ms, so in performance-sensitive operations, it is better to construct and use one PerfectlyClear class and then run many images through it (as opposed to creating one PerfectlyClear instance for each photo being processed). Further, do not attempt to call PFC_SetProtectionPath() from individual threads; instead, call PFC_SetProtectionPath() once then call PFC_Apply() or PFC_AutoCorrect() in individual threads to process several images concurrently.