71 lines
2.0 KiB
C
71 lines
2.0 KiB
C
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Copyright 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
//
|
|
///////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Public API Watermark component for PryonLite
|
|
//
|
|
///////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef PRYON_LITE_WATERMARK_H
|
|
#define PRYON_LITE_WATERMARK_H
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#if defined(PRYONLITE_EXPORTS)
|
|
#define DLLDECL __declspec(dllexport)
|
|
#elif defined(PRYONLITE_IMPORTS)
|
|
#define DLLDECL __declspec(dllimport)
|
|
#else
|
|
#define DLLDECL
|
|
#endif
|
|
|
|
/// @brief Pryon lite Watermark API version
|
|
#define PRYON_LITE_WATERMARK_API_VERSION "0.1.0"
|
|
|
|
///
|
|
/// @brief Handle to a watermark instance
|
|
///
|
|
typedef void* PryonLiteWatermarkHandle;
|
|
|
|
///
|
|
/// @brief Configuration parameters to be passed in during initialization
|
|
///
|
|
typedef struct PryonLiteWatermarkConfig
|
|
{
|
|
const void* config; ///< Watermark config data (loaded from disk or statically compiled in)
|
|
///< *** Note this memory must persist while the library is in use ***
|
|
size_t sizeofConfig; ///< The total size of config binary (in bytes).
|
|
const char* apiVersion; ///< For api header / library version consistency verification.
|
|
void* userData; ///< User-specified data pointer, to be returned when sending events
|
|
} PryonLiteWatermarkConfig;
|
|
|
|
///
|
|
/// @brief Default Configuration to be used to initialize PryonLiteWatermarkConfig struct
|
|
///
|
|
#define PryonLiteWatermarkConfig_Default \
|
|
{ \
|
|
NULL, /* config */ \
|
|
0, /* sizeofConfig */ \
|
|
PRYON_LITE_WATERMARK_API_VERSION, /* apiVersion */ \
|
|
NULL, /* userData */ \
|
|
}
|
|
|
|
///
|
|
/// @brief Watermark specific attributes
|
|
///
|
|
typedef struct PryonLiteWatermarkConfigAttributes {
|
|
const char *watermarkApiVersion; //< PryonLite Watermark API version
|
|
} PryonLiteWatermarkConfigAttributes;
|
|
|
|
#ifdef __cplusplus
|
|
} // extern "C"
|
|
#endif
|
|
|
|
#endif //PRYON_LITE_WATERMARK_H
|