oyCMMInfo_s Struct Reference
[CMM Handling API]

the CMM API resources struct to implement and set by a CMMGiven an example CMM with name "little cms", which wants to use the four-char ID 'lcms', the CMM can register itself to Oyranos as follows: The CMM module file must be named something_lcms_cmm_module_something.something . On Linux this could be "liboyranos_lcms_cmm_module.so.0.1.8". The four-chars 'lcms' must be prepended with OY_MODULE_NAME alias "_cmm_module". More...

#include <oyranos_alpha.h>

Data Fields

oyOBJECT_e type
oyStruct_Copy_f copy
oyStruct_Release_f release
oyPointer dummy
char cmm [8]
char * backend_version
oyName_s name
oyName_s manufacturer
oyName_s copyright
int oy_compatibility
oyCMMapi_s * api
int apis_n
oyIcon_s icon

Detailed Description

the CMM API resources struct to implement and set by a CMM

Given an example CMM with name "little cms", which wants to use the four-char ID 'lcms', the CMM can register itself to Oyranos as follows: The CMM module file must be named something_lcms_cmm_module_something.something . On Linux this could be "liboyranos_lcms_cmm_module.so.0.1.8". The four-chars 'lcms' must be prepended with OY_MODULE_NAME alias "_cmm_module".

Oyranos will scan the /color/cmms/ path, opens the available CMM's from this directory and extracts the four-chars before OY_MODULE_NAME from the library file names. Module paths can be added through the OY_MODULE_PATHS environment variable. Oyranos looks for a symbol to a oyCMMInfo_s struct of the four-byte ID plus OY_MODULE_NAME which results in our example in the name "lcms_cmm_module". On Posix system this should be loadable by dlsym. The lcms_cmm_module should be of type oyCMMInfo_s with the type field and all other fields set appropriately.

The api field is a placeholder to get a real api struct assigned. If the CMM wants to provide more than one API, they can be chained. The apis_n member is to be set to the number of APIs.

Since:
Oyranos: version 0.1.8
Date:
5 december 2007 (API 0.1.8)

Field Documentation

oyCMMapi_s* oyCMMInfo_s::api

must be casted to a according API

count of implemented apis

non translatable, eg "v1.17"

ICC signature, eg 'lcms'

oyStruct_Copy_f oyCMMInfo_s::copy

copy function

translatable, eg "MIT","MIT License"..

oyPointer oyCMMInfo_s::dummy

keep to zero

zero terminated list of a icon pyramid

translatable, eg "Marti" "Marti Maria" "support email: @; internet: www.littlecms.com; sources: ..."

translatable, eg "lcms" "little cms" "..."

last supported Oyranos CMM API : OYRANOS_VERSION

oyStruct_Release_f oyCMMInfo_s::release

release function

struct type oyOBJECT_CMM_INFO_S


Generated on 22 Dec 2009 for Oyranos by  doxygen 1.6.1