Oyranos  git-devel
Oyranos is a full featured Color Management System
Public Member Functions | Data Fields
oyProfile_s Struct Reference

A profile and its attributes. More...

#include <oyProfile_s.h>

Inheritance diagram for oyProfile_s:
Inheritance graph
Collaboration diagram for oyProfile_s:
Collaboration graph

Public Member Functions

OYAPI oyProfile_s *OYEXPORT oyProfile_New (oyObject_s object)
 allocate a new Profile object More...
 
OYAPI oyProfile_s *OYEXPORT oyProfile_Copy (oyProfile_s *profile, oyObject_s object)
 Copy or Reference a Profile object. More...
 
OYAPI int OYEXPORT oyProfile_Release (oyProfile_s **profile)
 release and possibly deallocate a oyProfile_s object More...
 
OYAPI oyProfile_s *OYEXPORT oyProfile_FromStd (oyPROFILE_e type, uint32_t flags, oyObject_s object)
 Create from default color space settings. More...
 
OYAPI oyProfile_s *OYEXPORT oyProfile_FromName (const char *name, uint32_t flags, oyObject_s object)
 Create from name. More...
 
OYAPI oyProfile_s *OYEXPORT oyProfile_FromFile (const char *name, uint32_t flags, oyObject_s object)
 Create from file. More...
 
OYAPI oyProfile_s *OYEXPORT oyProfile_FromMem (size_t size, const oyPointer block, uint32_t flags, oyObject_s object)
 Create from in memory blob. More...
 
OYAPI oyProfile_s *OYEXPORT oyProfile_FromSignature (icSignature sig, oySIGNATURE_TYPE_e type, oyObject_s object)
 Create a fractional profile from signature. More...
 
OYAPI oyProfile_s *OYEXPORT oyProfile_FromMD5 (uint32_t *md5, uint32_t flags, oyObject_s object)
 Look up a profile from it's md5 hash sum. More...
 
OYAPI oyProfile_s *OYEXPORT oyProfile_FromTaxiDB (oyOptions_s *options, oyObject_s object)
 look up a profile of a device from Taxi DB More...
 
OYAPI int OYEXPORT oyProfile_Install (oyProfile_s *profile, oySCOPE_e scope, oyOptions_s *options)
 Install a ICC profile. More...
 
OYAPI int OYEXPORT oyProfile_GetChannelsCount (oyProfile_s *profile)
 Number of channels in a color space. More...
 
OYAPI icSignature OYEXPORT oyProfile_GetSignature (oyProfile_s *profile, oySIGNATURE_TYPE_e type)
 Get ICC color space signature. More...
 
OYAPI int OYEXPORT oyProfile_SetSignature (oyProfile_s *profile, icSignature sig, oySIGNATURE_TYPE_e type)
 Set signature. More...
 
OYAPI void OYEXPORT oyProfile_SetChannelNames (oyProfile_s *profile, oyObject_s *names_chan)
 Set channel names. More...
 
OYAPI const oyObject_s *OYEXPORT oyProfile_GetChannelNames (oyProfile_s *profile)
 Get channel names. More...
 
OYAPI const char *OYEXPORT oyProfile_GetChannelName (oyProfile_s *profile, int pos, oyNAME_e type)
 Get a channels name. More...
 
OYAPI const oyChar *OYEXPORT oyProfile_GetID (oyProfile_s *profile)
 Get unique name. More...
 
OYAPI int OYEXPORT oyProfile_Equal (oyProfile_s *profileA, oyProfile_s *profileB)
 Check if two profiles are equal by their hash sum. More...
 
OYAPI const oyChar *OYEXPORT oyProfile_GetText (oyProfile_s *profile, oyNAME_e type)
 Get a presentable name. More...
 
OYAPI oyPointer OYEXPORT oyProfile_GetMem (oyProfile_s *profile, size_t *size, uint32_t flag, oyAlloc_f allocateFunc)
 Get the ICC profile in memory. More...
 
OYAPI size_t OYEXPORT oyProfile_GetSize (oyProfile_s *profile, uint32_t flag)
 Get the ICC profile in memory size. More...
 
OYAPI oyProfileTag_s *OYEXPORT oyProfile_GetTagByPos (oyProfile_s *profile, int pos)
 Get a profile tag. More...
 
OYAPI oyProfileTag_s *OYEXPORT oyProfile_GetTagById (oyProfile_s *profile, icTagSignature id)
 Get a profile tag by its tag signature. More...
 
OYAPI int OYEXPORT oyProfile_GetTagCount (oyProfile_s *profile)
 
OYAPI int OYEXPORT oyProfile_TagMoveIn (oyProfile_s *profile, oyProfileTag_s **obj, int pos)
 Add a tag to a profile. More...
 
OYAPI int OYEXPORT oyProfile_TagReleaseAt (oyProfile_s *profile, int pos)
 Remove a tag from a profile. More...
 
OYAPI int OYEXPORT oyProfile_AddTagText (oyProfile_s *profile, icSignature signature, const char *text)
 Add a text tag. More...
 
OYAPI const char *OYEXPORT oyProfile_GetFileName (oyProfile_s *profile, int dl_pos)
 Get the ICC profile location in the filesystem. More...
 
OYAPI int OYEXPORT oyProfile_GetDevice (oyProfile_s *profile, oyConfig_s *device)
 Obtain device information from a profile. More...
 
int oyProfile_GetMD5 (oyProfile_s *profile, int flags, uint32_t *md5)
 Get the ICC profile md5 hash sum. More...
 
int oyProfile_AddDevice (oyProfile_s *profile, oyConfig_s *device, oyOptions_s *options)
 Add device and driver informations to a profile. 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...
 
int oyStruct_RegisterStaticMessageFunc (int type, oyStruct_RegisterStaticMessageFunc_f msg, oyStruct_RegisterStaticFreeFunc_f free_func)
 register a function for verbosity More...
 
const char * oyStruct_GetInfo (oyPointer context_object, oyNAME_e type, int flags)
 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 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

A profile and its attributes.

Version
Oyranos: x.x.x
Since
YYYY/MM/DD (Oyranos: x.x.x)
Date
YYYY/MM/DD
Examples:
image2pdf.c, image_display.cpp, oymd5icc.c, oyranos_cmm_oJPG.c, tutorial1.c, and tutorial_taxi.c.

Member Function Documentation

◆ oyProfile_AddDevice()

int oyProfile_AddDevice ( oyProfile_s profile,
oyConfig_s device,
oyOptions_s options 
)

Add device and driver informations to a profile.

Function oyProfile_AddDevice

oyProfile_AddDevice() is for storing device/driver informations in a ICC profile. So the profile can be sent over internet and Oyranos, or an other CMS, can better match to a device/driver on the new host. The convention what to place into the ICC profile is dependent on each device class and its actual driver or driver type. The meta data is stored in the ICC 'meta' tag of type 'dict'.

Parameters
[in,out]profilethe profile
[in]devicedevice and driver informations
[in]options- "key_prefix_required" : prefix accept only key names with the prefix Separation by point '.' is allowed.
  • "set_device_attributes"="true" will write "manufacturer", "model", "mnft" and "model_id" keys to the appropriate profile tags and fields.
Version
Oyranos: 0.3.2
Since
2009/05/18 (Oyranos: 0.1.10)
Date
2011/08/21

References oyConfig_s::oyConfig_FindString(), and oyOptions_s::oyOptions_FindString().

◆ oyProfile_AddTagText()

OYAPI int OYEXPORT oyProfile_AddTagText ( oyProfile_s profile,
icSignature  signature,
const char *  text 
)

Add a text tag.

Function oyProfile_AddTagText

Version
Oyranos: 0.1.10
Date
2009/10/18
Since
2009/10/18 (Oyranos: 0.1.10)

References oyProfile_GetSignature(), oySIGNATURE_VERSION, and oyValueUInt32().

◆ oyProfile_Copy()

OYAPI oyProfile_s *OYEXPORT oyProfile_Copy ( oyProfile_s profile,
oyObject_s  object 
)

Copy or Reference a Profile object.

Function oyProfile_Copy

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

Parameters
[in]profileProfile struct object
objectNULL - means reference, the optional object triggers a real copy
Examples:
image2pdf.c.

◆ oyProfile_Equal()

OYAPI int OYEXPORT oyProfile_Equal ( oyProfile_s profileA,
oyProfile_s profileB 
)

Check if two profiles are equal by their hash sum.

Function oyProfile_Equal

Version
Oyranos: 0.1.8
Since
2008/02/03 (Oyranos: 0.1.8)
Date
2009/04/16

◆ oyProfile_FromFile()

OYAPI oyProfile_s *OYEXPORT oyProfile_FromFile ( const char *  name,
uint32_t  flags,
oyObject_s  object 
)

Create from file.

Function oyProfile_FromFile

Supported are profiles with absolute path names, profiles in OpenICC profile paths and profiles relative to the current working path. Search will occure in this order.

Parameters
[in]nameprofile file name
[in]flagsOY_NO_CACHE_READ, OY_NO_CACHE_WRITE, OY_COMPUTE - compute ID, OY_NO_REPAIR
[in]objectthe optional base

flags supports

  • OY_NO_CACHE_READ and OY_NO_CACHE_WRITE to disable cache reading and writing. The cache flags are useful for one time profiles or scanning large numbers of profiles.
  • OY_COMPUTE lets newly compute ID
  • OY_ICC_VERSION_2 and OY_ICC_VERSION_4 let select version 2 and 4 profiles separately.
  • OY_NO_REPAIR skip automatic adding a ID hash if missed, useful for pure analysis
  • OY_SKIP_NON_DEFAULT_PATH ignore profiles outside of default paths
  • OY_NO_LOAD do not load profile, create path name fragment; with a given "meta:" prefix, the string is parsed right after the prefix as key until the semicolon ';' sign appears. after that the string is taken as value. A star '*', at begin or end, is kept in the profile name property for following sub string matching, but it is removed from the value string.
  • OY_SKIP_MTIME_CHECK ignore checking time stamp; old bahaviour for faster caching
Version
Oyranos: 0.9.7
Date
2019/06/03
Since
2007/11/0 (Oyranos: 0.1.9)
Examples:
oymd5icc.c.

◆ oyProfile_FromMD5()

OYAPI oyProfile_s *OYEXPORT oyProfile_FromMD5 ( uint32_t *  md5,
uint32_t  flags,
oyObject_s  object 
)

Look up a profile from it's md5 hash sum.

Function oyProfile_FromMD5

Parameters
[in]md5hash sum
[in]flagsflags are OY_NO_CACHE_READ, OY_NO_CACHE_WRITE, OY_COMPUTE
[in]objectthe optional base
Returns
a profile
Version
Oyranos: 0.9.6
Date
2015/01/03
Since
2009/03/20 (Oyranos: 0.1.10)

◆ oyProfile_FromMem()

OYAPI oyProfile_s *OYEXPORT oyProfile_FromMem ( size_t  size,
const oyPointer  block,
uint32_t  flags,
oyObject_s  object 
)

Create from in memory blob.

Function oyProfile_FromMem

Parameters
[in]sizebuffer size
[in]blockpointer to memory containing a profile
[in]flagsfor future use
[in]objectthe optional base
Since
Oyranos: version 0.1.8
Date
november 2007 (API 0.1.8)

◆ oyProfile_FromName()

OYAPI oyProfile_s *OYEXPORT oyProfile_FromName ( const char *  name,
uint32_t  flags,
oyObject_s  object 
)

Create from name.

Function oyProfile_FromName

Supported are profiles with absolute path names, profiles in OpenICC profile paths and profiles relative to the current working path. Search will occure in this order. Hash names, internal descriptions and wildcards can be used.

Parameters
[in]namename can be profile file name, ICC ID, wildcard or internal description. Following are some examples. A possible file name could be "sRGB.icc". A valid ICC ID would be "7fb30d688bf82d32a0e748daf3dba95d". A internal description could be "sRGB". Supported name wildcards are
  • "rgb" for default editing RGB
  • "cmyk" for default editing CMYK profile
  • "gray" for default editing Gray profile
  • "lab" for default editing CIE*Lab profile
  • "xyz" for default editing CIE*XYZ profile
  • "web" for default web profile sRGB
  • "rgbi" for default assumed RGB profile
  • "cmyki" for default assumed CMYK profile
  • "grayi" for default assumed Gray profile
  • "labi" for default assumed CIE*Lab profile
  • "xyzi" for default assumed CIE*XYZ profile
  • "proof" for default simulation profile
  • "effect" for default effect profile
[in]flagsflags are OY_NO_CACHE_READ, OY_NO_CACHE_WRITE, OY_COMPUTE
[in]objectthe optional base
See also
oyProfile_FromFile() and oyProfile_FromMD5()
// get editing "rgb" profile for selected / configured CMM
oyOptions_s * options = NULL; // the selection options can come from command line
uint32_t icc_profile_flags = oyICCProfileSelectionFlagsFromOptions( OY_CMM_STD,
"//" OY_TYPE_STD "/icc_color",
options, 0 );
oyProfile_s * p = oyProfile_FromName( "rgb", icc_profile_flags, NULL );
Version
Oyranos: 0.9.6
Date
2014/05/06
Since
2014/05/06 (Oyranos: 0.9.6)
Examples:
image_display.cpp.

◆ oyProfile_FromSignature()

OYAPI oyProfile_s *OYEXPORT oyProfile_FromSignature ( icSignature  sig,
oySIGNATURE_TYPE_e  type,
oyObject_s  object 
)

Create a fractional profile from signature.

Function oyProfile_FromSignature

Parameters
[in]sigsignature
[in]typetype of signature to set
[in]objectthe optional base
Version
Oyranos: 0.1.8
Date
2008/06/20
Since
2007/06/20 (Oyranos: 0.1.8)

◆ oyProfile_FromStd()

OYAPI oyProfile_s *OYEXPORT oyProfile_FromStd ( oyPROFILE_e  type,
uint32_t  flags,
oyObject_s  object 
)

Create from default color space settings.

Function oyProfile_FromStd

Parameters
[in]typedefault color space
[in]flagssee -> oyProfile_FromFile()
[in]objectthe optional base
Version
Oyranos: 0.9.6
Since
2007/11/0 (Oyranos: 0.1.9)
Date
2014/04/04
Examples:
image2pdf.c, and tutorial1.c.

◆ oyProfile_FromTaxiDB()

OYAPI oyProfile_s *OYEXPORT oyProfile_FromTaxiDB ( oyOptions_s options,
oyObject_s  object 
)

look up a profile of a device from Taxi DB

Function oyProfile_FromTaxiDB

The function asks the online ICC Taxi DB for a profile. It is therefore blocking and can cause a serious delay before returning.

The TAXI_id option is expected to come from oyConfig_GetBestMatchFromTaxiDB() or oyDevicesFromTaxiDB().

Parameters
[in]options- "TAXI_id" shall provide a string for device driver parameter selection
[in]objectthe optional object
Returns
the resulting profile
Version
Oyranos: 0.3.3
Since
2012/01/08 (Oyranos: 0.3.3)
Date
2012/01/08
Examples:
tutorial_taxi.c.

◆ oyProfile_GetChannelName()

OYAPI const char *OYEXPORT oyProfile_GetChannelName ( oyProfile_s profile,
int  pos,
oyNAME_e  type 
)

Get a channels name.

Function oyProfile_GetChannelName

A convinience function to get a single name with a certain type.

Parameters
[in]profileaddress of a Oyranos named color structure
[in]posposition of channel
[in]typesort of text
Since
Oyranos: version 0.1.8
Date
november 2007 (API 0.1.8)

◆ oyProfile_GetChannelNames()

OYAPI const oyObject_s *OYEXPORT oyProfile_GetChannelNames ( oyProfile_s profile)

Get channel names.

Function oyProfile_GetChannelNames

Parameters
[in]profilethe profile
Since
Oyranos: version 0.1.8
Date
october 2007 (API 0.1.8)

◆ oyProfile_GetChannelsCount()

OYAPI int OYEXPORT oyProfile_GetChannelsCount ( oyProfile_s profile)

Number of channels in a color space.

Function oyProfile_GetChannelsCount

Since
Oyranos: version 0.1.8
Date
november 2007 (API 0.1.8)
Examples:
image2pdf.c.

Referenced by oyConnectorImaging_s::oyFilterSocket_MatchImagingPlug().

◆ oyProfile_GetDevice()

OYAPI int OYEXPORT oyProfile_GetDevice ( oyProfile_s profile,
oyConfig_s device 
)

Obtain device information from a profile.

Function oyProfile_GetDevice

oyConfig_s * device = oyConfig_FromRegistration( "//" OY_TYPE_STD "/config", object );
oyProfile_GetDevice( profile, device );
Parameters
[in]profilethe profile
[in,out]devicethe device description
Returns
error
Version
Oyranos: 0.1.10
Since
2009/05/22 (Oyranos: 0.1.10)
Date
2010/10/26

◆ oyProfile_GetFileName()

OYAPI const char *OYEXPORT oyProfile_GetFileName ( oyProfile_s profile,
int  dl_pos 
)

Get the ICC profile location in the filesystem.

Function oyProfile_GetFileName

This function tries to find a profile on disk matching a possibly memory only profile. In case the profile was previously opened from file or as a from Oyranos defaults the associated filename will simply be retuned.

Parameters
profilethe profile
dl_pos-1, or the position in a device links source chain
Version
Oyranos: 0.1.8
Since
2008/02/01 (Oyranos: 0.1.8)
Date
2008/02/01
Examples:
tutorial_taxi.c.

◆ oyProfile_GetID()

OYAPI const oyChar *OYEXPORT oyProfile_GetID ( oyProfile_s profile)

Get unique name.

Function oyProfile_GetID

the returned string is identical to oyNAME_NICK

Since
Oyranos: version 0.1.8
Date
26 november 2007 (API 0.1.8)

◆ oyProfile_GetMD5()

int oyProfile_GetMD5 ( oyProfile_s profile,
int  flags,
uint32_t *  md5 
)

Get the ICC profile md5 hash sum.

Function oyProfile_GetMD5

The ICC profiles ID is returned. On request it can be recomputed through the OY_COMPUTE flag. That computed ID will be used internally as a hash value. The original profile ID can always be obtained through the OY_FROM_PROFILE flags until writing of the profile.

Parameters
[in,out]profilethe profile
[in]flags
  • OY_COMPUTE - calculate the hash
  • OY_FROM_PROFILE - original profile ID
[out]md5the ICC md5 based profile ID
Returns
0 - good, 1 >= error, -1 <= issue(s)
Version
Oyranos: 0.3.0
Since
2011/01/30 (Oyranos: 0.3.0)
Date
2011/04/10
Examples:
oymd5icc.c.

◆ oyProfile_GetMem()

OYAPI oyPointer OYEXPORT oyProfile_GetMem ( oyProfile_s profile,
size_t *  size,
uint32_t  flag,
oyAlloc_f  allocateFunc 
)

Get the ICC profile in memory.

Function oyProfile_GetMem

The prefered memory comes from the unmodified original memory. Otherwise a previously modified tag list is serialised into memory.

Version
Oyranos: 0.1.10
Since
2007/12/20 (Oyranos: 0.1.8)
Date
2010/04/16

◆ oyProfile_GetSignature()

OYAPI icSignature OYEXPORT oyProfile_GetSignature ( oyProfile_s profile,
oySIGNATURE_TYPE_e  type 
)

Get ICC color space signature.

Function oyProfile_GetSignature

// show some profile properties
oyProfile_s * p = ...; // get from somewhere
char * v = (char*)&vs;
printf(" created %d.%d.%d %d:%d:%d\n",
);
printf(" pcs: %s color space: %s version: %d.%d.%d\n",
oyICCColorSpaceGetName( (icColorSpaceSignature)
oyICCColorSpaceGetName( (icColorSpaceSignature)
(int)v[0], (int)v[1]/16, (int)v[1]%16
);
Since
Oyranos: version 0.1.8
Date
november 2007 (API 0.1.8)

Referenced by oyCopyColor(), and oyProfile_AddTagText().

◆ oyProfile_GetSize()

OYAPI size_t OYEXPORT oyProfile_GetSize ( oyProfile_s profile,
uint32_t  flag 
)

Get the ICC profile in memory size.

Function oyProfile_GetSize

The prefered memory comes from the unmodified original memory. Otherwise a previously modified tag list is serialised into memory.

Version
Oyranos: 0.5.0
Date
2012/10/05
Since
2012/10/05 (Oyranos: 0.5.0)

◆ oyProfile_GetTagById()

OYAPI oyProfileTag_s *OYEXPORT oyProfile_GetTagById ( oyProfile_s profile,
icTagSignature  id 
)

Get a profile tag by its tag signature.

Function oyProfile_GetTagById

Parameters
[in]profilethe profile
[in]idicTagSignature
Since
Oyranos: version 0.1.8
Date
2 january 2008 (API 0.1.8)

Referenced by oyProfile_FindMeta(), and oyProfile_GetWhitePoint().

◆ oyProfile_GetTagByPos()

OYAPI oyProfileTag_s *OYEXPORT oyProfile_GetTagByPos ( oyProfile_s profile,
int  pos 
)

Get a profile tag.

Function oyProfile_GetTagByPos

Parameters
[in]profilethe profile
[in]posheader + tag position
Version
Oyranos: 0.1.8
Date
2008/02/06
Since
2008/02/06 (Oyranos: 0.1.8)

◆ oyProfile_GetTagCount()

OYAPI int OYEXPORT oyProfile_GetTagCount ( oyProfile_s profile)

Function oyProfile_GetTagCount

Version
Oyranos: 0.1.10
Since
2008/01/01 (Oyranos: 0.1.8)
Date
2009/12/29

◆ oyProfile_GetText()

OYAPI const oyChar *OYEXPORT oyProfile_GetText ( oyProfile_s profile,
oyNAME_e  type 
)

Get a presentable name.

The type argument should select the following string in return:

  • oyNAME_NAME - a readable XML element
  • oyNAME_NICK - the file name and hash ID
  • oyNAME_DESCRIPTION - profile internal name (icSigProfileDescriptionTag)
  • oyNAME_REGISTRATION - ICC MD5 hash sum in a string with 32 chars
  • oyNAME_JSON - contains non expensive "id", internal "name" + "hash" keys, "id" can use type, file name and ICC hash if already present
Version
Oyranos: 0.9.7
Date
2020/03/24
Since
2007/11/26 (Oyranos: 0.1.8)
Examples:
image2pdf.c, tutorial1.c, and tutorial_taxi.c.

◆ oyProfile_Install()

OYAPI int OYEXPORT oyProfile_Install ( oyProfile_s profile,
oySCOPE_e  scope,
oyOptions_s options 
)

Install a ICC profile.

Function oyProfile_Install

Without options, the ICC profile will be installed into the users ICC profile path. For obtaining a useful path name see Path Names.

Parameters
[in]profilethe profile
[in]scopethe scope to install to; default is oySCOPE_USER
[in]options
  • "path" can provide a string for manual path selection
  • "device" = "1" - write to device paths
  • "test" = "1" - skip write
Returns
error
  • oyOK - success
  • >= 1 error
  • oyERROR_USER msg -> wrong or missing argument
  • oyERROR_DATA_WRITE msg -> path can not be written
  • oyERROR_DATA_AMBIGUITY msg -> "Profile already installed"
  • oyCORRUPTED msg -> profile not useable
Version
Oyranos: 0.9.7
Date
2020/04/04
Since
2012/01/13 (Oyranos: 0.9.1)
  1. construct a profile name

1.1 add user profile path name by default or custom from "path" option

1.2 for "device" = "1" option add xxx/devices/device_class_description_xxx/

1.3 add ".icc" suffix as needed

  1. check if file or description name exists
  2. open profile

3.1 write profile

Examples:
tutorial_taxi.c.

◆ oyProfile_New()

OYAPI oyProfile_s *OYEXPORT oyProfile_New ( oyObject_s  object)

allocate a new Profile object

Function oyProfile_New

◆ oyProfile_Release()

OYAPI int OYEXPORT oyProfile_Release ( oyProfile_s **  profile)

release and possibly deallocate a oyProfile_s object

Function oyProfile_Release

Parameters
[in,out]profileProfile struct object
Examples:
image2pdf.c.

Referenced by oyConnectorImaging_s::oyFilterSocket_MatchImagingPlug().

◆ oyProfile_SetChannelNames()

OYAPI void OYEXPORT oyProfile_SetChannelNames ( oyProfile_s profile,
oyObject_s names_chan 
)

Set channel names.

Function oyProfile_SetChannelNames

The function should be used to specify extra channels or unusual color layouts like CMYKRB. The number of elements in names_chan should fit to the channels count or to the color space signature.

You can let single entries empty if they are understandable by the color space signature. Oyranos will set them for you on request.

Parameters
[in]profileprofile
[in]names_chanpointer to channel names
Since
Oyranos: version 0.1.8
Date
november 2007 (API 0.1.8)

◆ oyProfile_SetSignature()

OYAPI int OYEXPORT oyProfile_SetSignature ( oyProfile_s profile,
icSignature  sig,
oySIGNATURE_TYPE_e  type 
)

Set signature.

Function oyProfile_SetSignature

Parameters
[in]profilethe profile
[in]sigsignature
[in]typetype of signature to set
Version
Oyranos: 0.1.8
Date
2008/06/20
Since
2007/06/20 (Oyranos: 0.1.8)

◆ oyProfile_TagMoveIn()

OYAPI int OYEXPORT oyProfile_TagMoveIn ( oyProfile_s profile,
oyProfileTag_s **  obj,
int  pos 
)

Add a tag to a profile.

Function oyProfile_TagMoveIn

Version
Oyranos: 0.1.10
Since
2008/02/01 (Oyranos: 0.1.8)
Date
2009/12/29

Initialise tag list.

Avoid double occurencies of tags.

◆ oyProfile_TagReleaseAt()

OYAPI int OYEXPORT oyProfile_TagReleaseAt ( oyProfile_s profile,
int  pos 
)

Remove a tag from a profile.

Function oyProfile_TagReleaseAt

Version
Oyranos: 0.1.8
Date
2008/03/11
Since
2008/03/11 (Oyranos: 0.1.8)

Field Documentation

◆ copy

oyStruct_Copy_f oyProfile_s::copy

Copy function.

◆ oy_

oyObject_s oyProfile_s::oy_

Oyranos internal object.

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

◆ release

oyStruct_Release_f oyProfile_s::release

Release function.

◆ type_

const oyOBJECT_e oyProfile_s::type_

Type of object.

The struct type tells Oyranos how to interprete hidden fields.