|
|
- /**
- * @file FSDKError.h
- * @brief Common SDK error codes.
- * @copyright VisionLabs LLC
- * @date 25.06.2014
- * */
-
- #pragma once
-
- #include <fsdk/Types/Result.h>
-
- namespace fsdk {
-
- /**
- * @brief Common SDK error codes.
- * */
- enum class FSDKError : uint32_t {
- Ok, //!< Ok.
- Internal, //!< Internal error.
- InvalidInput, //!< Invalid input.
- InvalidImage, //!< Invalid image.
-
- InvalidRect, //!< Invalid rectangle.
- InvalidImageFormat, //!< Invalid image format.
- InvalidImageSize, //!< Invalid image size.
- InvalidDetection, //!< Invalid detection.
- InvalidLandmarks5, //!< Invalid landmarks 5.
- InvalidLandmarks68, //!< Invalid landmarks 68.
- InvalidTransformation, //!< Invalid transformation.
- InvalidDescriptor, //!< Invalid descriptor.
- InvalidDescriptorBatch, //!< Invalid descriptor batch.
- InvalidSettingsProvider, //!< Invalid settings provider.
- InvalidDescriptorId, //!< Invalid descriptor id
- InvalidPath, //!< Invalid path to object
- InvalidSerializedObject, //!< Invalid serialized object
-
- ModuleNotInitialized, //!< Module is not initialized.
- ModuleNotReady, //!< Module is not ready.
- LicenseError, //!< Licensing issue (expired license or unavailable feature).
-
- BufferIsNull, //!< Buffer is null.
- BufferIsFull, //!< Buffer is full.
- BufferIsEmpty, //!< Buffer is empty.
- InvalidBufferSize, //!< Invalid buffer size.
- InvalidSpanSize, //!< Invalid span size.
- InvalidBatch, //!< Invalid batch.
-
- IncompatibleDescriptors, //!< Matching attempt with incompatible descriptors.
- EnableJustInBetaMode, //!< Attempt to create feature while betaMode is turned off
-
- FiltredAggregationError, //!< Cant aggregate descriptors - all images'a GSs are less the threashold
-
- BatchedInternalError, //!< Something gone wrong in batched query. See batch with error codes to each input image for details.
- UnsupportedFunctionality, // !< was requested unsupported functionality for this type of descroptor or for this model version
-
- HighMemoryUsage, // !< Operation required a lot of memory. Batch size if too big for example.
-
- IncompatibleModelVersions, //!< Incompatible model versions.
- ModelNotLoaded, //!< Model not loaded.
- InvalidConfig, //!< Invalid config
- LicenseIsNotActivated, //!< License is not activated.
- FeatureNotAvailable, //!< Requested Feature not available.
- FeatureExpired, //!< Feature expired
- FingerprintError, //!< Failed to get device fingerprint.
- ValidationFailed, //!< Failed validation.
-
- NotImplemented, //!< Not implemented error.
- };
-
- /**
- * @brief Specialized for FSDKError.
- * */
- template<>
- struct ErrorTraits<FSDKError> {
-
- static bool isOk(FSDKError error) noexcept {
- return error == FSDKError::Ok;
- }
-
- static const char* toString (FSDKError error) noexcept {
- switch(error) {
- case FSDKError::Ok: return "Ok";
- case FSDKError::Internal: return "Internal error";
- case FSDKError::InvalidInput: return "Invalid input";
- case FSDKError::InvalidImage: return "Invalid image";
- case FSDKError::InvalidRect: return "Invalid rectangle";
- case FSDKError::InvalidImageFormat: return "Invalid image format";
- case FSDKError::InvalidImageSize: return "Invalid image size";
- case FSDKError::InvalidDetection: return "Invalid detection";
- case FSDKError::InvalidLandmarks5: return "Invalid landmarks 5";
- case FSDKError::InvalidLandmarks68: return "Invalid landmarks 68";
- case FSDKError::InvalidTransformation: return "Invalid transformation.";
- case FSDKError::InvalidDescriptor: return "Invalid descriptor";
- case FSDKError::InvalidDescriptorBatch: return "Invalid descriptor batch.";
- case FSDKError::InvalidSettingsProvider: return "Invalid settings provider..";
- case FSDKError::InvalidDescriptorId: return "Invalid descriptor id.";
- case FSDKError::InvalidPath: return "Invalid path.";
- case FSDKError::InvalidSerializedObject: return "Invalid serialized object.";
- case FSDKError::ModuleNotInitialized: return "Module is not initialized";
- case FSDKError::ModuleNotReady: return "Module is not ready";
- case FSDKError::LicenseError: return "Licensing issue";
- case FSDKError::BufferIsNull: return "Buffer is null";
- case FSDKError::BufferIsFull: return "Buffer is full";
- case FSDKError::BufferIsEmpty: return "Buffer is empty";
- case FSDKError::InvalidBufferSize: return "Invalid buffer size";
- case FSDKError::InvalidSpanSize: return "Invalid span size";
- case FSDKError::InvalidBatch: return "Invalid Batch";
- case FSDKError::IncompatibleDescriptors: return "Descriptors are incompatible";
- case FSDKError::EnableJustInBetaMode: return "Attempt to create feature while betaMode is turned off";
- case FSDKError::FiltredAggregationError: return "Cant aggregate descriptors - all images'a GSs are less the threashold";
- case FSDKError::BatchedInternalError: return "Something gone wrong in batched query";
- case FSDKError::UnsupportedFunctionality: return "Was requested unsupported functionality";
- case FSDKError::HighMemoryUsage: return "Operation required a lot of memory";
- case FSDKError::IncompatibleModelVersions: return "Incompatible model versions";
- case FSDKError::ModelNotLoaded: return "Model not loaded";
- case FSDKError::InvalidConfig: return "Invalid config";
- case FSDKError::LicenseIsNotActivated: return "License is not activated!";
- case FSDKError::FeatureNotAvailable: return "Requested Feature not available.";
- case FSDKError::FeatureExpired: return "Feature is expired.";
- case FSDKError::FingerprintError: return "Failed to get device fingerprint.";
- case FSDKError::ValidationFailed: return "Failed validation.";
- case FSDKError::NotImplemented: return "Not implemented.";
- default: return "Unknown error";
- }
- }
- };
-
- }
|