Ring Daemon 16.0.0
Loading...
Searching...
No Matches
jamiplugin.h File Reference
Include dependency graph for jamiplugin.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  JAMI_PluginAPI
 This structure is filled by the PluginManager. More...
 
struct  JAMI_PluginObjectFactory
 This structure is filled by plugin. More...
 
struct  JAMI_PluginObjectParams
 JAMI_PluginCreateFunc parameter. More...
 
struct  JAMI_PluginVersion
 Contains ABI and API versions. More...
 

Macros

#define C_INTERFACE_END
 
#define C_INTERFACE_START
 
#define C_LINKAGE
 
#define JAMI_DYN_INIT_FUNC_NAME   "JAMI_dynPluginInit"
 
#define JAMI_PLUGIN_ABI_VERSION   1
 
#define JAMI_PLUGIN_API_VERSION   2
 
#define JAMI_PLUGIN_EXIT(fname)   (EXTERNAL_C_LINKAGE void fname(void))
 
#define JAMI_PLUGIN_INIT(fname, pname)    (EXTERNAL_C_LINKAGE JAMI_PluginExitFunc fname(const JAMI_PluginAPI* pname))
 
#define JAMI_PLUGIN_INIT_DYNAMIC(pname)   JAMI_PLUGIN_INIT(JAMI_dynPluginInit, pname)
 
#define JAMI_PLUGIN_INIT_STATIC(fname, pname)   JAMI_PLUGIN_INIT(fname, pname)
 

Typedefs

typedef struct JAMI_PluginAPI JAMI_PluginAPI
 
typedef void *(* JAMI_PluginCreateFunc) (JAMI_PluginObjectParams *params, void *closure)
 
typedef void(* JAMI_PluginDestroyFunc) (void *object, void *closure)
 
typedef void(* JAMI_PluginExitFunc) (void)
 
typedef int32_t(* JAMI_PluginFunc) (const JAMI_PluginAPI *api, const char *name, void *data)
 
typedef JAMI_PluginExitFunc(* JAMI_PluginInitFunc) (const JAMI_PluginAPI *api)
 
typedef struct JAMI_PluginObjectFactory JAMI_PluginObjectFactory
 
typedef struct JAMI_PluginObjectParams JAMI_PluginObjectParams
 
typedef struct JAMI_PluginVersion JAMI_PluginVersion
 

Variables

 C_INTERFACE_END
 
 C_INTERFACE_START
 

Macro Definition Documentation

◆ C_INTERFACE_END

#define C_INTERFACE_END

Definition at line 30 of file jamiplugin.h.

◆ C_INTERFACE_START

#define C_INTERFACE_START

Definition at line 29 of file jamiplugin.h.

◆ C_LINKAGE

#define C_LINKAGE

Definition at line 28 of file jamiplugin.h.

◆ JAMI_DYN_INIT_FUNC_NAME

#define JAMI_DYN_INIT_FUNC_NAME   "JAMI_dynPluginInit"

Definition at line 111 of file jamiplugin.h.

◆ JAMI_PLUGIN_ABI_VERSION

#define JAMI_PLUGIN_ABI_VERSION   1

Definition at line 33 of file jamiplugin.h.

◆ JAMI_PLUGIN_API_VERSION

#define JAMI_PLUGIN_API_VERSION   2

Definition at line 37 of file jamiplugin.h.

◆ JAMI_PLUGIN_EXIT

#define JAMI_PLUGIN_EXIT (   fname)    (EXTERNAL_C_LINKAGE void fname(void))

Definition at line 123 of file jamiplugin.h.

◆ JAMI_PLUGIN_INIT

#define JAMI_PLUGIN_INIT (   fname,
  pname 
)     (EXTERNAL_C_LINKAGE JAMI_PluginExitFunc fname(const JAMI_PluginAPI* pname))

Definition at line 121 of file jamiplugin.h.

◆ JAMI_PLUGIN_INIT_DYNAMIC

#define JAMI_PLUGIN_INIT_DYNAMIC (   pname)    JAMI_PLUGIN_INIT(JAMI_dynPluginInit, pname)

Definition at line 113 of file jamiplugin.h.

◆ JAMI_PLUGIN_INIT_STATIC

#define JAMI_PLUGIN_INIT_STATIC (   fname,
  pname 
)    JAMI_PLUGIN_INIT(fname, pname)

Definition at line 112 of file jamiplugin.h.

Typedef Documentation

◆ JAMI_PluginAPI

◆ JAMI_PluginCreateFunc

typedef void *(* JAMI_PluginCreateFunc) (JAMI_PluginObjectParams *params, void *closure)

Definition at line 68 of file jamiplugin.h.

◆ JAMI_PluginDestroyFunc

typedef void(* JAMI_PluginDestroyFunc) (void *object, void *closure)

Definition at line 70 of file jamiplugin.h.

◆ JAMI_PluginExitFunc

typedef void(* JAMI_PluginExitFunc) (void)

Definition at line 104 of file jamiplugin.h.

◆ JAMI_PluginFunc

typedef int32_t(* JAMI_PluginFunc) (const JAMI_PluginAPI *api, const char *name, void *data)

Definition at line 86 of file jamiplugin.h.

◆ JAMI_PluginInitFunc

typedef JAMI_PluginExitFunc(* JAMI_PluginInitFunc) (const JAMI_PluginAPI *api)

Definition at line 107 of file jamiplugin.h.

◆ JAMI_PluginObjectFactory

◆ JAMI_PluginObjectParams

◆ JAMI_PluginVersion

Variable Documentation

◆ C_INTERFACE_END

C_INTERFACE_END

Definition at line 109 of file jamiplugin.h.

◆ C_INTERFACE_START

C_INTERFACE_START

Definition at line 39 of file jamiplugin.h.