Oyranos  git-devel
Oyranos is a full featured Color Management System
Functions | Variables

Little CMS 2 ICC style color profiles. More...

Collaboration diagram for lcm2 Module:

Functions

oyPointer_slcm2ParseCGATS (const char *cgats)
 TODO: Parse a CGATS text. More...
 
oyProfile_slcm2CalibrationDeviceLink (const char *csp, uint16_t **curves, int curve_size, uint32_t icc_profile_flags)
 create a White point correction profile More...
 
int l2cmsMOptions_Handle6 (oyOptions_s *options, const char *command, oyOptions_s **result)
 l2cmsMOptions_Handle6() This function implements oyMOptions_Handle_f. More...
 
const char * l2cmsInfoGetTextProfileC6 (const char *select, oyNAME_e type, oyStruct_s *context OY_UNUSED)
 
oyProfile_slcm2AbstractWhitePointBradford (double *src_iccXYZ, const char *src_name, double *illu_iccXYZ, const char *illu_name, double scale, uint32_t icc_profile_flags, char **file_name)
 create a White point correction profile with Bradford More...
 
int l2cmsMOptions_Handle4 (oyOptions_s *options, const char *command, oyOptions_s **result)
 lcm2AbstractWhitePoint() This function implements oyMOptions_Handle_f. More...
 
const char * l2cmsInfoGetTextProfile4 (const char *select, oyNAME_e type, oyStruct_s *context OY_UNUSED)
 
oyProfile_slcm2AbstractWhitePoint (double cie_a, double cie_b, uint32_t icc_profile_flags)
 create a White point correction profile More...
 
int l2cmsMOptions_Handle3 (oyOptions_s *options, const char *command, oyOptions_s **result)
 lcm2AbstractWhitePoint() This function implements oyMOptions_Handle_f. More...
 
const char * l2cmsInfoGetTextProfileC3 (const char *select, oyNAME_e type, oyStruct_s *context OY_UNUSED)
 
cmsHPROFILE l2cmsGamutCheckAbstract (oyProfile_s *proof, cmsUInt32Number flags, int intent, int intent_proof, uint32_t icc_profile_flags)
 convert a proofing profile into a abstract one More...
 
int l2cmsMOptions_Handle2 (oyOptions_s *options, const char *command, oyOptions_s **result)
 l2cmsAddProofProfile() This function implements oyMOptions_Handle_f. More...
 
const char * l2cmsInfoGetTextProfileC2 (const char *select, oyNAME_e type, oyStruct_s *context OY_UNUSED)
 
oyProfile_sl2cmsCreateICCMatrixProfile (float gamma, float rx, float ry, float gx, float gy, float bx, float by, float wx, float wy, int icc_profile_flags)
 create a profile from primaries, white point and one gamma value More...
 
int l2cmsMOptions_Handle (oyOptions_s *options, const char *command, oyOptions_s **result)
 l2cmsCreateICCMatrixProfile() This function implements oyMOptions_Handle_f. More...
 
const char * l2cmsInfoGetTextProfileC (const char *select, oyNAME_e type, oyStruct_s *context OY_UNUSED)
 

Variables

oyCMMapi10_s_ l2cms_api10_cmm6
 Node for creating a calibration device link. More...
 
oyCMMapi10_s_ l2cms_api10_cmm4
 Node for Creating White Point Effect Profiles. More...
 
oyCMMapi10_s_ l2cms_api10_cmm3
 Node for Creating White Point Effect Profiles. More...
 
oyCMMapi10_s_ l2cms_api10_cmm2
 Node for Creating Proofing Effect Profiles. More...
 
oyCMMapi10_s_ l2cms_api10_cmm
 Node for Creating simple Color Matrix Profiles. More...
 

Detailed Description

Little CMS 2 ICC style color profiles.

The modules provide ICC style color space creation.

Function Documentation

◆ l2cmsCreateICCMatrixProfile()

oyProfile_s* l2cmsCreateICCMatrixProfile ( float  gamma,
float  rx,
float  ry,
float  gx,
float  gy,
float  bx,
float  by,
float  wx,
float  wy,
int  icc_profile_flags 
)

create a profile from primaries, white point and one gamma value

Function l2cmsCreateICCMatrixProfile Used for ICC from EDID, Camera RAW etc. Marti calls these matrix/shaper.

Version
Oyranos: 0.9.6
Date
2014/04/07
Since
2009/10/24 (Oyranos: 0.1.10)

◆ l2cmsGamutCheckAbstract()

cmsHPROFILE l2cmsGamutCheckAbstract ( oyProfile_s proof,
cmsUInt32Number  flags,
int  intent,
int  intent_proof,
uint32_t  icc_profile_flags 
)

convert a proofing profile into a abstract one

Function l2cmsGamutCheckAbstract Abstract profiles can easily be merged into a multi profile transform.

Parameters
proofthe proofing profile; owned by the function
flagsthe gamut check and softproof flags
intentrendering intent
intent_proofproof rendering intent
icc_profile_flagsprofile flags
Version
Oyranos: 0.1.11
Since
2009/11/04 (Oyranos: 0.1.10)
Date
2010/08/14

◆ l2cmsInfoGetTextProfile4()

const char* l2cmsInfoGetTextProfile4 ( const char *  select,
oyNAME_e  type,
oyStruct_s *context  OY_UNUSED 
)

This function implements oyCMMinfoGetText_f.

Version
Oyranos: 0.9.7
Date
2018/03/02
Since
2017/06/06 (Oyranos: 0.9.7)

◆ l2cmsInfoGetTextProfileC()

const char* l2cmsInfoGetTextProfileC ( const char *  select,
oyNAME_e  type,
oyStruct_s *context  OY_UNUSED 
)

This function implements oyCMMinfoGetText_f.

Version
Oyranos: 0.1.10
Since
2009/12/11 (Oyranos: 0.1.10)
Date
2009/12/11

◆ l2cmsInfoGetTextProfileC2()

const char* l2cmsInfoGetTextProfileC2 ( const char *  select,
oyNAME_e  type,
oyStruct_s *context  OY_UNUSED 
)

This function implements oyCMMinfoGetText_f.

Version
Oyranos: 0.3.0
Since
2011/02/21 (Oyranos: 0.3.0)
Date
2011/02/21

◆ l2cmsInfoGetTextProfileC3()

const char* l2cmsInfoGetTextProfileC3 ( const char *  select,
oyNAME_e  type,
oyStruct_s *context  OY_UNUSED 
)

This function implements oyCMMinfoGetText_f.

Version
Oyranos: 0.9.7
Date
2018/03/01
Since
2017/06/06 (Oyranos: 0.9.7)

◆ l2cmsInfoGetTextProfileC6()

const char* l2cmsInfoGetTextProfileC6 ( const char *  select,
oyNAME_e  type,
oyStruct_s *context  OY_UNUSED 
)

This function implements oyCMMinfoGetText_f.

Version
Oyranos: 0.9.7
Since
2017/06/06 (Oyranos: 0.9.7)
Date
2019/02/04

◆ l2cmsMOptions_Handle()

int l2cmsMOptions_Handle ( oyOptions_s options,
const char *  command,
oyOptions_s **  result 
)

l2cmsCreateICCMatrixProfile() This function implements oyMOptions_Handle_f.

Parameters
[in]optionsexpects at least one option
  • "color_matrix.redx_redy_greenx_greeny_bluex_bluey_whitex_whitey_gamma" The option shall contain 9 double values.
  • "icc_profile_flags" OY_ICC_VERSION_2 and OY_ICC_VERSION_4 let select version 2 and 4 profiles separately. This option shall be a integer.
[in]command"//" OY_TYPE_STD "/create_profile.color_matrix.icc"
[out]resultwill contain a oyProfile_s in "icc_profile.create_profile.color_matrix"

This function uses internally l2cmsCreateICCMatrixProfile().

Version
Oyranos: 0.1.10
Since
2009/12/11 (Oyranos: 0.1.10)
Date
2009/12/11

References oyFilterRegistrationMatch().

◆ l2cmsMOptions_Handle2()

int l2cmsMOptions_Handle2 ( oyOptions_s options,
const char *  command,
oyOptions_s **  result 
)

l2cmsAddProofProfile() This function implements oyMOptions_Handle_f.

Parameters
[in]optionsexpects at least one option
[in]command"//" OY_TYPE_STD "/create_profile.proofing_profile"
[out]resultwill contain a oyProfile_s in "icc_profile.create_profile.proofing_profile"

This function uses internally l2cmsAddProofProfile().

Version
Oyranos: 0.3.0
Since
2011/02/21 (Oyranos: 0.3.0)
Date
2011/02/21

References oyFilterRegistrationMatch().

◆ l2cmsMOptions_Handle3()

int l2cmsMOptions_Handle3 ( oyOptions_s options,
const char *  command,
oyOptions_s **  result 
)

lcm2AbstractWhitePoint() This function implements oyMOptions_Handle_f.

Parameters
[in]optionsexpects at least two options
  • "cie_a": The option shall be a double.
  • "cie_b": The option shall be a double.
  • "icc_profile_flags" OY_ICC_VERSION_2 and OY_ICC_VERSION_4 let select version 2 and 4 profiles separately. This option shall be a integer.
[in]command"//" OY_TYPE_STD "/create_profile.white_point_adjust.lab"
[out]resultwill contain a oyProfile_s in "icc_profile.create_profile.white_point_adjust.lab"

This function uses internally lcm2AbstractWhitePoint().

Version
Oyranos: 0.9.7
Since
2017/06/05 (Oyranos: 0.9.7)
Date
2017/06/05

References oyFilterRegistrationMatch().

◆ l2cmsMOptions_Handle4()

int l2cmsMOptions_Handle4 ( oyOptions_s options,
const char *  command,
oyOptions_s **  result 
)

lcm2AbstractWhitePoint() This function implements oyMOptions_Handle_f.

Parameters
[in]optionsexpects at least two options
  • "src_iccXYZ": The option shall be a double[3] array.
  • "illu_iccXYZ": The option shall be a double[3] array.
  • "icc_profile_flags" OY_ICC_VERSION_2 and OY_ICC_VERSION_4 let select version 2 and 4 profiles separately. This option shall be a integer.
[in]command"//" OY_TYPE_STD "/create_profile.white_point_adjust.bradford"
[out]resultwill contain a oyProfile_s in "icc_profile.create_profile.white_point_adjust.bradford"

This function uses internally lcm2AbstractWhitePoint().

Version
Oyranos: 0.9.7
Date
2018/03/02
Since
2017/06/05 (Oyranos: 0.9.7)

References oyFilterRegistrationMatch().

◆ l2cmsMOptions_Handle6()

int l2cmsMOptions_Handle6 ( oyOptions_s options,
const char *  command,
oyOptions_s **  result 
)

l2cmsMOptions_Handle6() This function implements oyMOptions_Handle_f.

The calibration curves are stored in "device_calibration" option as string and structured as arrays "[[r0, g0, b0], [r1, g1, b1], ... [rn-1, gn-1, bn-1]]". The range is 0...65535 .

Parameters
[in]optionsexpects at least two options
  • "csp": The option shall be a string and contain "rgb" or "cmyk".
  • "device_calibration": The option shall be a JSON string.
  • "icc_profile_flags" OY_ICC_VERSION_2 and OY_ICC_VERSION_4 let select version 2 and 4 profiles separately. optional This option shall be a integer.
[in]command"//" OY_TYPE_STD "/create_profile.device_calibration"
[out]resultwill contain a oyProfile_s in "icc_profile.create_profile.device_calibration"

This function uses internally lcm2CreateCalibrationProfileM().

Parameters
[in]optionsexpects at least one options
  • "device_calibration": The option shall be a string.

The Handler uses internally lcm2CreateCalibrationProfileM().

Version
Oyranos: 0.9.7
Since
2017/11/26 (Oyranos: 0.9.7)
Date
2024/02/18

References oyFilterRegistrationMatch().

◆ lcm2AbstractWhitePoint()

oyProfile_s* lcm2AbstractWhitePoint ( double  cie_a,
double  cie_b,
uint32_t  icc_profile_flags 
)

create a White point correction profile

Function lcm2AbstractWhitePoint Abstract profiles can easily be merged into a multi profile transform.

See also
lcm2CreateAbstractWhitePointProfile()
Parameters
cie_athe white point coordinate
cie_bthe white point coordinate
icc_profile_flagsprofile flags
Version
Oyranos: 0.9.7
Since
2017/06/05 (Oyranos: 0.9.7)
Date
2018/01/17

◆ lcm2AbstractWhitePointBradford()

oyProfile_s* lcm2AbstractWhitePointBradford ( double *  src_iccXYZ,
const char *  src_name,
double *  illu_iccXYZ,
const char *  illu_name,
double  scale,
uint32_t  icc_profile_flags,
char **  file_name 
)

create a White point correction profile with Bradford

Function lcm2AbstractWhitePointBradford Abstract profiles can easily be merged into a multi profile transform.

See also
lcm2CreateAbstractWhitePointProfileBradford()
Parameters
src_iccXYZthe source white point
src_namesource whitepoint or profile name; optional, not usedd for file_name
illu_iccXYZthe illumination white point
illu_nametarget illuminant name; optional, not usedd for file_name
icc_profile_flagsprofile flags
file_namereturn the file name
Version
Oyranos: 0.9.7
Date
2019/03/17
Since
2017/06/05 (Oyranos: 0.9.7)

◆ lcm2CalibrationDeviceLink()

oyProfile_s* lcm2CalibrationDeviceLink ( const char *  csp,
uint16_t **  curves,
int  curve_size,
uint32_t  icc_profile_flags 
)

create a White point correction profile

Function lcm2CalibrationDeviceLink Abstract profiles can easily be merged into a multi profile transform.

See also
lcm2CreateAbstractWhitePointProfile()
Parameters
cspThe color space, "rgb" or "cmyk"
curvesthe curves in range 0...65535
curve_sizethe curve size, e.g. 256
icc_profile_flagsprofile flags
Version
Oyranos: 0.9.7
Since
2017/06/05 (Oyranos: 0.9.7)
Date
2024/02/18

◆ lcm2ParseCGATS()

oyPointer_s* lcm2ParseCGATS ( const char *  cgats)

TODO: Parse a CGATS text.

Version
Oyranos: 0.9.7
Since
2017/11/26 (Oyranos: 0.9.7)
Date
2019/02/04
Todo:
implement CGATS parsing with cmsCGATS

Variable Documentation

◆ l2cms_api10_cmm

oyCMMapi10_s_ l2cms_api10_cmm
Initial value:
= {
0,0,0,
l2cmsCMMapiInit,
l2cmsCMMapiReset,
OY_LCM2_CREATE_MATRIX_REGISTRATION,
CMM_VERSION,
CMM_API_VERSION,
0,
0,
0,
(char**)l2cms_texts_profile_create,
}
Definition: oyranos_object.h:175
int l2cmsMOptions_Handle(oyOptions_s *options, const char *command, oyOptions_s **result)
l2cmsCreateICCMatrixProfile() This function implements oyMOptions_Handle_f.
Definition: oyranos_cmm_lcm2.c:4819
the basic API interface
Definition: oyCMMapi_s.h:97
const char * l2cmsInfoGetTextProfileC(const char *select, oyNAME_e type, oyStruct_s *context OY_UNUSED)
Definition: oyranos_cmm_lcm2.c:4898
oyCMMapi10_s_ l2cms_api10_cmm2
Node for Creating Proofing Effect Profiles.
Definition: oyranos_cmm_lcm2.c:4727
int l2cmsCMMMessageFuncSet(oyMessage_f l2cms_msg_func)
Definition: oyranos_cmm_lcm2.c:3313

Node for Creating simple Color Matrix Profiles.

l2cms_api10_cmm littleCMS 2 oyCMMapi10_s implementation

For the front end API see oyOptions_Handle(). The backend options are described in l2cmsMOptions_Handle().

Version
Oyranos: 0.1.10
Since
2009/12/11 (Oyranos: 0.1.10)
Date
2009/12/11

◆ l2cms_api10_cmm2

oyCMMapi10_s_ l2cms_api10_cmm2
Initial value:
= {
0,0,0,
l2cmsCMMapiInit,
l2cmsCMMapiReset,
OY_LCM2_CREATE_ABSTRACT_PROOFING_REGISTRATION,
CMM_VERSION,
CMM_API_VERSION,
0,
0,
0,
(char**)l2cms_texts_profile_create,
}
Definition: oyranos_object.h:175
const char * l2cmsInfoGetTextProfileC2(const char *select, oyNAME_e type, oyStruct_s *context OY_UNUSED)
Definition: oyranos_cmm_lcm2.c:4680
the basic API interface
Definition: oyCMMapi_s.h:97
oyCMMapi10_s_ l2cms_api10_cmm3
Node for Creating White Point Effect Profiles.
Definition: oyranos_cmm_lcm2.c:4430
int l2cmsCMMMessageFuncSet(oyMessage_f l2cms_msg_func)
Definition: oyranos_cmm_lcm2.c:3313
int l2cmsMOptions_Handle2(oyOptions_s *options, const char *command, oyOptions_s **result)
l2cmsAddProofProfile() This function implements oyMOptions_Handle_f.
Definition: oyranos_cmm_lcm2.c:4610

Node for Creating Proofing Effect Profiles.

l2cms_api10_cmm2 littleCMS 2 oyCMMapi10_s implementation

For the front end API see oyOptions_Handle(). The backend options are described in l2cmsMOptions_Handle2().

Version
Oyranos: 0.3.0
Since
2011/02/21 (Oyranos: 0.3.0)
Date
2011/02/21

◆ l2cms_api10_cmm3

oyCMMapi10_s_ l2cms_api10_cmm3
Initial value:
= {
0,0,0,
l2cmsCMMapiInit,
l2cmsCMMapiReset,
OY_LCM2_CREATE_ABSTRACT_WHITE_POINT_LAB_REGISTRATION,
CMM_VERSION,
CMM_API_VERSION,
0,
0,
0,
(char**)l2cms_texts_profile_create,
}
Definition: oyranos_object.h:175
the basic API interface
Definition: oyCMMapi_s.h:97
int l2cmsMOptions_Handle3(oyOptions_s *options, const char *command, oyOptions_s **result)
lcm2AbstractWhitePoint() This function implements oyMOptions_Handle_f.
Definition: oyranos_cmm_lcm2.c:4335
const char * l2cmsInfoGetTextProfileC3(const char *select, oyNAME_e type, oyStruct_s *context OY_UNUSED)
Definition: oyranos_cmm_lcm2.c:4386
oyCMMapi10_s_ l2cms_api10_cmm4
Node for Creating White Point Effect Profiles.
Definition: oyranos_cmm_lcm2.c:4223
int l2cmsCMMMessageFuncSet(oyMessage_f l2cms_msg_func)
Definition: oyranos_cmm_lcm2.c:3313

Node for Creating White Point Effect Profiles.

l2cms_api10_cmm3 littleCMS 2 oyCMMapi10_s implementation

For the front end API see oyOptions_Handle(). The backend options are described in l2cmsMOptions_Handle3().

Version
Oyranos: 0.9.7
Since
2017/06/05 (Oyranos: 0.9.7)
Date
2017/06/05

◆ l2cms_api10_cmm4

oyCMMapi10_s_ l2cms_api10_cmm4
Initial value:
= {
0,0,0,
l2cmsCMMapiInit,
l2cmsCMMapiReset,
OY_LCM2_CREATE_ABSTRACT_WHITE_POINT_BRADFORD_REGISTRATION,
CMM_VERSION,
CMM_API_VERSION,
0,
0,
0,
(char**)l2cms_texts_profile_create,
}
Definition: oyranos_object.h:175
const char * l2cmsInfoGetTextProfile4(const char *select, oyNAME_e type, oyStruct_s *context OY_UNUSED)
Definition: oyranos_cmm_lcm2.c:4179
oyCMMapi10_s_ l2cms_api10_cmm6
Node for creating a calibration device link.
Definition: oyranos_cmm_lcm2.c:3779
the basic API interface
Definition: oyCMMapi_s.h:97
int l2cmsCMMMessageFuncSet(oyMessage_f l2cms_msg_func)
Definition: oyranos_cmm_lcm2.c:3313
int l2cmsMOptions_Handle4(oyOptions_s *options, const char *command, oyOptions_s **result)
lcm2AbstractWhitePoint() This function implements oyMOptions_Handle_f.
Definition: oyranos_cmm_lcm2.c:4080

Node for Creating White Point Effect Profiles.

l2cms_api10_cmm4 littleCMS 2 oyCMMapi10_s implementation

For the front end API see oyOptions_Handle(). The backend options are described in l2cmsMOptions_Handle4().

Version
Oyranos: 0.9.7
Date
2018/03/02
Since
2018/03/02 (Oyranos: 0.9.7)

◆ l2cms_api10_cmm6

oyCMMapi10_s_ l2cms_api10_cmm6
Initial value:
= {
0,0,0,
0,
l2cmsCMMapiInit,
l2cmsCMMapiReset,
OY_LCM2_CREATE_CALIBRATION_DEVICE_LINK,
CMM_VERSION,
CMM_API_VERSION,
0,
0,
0,
(char**)l2cms_texts_device_calibration,
}
Definition: oyranos_object.h:175
const char * l2cmsInfoGetTextProfileC6(const char *select, oyNAME_e type, oyStruct_s *context OY_UNUSED)
Definition: oyranos_cmm_lcm2.c:3734
int l2cmsMOptions_Handle6(oyOptions_s *options, const char *command, oyOptions_s **result)
l2cmsMOptions_Handle6() This function implements oyMOptions_Handle_f.
Definition: oyranos_cmm_lcm2.c:3670
int l2cmsCMMMessageFuncSet(oyMessage_f l2cms_msg_func)
Definition: oyranos_cmm_lcm2.c:3313

Node for creating a calibration device link.

l2cms_api10_cmm5 littleCMS 2 oyCMMapi10_s implementation

For the front end API see oyOptions_Handle(). The backend options are described in l2cmsMOptions_Handle6().

Version
Oyranos: 0.9.7
Since
2017/06/05 (Oyranos: 0.9.7)
Date
2019/02/04