Grok 10.0.5
minpf_plugin.h
Go to the documentation of this file.
1
17#pragma once
18#include <stdint.h>
19
20namespace grk
21{
23
24typedef struct minpf_object_params
25{
26 const char* id;
28} minpf_object_params;
29
31{
34} minpf_plugin_api_version;
35
36typedef void* (*minpf_create_func)(minpf_object_params*);
37typedef int32_t (*minpf_destroy_func)(void*);
38
45
48
55
57
58typedef minpf_exit_func (*minpf_post_load_func)(const char* pluginPath,
60
61#if defined(GRK_STATIC) || !defined(_WIN32)
62/* http://gcc.gnu.org/wiki/Visibility */
63#if __GNUC__ >= 4
64#if defined(GRK_STATIC) /* static library uses "hidden" */
65#define PLUGIN_API __attribute__((visibility("hidden")))
66#else
67#define PLUGIN_API __attribute__((visibility("default")))
68#endif
69#define PLUGIN_LOCAL __attribute__((visibility("hidden")))
70#else
71#define PLUGIN_API
72#define PLUGIN_LOCAL
73#endif
74#else
75#ifdef GRK_EXPORTS
76#define PLUGIN_API __declspec(dllexport)
77#else
78#define PLUGIN_API __declspec(dllimport)
79#endif /* GRK_EXPORTS */
80#endif /* !GRK_STATIC || !_WIN32 */
81
82extern "C" PLUGIN_API minpf_exit_func minpf_init_plugin(const char* pluginPath,
84
85} // namespace grk
#define PLUGIN_API
Definition minpf_plugin.h:71
Copyright (C) 2016-2023 Grok Image Compression Inc.
Definition ICacheable.h:20
int32_t(* minpf_register_func)(const char *nodeType, const minpf_register_params *params)
Definition minpf_plugin.h:46
void grk_read(const uint8_t *buffer, TYPE *value, uint32_t numBytes)
Definition BufferedStream.h:239
int32_t(* minpf_destroy_func)(void *)
Definition minpf_plugin.h:37
int32_t(* minpf_invoke_service_func)(const char *serviceName, void *serviceParams)
Definition minpf_plugin.h:47
minpf_exit_func(* minpf_post_load_func)(const char *pluginPath, const minpf_platform_services *)
Definition minpf_plugin.h:58
int32_t(* minpf_exit_func)()
Definition minpf_plugin.h:56
struct grk::minpf_platform_services minpf_platform_services
PLUGIN_API minpf_exit_func minpf_init_plugin(const char *pluginPath, const minpf_platform_services *params)
void *(* minpf_create_func)(minpf_object_params *)
Definition minpf_plugin.h:36
Definition minpf_plugin.h:25
const char * id
Definition minpf_plugin.h:26
const struct minpf_platform_services * platformServices
Definition minpf_plugin.h:27
Definition minpf_plugin.h:50
minpf_invoke_service_func invokeService
Definition minpf_plugin.h:53
minpf_plugin_api_version version
Definition minpf_plugin.h:51
minpf_register_func registerObject
Definition minpf_plugin.h:52
Definition minpf_plugin.h:31
int32_t minor
Definition minpf_plugin.h:33
int32_t major
Definition minpf_plugin.h:32
Definition minpf_plugin.h:40
minpf_create_func createFunc
Definition minpf_plugin.h:42
minpf_plugin_api_version version
Definition minpf_plugin.h:41
minpf_destroy_func destroyFunc
Definition minpf_plugin.h:43