Oyranos Color Management System API - Version 0.9.6
Public Types | Public Member Functions | Data Fields
oyCMMapi6_s Struct Reference

Context convertor. More...

#include <oyCMMapi6_s.h>

Inheritance diagram for oyCMMapi6_s:
Inheritance graph
Collaboration diagram for oyCMMapi6_s:
Collaboration graph

Public Types

typedef int(* oyModuleData_Convert_f) (oyPointer_s *data_in, oyPointer_s *data_out, oyFilterNode_s *node)
 convert between data formats More...
 
- Public Types inherited from oyCMMapi_s
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 oyCMMapi6_s *OYEXPORT oyCMMapi6_New (oyObject_s object)
 allocate a new CMMapi6 object More...
 
 oyCMMapi6_Copy
 Copy or Reference a CMMapi6 object. More...
 
OYAPI int OYEXPORT oyCMMapi6_Release (oyCMMapi6_s **cmmapi6)
 release and possibly deallocate a oyCMMapi6_s object More...
 
OYAPI int OYEXPORT oyCMMapi6_SetBackendContext (oyCMMapi6_s *api, oyPointer_s *ptr)
 set filter type specific runtime data More...
 
OYAPI oyPointer_s *OYEXPORT oyCMMapi6_GetBackendContext (oyCMMapi6_s *api)
 get filter type specific runtime data More...
 
const char * oyCMMapi6_GetDataType (oyCMMapi6_s *api, int out_direction)
 Get data type identifier. More...
 
oyModuleData_Convert_f oyCMMapi6_GetConvertF (oyCMMapi6_s *api)
 Get data conversion function. More...
 
void oyCMMapi6_Release__Members (oyCMMapi6_s_ *cmmapi6)
 Custom CMMapi6 destructor. More...
 
int oyCMMapi6_Init__Members (oyCMMapi6_s_ *cmmapi6)
 Custom CMMapi6 constructor. More...
 
int oyCMMapi6_Copy__Members (oyCMMapi6_s_ *dst, oyCMMapi6_s_ *src)
 Custom CMMapi6 copy constructor. More...
 
- Public Member Functions inherited from oyCMMapiFilter_s
OYAPI oyCMMapiFilter_s *OYEXPORT oyCMMapiFilter_New (oyObject_s object)
 allocate a new CMMapiFilter object More...
 
 oyCMMapiFilter_Copy
 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...
 
- Public Member Functions inherited from oyCMMapi_s
OYAPI oyCMMapi_s *OYEXPORT oyCMMapi_New (oyObject_s object)
 allocate a new CMMapi object More...
 
 oyCMMapi_Copy
 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_soyCMMapi_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...
 
- Public Member Functions inherited from oyStruct_s
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...
 
 oyStruct_RegisterStaticMessageFunc
 register a function for verbosity More...
 
 oyStruct_GetInfo
 get a additional string from a object More...
 
const char * oyStructTypeToText (oyOBJECT_e type)
 Objects type to small string. 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...
 
- Data Fields inherited from oyCMMapiFilter_s
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...
 
- Data Fields inherited from oyCMMapi_s
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...
 
- Data Fields inherited from oyStruct_s
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...
 

Detailed Description

Context convertor.

The context provided by a filter can be exotic. The API provides the means to get him into a known format. With this format connector it is possible to interface otherwise divergine formats.

The context is set by calling into oyConversion_RunPixels(), which calls oyFilterGraph_PrepareContexts() as needed, that oyPointer_ConvertData() and then a suitable oyCMMapi6_s format connector. The result is cached in memory by higher than this layer.

dot_inline_dotgraph_10.png
Version
Oyranos: 0.1.10
Date
2008/12/27
Since
2008/12/15 (Oyranos: 0.1.9)

Member Function Documentation

oyCMMapi6_Copy

Copy or Reference a CMMapi6 object.

The function is for copying and for referencing. The reference is the most often used way, which saves resourcs and time.

Parameters
[in]cmmapi6CMMapi6 struct object
objectNULL - means reference, the optional object triggers a real copy

Referenced by oyCMMapi6_Copy__Members(), and oyCMMapi6_New().

int oyCMMapi6_Copy__Members ( oyCMMapi6_s_ *  dst,
oyCMMapi6_s_ *  src 
)
OYAPI oyPointer_s *OYEXPORT oyCMMapi6_GetBackendContext ( oyCMMapi6_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().

Parameters
[in]apiapi object
Returns
the context needed to run the filter type
Version
Oyranos: 0.9.5
Date
2013/12/19
Since
2013/12/19 (Oyranos: 0.9.5)

References oyCMMapi6_GetDataType(), oyOBJECT_CMM_API6_S, oyOBJECT_CMM_API_MAX, and oyPointer_s::oyPointer_Copy().

oyModuleData_Convert_f oyCMMapi6_GetConvertF ( oyCMMapi6_s api)

Get data conversion function.

Parameters
apiobject
Returns
the function
Version
Oyranos: 0.9.5
Since
2014/01/10 (Oyranos: 0.9.5)
Date
2014/01/10

Referenced by oyCMMapi6_GetDataType(), and oyOptions_s::oyOptions_Handle().

const char * oyCMMapi6_GetDataType ( oyCMMapi6_s api,
int  out_direction 
)

Get data type identifier.

Parameters
apiobject
out_direction
  • 0 - input data type
  • 1 - output data type
Returns
the identifier string
Version
Oyranos: 0.9.5
Since
2014/01/10 (Oyranos: 0.9.5)
Date
2014/01/10

References oyCMMapi6_GetConvertF().

Referenced by oyCMMapi6_GetBackendContext().

int oyCMMapi6_Init__Members ( oyCMMapi6_s_ *  cmmapi6)

Custom CMMapi6 constructor.

Function oyCMMapi6_Init__Members

Referenced by oyCMMapi6_Copy__Members().

OYAPI oyCMMapi6_s *OYEXPORT oyCMMapi6_New ( oyObject_s  object)

allocate a new CMMapi6 object

Function oyCMMapi6_New

References oyCMMapi6_Copy(), oyOBJECT_CMM_API6_S, and oyOBJECT_OBJECT_S.

Referenced by oyCMMapi6_Copy__Members().

OYAPI int OYEXPORT oyCMMapi6_Release ( oyCMMapi6_s **  cmmapi6)

release and possibly deallocate a oyCMMapi6_s object

Function oyCMMapi6_Release

Parameters
[in,out]cmmapi6CMMapi6 struct object

References oyOBJECT_CMM_API6_S.

Referenced by oyCMMapi6_Copy__Members().

void oyCMMapi6_Release__Members ( oyCMMapi6_s_ *  cmmapi6)

Custom CMMapi6 destructor.

Function oyCMMapi6_Release__Members

Referenced by oyCMMapi6_Copy__Members().

OYAPI int OYEXPORT oyCMMapi6_SetBackendContext ( oyCMMapi6_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().

Parameters
[in,out]apiapi object
[in]ptrthe data needed to run the filter type
Returns
error
Version
Oyranos: 0.9.5
Date
2013/12/19
Since
2013/12/19 (Oyranos: 0.9.5)

References oyOBJECT_CMM_API6_S, oyOBJECT_CMM_API_MAX, oyPointer_s::oyPointer_Copy(), and oyPointer_s::oyPointer_Release().

Field Documentation

oyStruct_Copy_f oyCMMapi6_s::copy

Copy function.

oyObject_s oyCMMapi6_s::oy_

Oyranos internal object.

Features name and hash. Do not change during object life time.

oyStruct_Release_f oyCMMapi6_s::release

Release function.

const oyOBJECT_e oyCMMapi6_s::type_

Type of object.

The struct type tells Oyranos how to interprete hidden fields.