24 #ifndef COMMON_INTERFACEDESCRIPTOR_H 25 #define COMMON_INTERFACEDESCRIPTOR_H 60 LUMIERA_INTERFACE_SLOT (
const char*,
name, (LumieraInterface)),
61 LUMIERA_INTERFACE_SLOT (
const char*, brief, (LumieraInterface)),
62 LUMIERA_INTERFACE_SLOT (
const char*, homepage, (LumieraInterface)),
63 LUMIERA_INTERFACE_SLOT (
const char*, version, (LumieraInterface)),
64 LUMIERA_INTERFACE_SLOT (
const char*, author, (LumieraInterface)),
65 LUMIERA_INTERFACE_SLOT (
const char*, email, (LumieraInterface)),
66 LUMIERA_INTERFACE_SLOT (
const char*, copyright, (LumieraInterface)),
67 LUMIERA_INTERFACE_SLOT (
const char*, license, (LumieraInterface)),
70 LUMIERA_INTERFACE_SLOT (
int, state, (LumieraInterface)),
73 LUMIERA_INTERFACE_SLOT (
int, versioncmp, (
const char*,
const char*))
85 const char*, (LumieraInterface iface),
88 LUMIERA_INTERFACE_INLINE (brief,
LUIDGEN,
89 const char*, (LumieraInterface iface),
92 LUMIERA_INTERFACE_INLINE (homepage,
LUIDGEN,
93 const char*, (LumieraInterface iface),
96 LUMIERA_INTERFACE_INLINE (version,
LUIDGEN,
97 const char*, (LumieraInterface iface),
100 LUMIERA_INTERFACE_INLINE (author,
LUIDGEN,
101 const char*, (LumieraInterface iface),
104 LUMIERA_INTERFACE_INLINE (email,
LUIDGEN,
105 const char*, (LumieraInterface iface),
108 LUMIERA_INTERFACE_INLINE (copyright,
LUIDGEN,
109 const char*, (LumieraInterface iface),
116 LUMIERA_INTERFACE_INLINE (license,
LUIDGEN,
117 const char*, (LumieraInterface iface),
124 LUMIERA_INTERFACE_INLINE (state,
LUIDGEN,
125 int, (LumieraInterface iface),
129 LUMIERA_INTERFACE_INLINE (versioncmp,
LUIDGEN,
130 int, (
const char* a,
const char* b),
Finished, released and maintained implementation.
LUMIERA_INTERFACE_DECLARE(lumieraorg_interfacedescriptor, 0, LUMIERA_INTERFACE_SLOT(const char *, name,(LumieraInterface)), LUMIERA_INTERFACE_SLOT(const char *, brief,(LumieraInterface)), LUMIERA_INTERFACE_SLOT(const char *, homepage,(LumieraInterface)), LUMIERA_INTERFACE_SLOT(const char *, version,(LumieraInterface)), LUMIERA_INTERFACE_SLOT(const char *, author,(LumieraInterface)), LUMIERA_INTERFACE_SLOT(const char *, email,(LumieraInterface)), LUMIERA_INTERFACE_SLOT(const char *, copyright,(LumieraInterface)), LUMIERA_INTERFACE_SLOT(const char *, license,(LumieraInterface)), LUMIERA_INTERFACE_SLOT(int, state,(LumieraInterface)),)
Interface descriptor.
some known bugs exist which won't be fixed, don't use this
Not finished development code.
Finished but not finally released implementation for open testing.
#define LUMIERA_INTERFACE_INSTANCE(iname, version, name, descriptor, acquire, release,...)
Define an interface instance.
Lumiera interface macros and structures.
#define LUIDGEN
LUIDGEN will be replaced by the 'luidgen' tool with a random uuid.
lumiera_interface_state
Release state of an interface implementation.
Old implementation which is now unmaintained and will be removed soon.