![]() |
Oyranos Color Management System API |
Generic data exchange. More...
#include <oyCMMapi10_s.h>
Public Types | |
typedef int(* | oyMOptions_Handle_f) (oyOptions_s *options, const char *command, oyOptions_s **result) |
generic data exchange More... | |
![]() | |
typedef int(* | oyCMMInit_f) (oyStruct_s *filter) |
optional CMM init function More... | |
typedef int(* | oyCMMMessageFuncSet_f) (oyMessage_f message_func) |
optionaly sets a CMM message function More... | |
typedef int(* | oyCMMCanHandle_f) (oyCMMQUERY_e type, uint32_t value) |
CMM feature declaration function. More... | |
typedef int(* | oyCMMOptions_Check_f) (oyOptions_s *validate) |
a function to check options More... | |
typedef const char *(* | oyCMMGetText_f) (const char *select, oyNAME_e type, oyStruct_s *context) |
get strings from a CMM More... | |
Public Member Functions | |
OYAPI oyCMMapi10_s *OYEXPORT | oyCMMapi10_New (oyObject_s object) |
allocate a new CMMapi10 object More... | |
OYAPI oyCMMapi10_s *OYEXPORT | oyCMMapi10_Copy (oyCMMapi10_s *cmmapi10, oyObject_s object) |
copy or reference a CMMapi10 object More... | |
OYAPI int OYEXPORT | oyCMMapi10_Release (oyCMMapi10_s **cmmapi10) |
release and possibly deallocate a oyCMMapi10_s object More... | |
OYAPI int OYEXPORT | oyCMMapi10_SetBackendContext (oyCMMapi10_s *api, oyPointer_s *ptr) |
set filter type specific runtime data More... | |
OYAPI oyPointer_s *OYEXPORT | oyCMMapi10_GetBackendContext (oyCMMapi10_s *api) |
get filter type specific runtime data More... | |
void | oyCMMapi10_Release__Members (oyCMMapi10_s_ *cmmapi10) |
Custom CMMapi10 destructor. More... | |
int | oyCMMapi10_Init__Members (oyCMMapi10_s_ *cmmapi10) |
Custom CMMapi10 constructor. More... | |
int | oyCMMapi10_Copy__Members (oyCMMapi10_s_ *dst, oyCMMapi10_s_ *src) |
Custom CMMapi10 copy constructor. More... | |
![]() | |
OYAPI oyCMMapiFilter_s *OYEXPORT | oyCMMapiFilter_New (oyObject_s object) |
allocate a new CMMapiFilter object More... | |
OYAPI oyCMMapiFilter_s *OYEXPORT | oyCMMapiFilter_Copy (oyCMMapiFilter_s *cmmapifilter, oyObject_s object) |
copy or reference a CMMapiFilter object More... | |
OYAPI int OYEXPORT | oyCMMapiFilter_Release (oyCMMapiFilter_s **cmmapifilter) |
release and possibly deallocate a oyCMMapiFilter_s object More... | |
OYAPI int OYEXPORT | oyCMMapiFilter_SetBackendContext (oyCMMapiFilter_s *api, oyPointer_s *ptr) |
set filter type specific runtime data More... | |
OYAPI oyPointer_s *OYEXPORT | oyCMMapiFilter_GetBackendContext (oyCMMapiFilter_s *api) |
get filter type specific runtime data More... | |
void | oyCMMapiFilter_Release__Members (oyCMMapiFilter_s_ *cmmapifilter) |
Custom CMMapiFilter destructor. More... | |
int | oyCMMapiFilter_Init__Members (oyCMMapiFilter_s_ *cmmapifilter) |
Custom CMMapiFilter constructor. More... | |
int | oyCMMapiFilter_Copy__Members (oyCMMapiFilter_s_ *dst, oyCMMapiFilter_s_ *src) |
Custom CMMapiFilter copy constructor. More... | |
![]() | |
OYAPI oyCMMapi_s *OYEXPORT | oyCMMapi_New (oyObject_s object) |
allocate a new CMMapi object More... | |
OYAPI oyCMMapi_s *OYEXPORT | oyCMMapi_Copy (oyCMMapi_s *cmmapi, oyObject_s object) |
copy or reference a CMMapi object More... | |
OYAPI int OYEXPORT | oyCMMapi_Release (oyCMMapi_s **cmmapi) |
release and possibly deallocate a oyCMMapi_s object More... | |
void | oyCMMapi_Set (oyCMMapi_s *api, oyCMMInit_f init, oyCMMMessageFuncSet_f msg_set, const char *registration, int32_t version[3], int32_t module_api[3]) |
CMMapi member setter. More... | |
void | oyCMMapi_SetNext (oyCMMapi_s *api, oyCMMapi_s *next) |
chain CMMapi's More... | |
oyCMMapi_s * | oyCMMapi_GetNext (oyCMMapi_s *api) |
get next CMMapi More... | |
void | oyCMMapi_Release__Members (oyCMMapi_s_ *cmmapi) |
Custom CMMapi destructor. More... | |
int | oyCMMapi_Init__Members (oyCMMapi_s_ *cmmapi) |
Custom CMMapi constructor. More... | |
int | oyCMMapi_Copy__Members (oyCMMapi_s_ *dst, oyCMMapi_s_ *src) |
Custom CMMapi copy constructor. More... | |
![]() | |
const char * | oyStruct_GetTextFromModule (oyStruct_s *obj, oyNAME_e name_type, uint32_t flags) |
get object infos from a module More... | |
const char * | oyStruct_GetText (oyStruct_s *obj, oyNAME_e name_type, uint32_t flags) |
get a text dump More... | |
Data Fields | |
const oyOBJECT_e | type_ |
Type of object. More... | |
oyStruct_Copy_f | copy |
Copy function. More... | |
oyStruct_Release_f | release |
Release function. More... | |
oyObject_s | oy_ |
Oyranos internal object. More... | |
oyMOptions_Handle_f | oyMOptions_Handle |
![]() | |
const oyOBJECT_e | type_ |
Type of object. More... | |
oyStruct_Copy_f | copy |
Copy function. More... | |
oyStruct_Release_f | release |
Release function. More... | |
oyObject_s | oy_ |
Oyranos internal object. More... | |
![]() | |
const oyOBJECT_e | type_ |
Type of object. More... | |
oyStruct_Copy_f | copy |
Copy function. More... | |
oyStruct_Release_f | release |
Release function. More... | |
oyObject_s | oy_ |
Oyranos internal object. More... | |
![]() | |
const oyOBJECT_e | type_ |
Type of object. More... | |
oyStruct_Copy_f | copy |
Copy function. More... | |
oyStruct_Release_f | release |
Release function. More... | |
oyObject_s | oy_ |
Oyranos internal object. More... | |
Generic data exchange.
typedef int(* oyMOptions_Handle_f) (oyOptions_s *options, const char *command, oyOptions_s **result) |
generic data exchange
typedef oyMOptions_Handle_f
The provided data passed with oyOptions_s shall be processed according to the rules of a given command. The result is again a generic oyOptions_s object.
This module type works similiar to the device modules, which are defined in oyCMMapi8_s. While the module interface is simple it has minimal meaning to the intented work or data exchange. The rules are to be defined by the communicating parties, the host and the module. They use the plug-in mechanism only for their convinience.
For speed up the "can_handle.xxx" command must be implemented. "xxx" means in the previous command string the intented command to be performed. The "can_handle" command shall not produce any output in result, but shall indicate with zero that it could handle the request. This command is intented to lightwight select a capable module.
[in] | options | the input data; It is typical not changed. |
[in] | command | a string describing the intention of the caller; Allowed are alphanumerical signs. lower bar '_', minus '-', plus '+' and point '.' . other signs including white space must not occure. Strings are separated by point '.' . The first string is the actual command. The following strings are merely modifiers. |
[out] | result | the created data |
OYAPI oyCMMapi10_s *OYEXPORT oyCMMapi10_Copy | ( | oyCMMapi10_s * | cmmapi10, |
oyObject_s | object | ||
) |
copy or reference a CMMapi10 object
Function oyCMMapi10_Copy
The function is for copying and for referencing. The reference is the most often used way, which saves resourcs and time.
[in] | cmmapi10 | CMMapi10 struct object |
object | NULL - means reference, the optional object triggers a real copy |
References oyOBJECT_CMM_API10_S.
Referenced by oyCMMapi10_Copy__Members().
int oyCMMapi10_Copy__Members | ( | oyCMMapi10_s_ * | dst, |
oyCMMapi10_s_ * | src | ||
) |
Custom CMMapi10 copy constructor.
Function oyCMMapi10_Copy__Members
References oyCMMapi10_Copy(), oyCMMapi10_Init__Members(), oyCMMapi10_New(), oyCMMapi10_Release(), oyCMMapi10_Release__Members(), oyCMMapi_s::oyCMMapi_Copy__Members(), oyCMMapi_s::oyCMMapi_Init__Members(), oyCMMapi_s::oyCMMapi_Release__Members(), oyCMMapiFilter_s::oyCMMapiFilter_Copy__Members(), oyCMMapiFilter_s::oyCMMapiFilter_Init__Members(), oyCMMapiFilter_s::oyCMMapiFilter_Release__Members(), oyOBJECT_CMM_API10_S, oyOBJECT_CMM_API_FILTER_S, oyOBJECT_CMM_API_S, oyObject_s::oyObject_Copy(), oyObject_s::oyObject_NewFrom(), oyObject_s::oyObject_Release(), oyObject_s::oyObject_SetParent(), oyObject_s::oyObject_UnRef(), and release.
OYAPI oyPointer_s *OYEXPORT oyCMMapi10_GetBackendContext | ( | oyCMMapi10_s * | api | ) |
get filter type specific runtime data
Runtime data can be used as context by a backend during execution.
That data is apart from a filter object, which can have lifetime data associated through a oyFilterNode_GetContext(). A filter connector can have its processing data associated through oyFilterNode_SetData().
[in] | api | api object |
References oyOBJECT_CMM_API10_S, oyOBJECT_CMM_API_MAX, and oyPointer_s::oyPointer_Copy().
int oyCMMapi10_Init__Members | ( | oyCMMapi10_s_ * | cmmapi10 | ) |
Custom CMMapi10 constructor.
Function oyCMMapi10_Init__Members
Referenced by oyCMMapi10_Copy__Members().
OYAPI oyCMMapi10_s *OYEXPORT oyCMMapi10_New | ( | oyObject_s | object | ) |
allocate a new CMMapi10 object
Function oyCMMapi10_New
References oyOBJECT_OBJECT_S.
Referenced by oyCMMapi10_Copy__Members().
OYAPI int OYEXPORT oyCMMapi10_Release | ( | oyCMMapi10_s ** | cmmapi10 | ) |
release and possibly deallocate a oyCMMapi10_s object
Function oyCMMapi10_Release
[in,out] | cmmapi10 | CMMapi10 struct object |
References oyOBJECT_CMM_API10_S.
Referenced by oyCMMapi10_Copy__Members().
void oyCMMapi10_Release__Members | ( | oyCMMapi10_s_ * | cmmapi10 | ) |
Custom CMMapi10 destructor.
Function oyCMMapi10_Release__Members
Referenced by oyCMMapi10_Copy__Members().
OYAPI int OYEXPORT oyCMMapi10_SetBackendContext | ( | oyCMMapi10_s * | api, |
oyPointer_s * | ptr | ||
) |
set filter type specific runtime data
Runtime data can be used as context by a backend during execution. The data is typical set during backend load.
That data is apart from a filter object, which can have lifetime data associated through a oyFilterNode_GetContext(). A filter connector can have its processing data associated through oyFilterNode_SetData().
[in,out] | api | api object |
[in] | ptr | the data needed to run the filter type |
References oyOBJECT_CMM_API10_S, oyOBJECT_CMM_API_MAX, oyPointer_s::oyPointer_Copy(), and oyPointer_s::oyPointer_Release().
oyStruct_Copy_f oyCMMapi10_s::copy |
Copy function.
oyObject_s oyCMMapi10_s::oy_ |
Oyranos internal object.
Features name and hash. Do not change during object life time.
oyMOptions_Handle_f oyMOptions_Handle |
oyStruct_Release_f oyCMMapi10_s::release |
Release function.
Referenced by oyCMMapi10_Copy__Members().
const oyOBJECT_e oyCMMapi10_s::type_ |
Type of object.
The struct type tells Oyranos how to interprete hidden fields.