Profile API
[Alpha API's]

Collaboration diagram for Profile API:

Data Structures

struct  oyProfile_s
 a profile and its attributes More...
struct  oyProfiles_s
 tell about the conversion profiles More...
struct  oyProfileTag_s
 a profile constituting element More...

Enumerations

enum  oySIGNATURE_TYPE_e {
  oySIGNATURE_COLOUR_SPACE, oySIGNATURE_PCS, oySIGNATURE_SIZE, oySIGNATURE_CMM,
  oySIGNATURE_VERSION, oySIGNATURE_CLASS, oySIGNATURE_MAGIC, oySIGNATURE_PLATFORM,
  oySIGNATURE_OPTIONS, oySIGNATURE_MANUFACTURER, oySIGNATURE_MODEL, oySIGNATURE_INTENT,
  oySIGNATURE_CREATOR, oySIGNATURE_DATETIME_YEAR, oySIGNATURE_DATETIME_MONTH, oySIGNATURE_DATETIME_DAY,
  oySIGNATURE_DATETIME_HOURS, oySIGNATURE_DATETIME_MINUTES, oySIGNATURE_DATETIME_SECONDS
}
 general profile infos

use for oyProfile_GetSignature More...


Functions

oyProfile_soyProfile_s::oyProfile_FromStd (oyPROFILE_e type, oyObject_s object)
 create from default colour space settings
OYAPI oyProfile_s *OYEXPORT oyProfile_s::oyProfile_FromFile (const char *name, uint32_t flags, oyObject_s object)
 create from file
OYAPI oyProfile_s *OYEXPORT oyProfile_s::oyProfile_FromMem (size_t size, const oyPointer block, uint32_t flags, oyObject_s object)
 create from in memory blob
OYAPI oyProfile_s *OYEXPORT oyProfile_s::oyProfile_FromSignature (icSignature sig, oySIGNATURE_TYPE_e type, oyObject_s object)
 create a fractional profile from signature
OYAPI oyProfile_s *OYEXPORT oyProfile_s::oyProfile_Copy (oyProfile_s *profile, oyObject_s object)
 copy from existing profile struct
int oyProfile_s::oyProfile_Release (oyProfile_s **obj)
 release correctly
int oyProfile_s::oyProfile_GetChannelsCount (oyProfile_s *profile)
 number of channels in a colour space
OYAPI icSignature OYEXPORT oyProfile_s::oyProfile_GetSignature (oyProfile_s *s, oySIGNATURE_TYPE_e type)
 get ICC colour space signature
OYAPI int OYEXPORT oyProfile_s::oyProfile_SetSignature (oyProfile_s *profile, icSignature sig, oySIGNATURE_TYPE_e type)
 set signature
void oyProfile_s::oyProfile_SetChannelNames (oyProfile_s *profile, oyObject_s *names_chan)
 set channel names
const oyChar * oyProfile_s::oyProfile_GetChannelName (oyProfile_s *profile, int pos, oyNAME_e type)
 get a channels name
const oyObject_soyProfile_s::oyProfile_GetChannelNames (oyProfile_s *profile)
 get channel names
OYAPI const oyChar *OYEXPORT oyProfile_s::oyProfile_GetID (oyProfile_s *s)
 get unique name
OYAPI const oyChar *OYEXPORT oyProfile_s::oyProfile_GetText (oyProfile_s *s, oyNAME_e type)
 get a presentable name
OYAPI oyPointer OYEXPORT oyProfile_s::oyProfile_GetMem (oyProfile_s *profile, size_t *size, uint32_t flag, oyAlloc_f allocateFunc)
 get the ICC profile in memory
const oyChar * oyProfile_s::oyProfile_GetFileName (oyProfile_s *profile, int dl_pos)
 get the ICC profile location in the filesystem
oyProfileTag_soyProfile_s::oyProfile_GetTagById (oyProfile_s *profile, icTagSignature id)
 get a profile tag by its tag signature
oyProfileTag_soyProfile_s::oyProfile_GetTagByPos_ (oyProfile_s *profile, int pos)
 get a profile tag
oyProfileTag_soyProfile_s::oyProfile_GetTagByPos (oyProfile_s *profile, int pos)
 get a profile tag
int oyProfile_s::oyProfile_GetTagCount (oyProfile_s *profile)
int oyProfile_s::oyProfile_AddTag (oyProfile_s *profile, oyProfileTag_s **obj, int pos)
 add a tag to a profile
int oyProfile_s::oyProfile_TagReleaseAt (oyProfile_s *profile, int pos)
 remove a tag from a profile
OYAPI oyProfileTag_s *OYEXPORT oyProfileTag_s::oyProfileTag_New (oyObject_s object)
OYAPI oyProfileTag_s *OYEXPORT oyProfileTag_s::oyProfileTag_Create (oyStructList_s *list, icTagTypeSignature tag_type, uint32_t version, const char *required_cmm, oyObject_s object)
OYAPI oyProfileTag_s *OYEXPORT oyProfileTag_s::oyProfileTag_Copy (oyProfileTag_s *obj, oyObject_s object)
OYAPI int OYEXPORT oyProfileTag_s::oyProfileTag_Release (oyProfileTag_s **obj)
OYAPI int OYEXPORT oyProfileTag_s::oyProfileTag_Set (oyProfileTag_s *tag, icTagSignature sig, icTagTypeSignature type, oySTATUS_e status, size_t tag_size, oyPointer tag_block)
char ** oyProfileTag_s::oyProfileTag_GetText (oyProfileTag_s *tag, int32_t *n, const char *language, const char *country, int32_t *tag_size, oyAlloc_f allocateFunc)
OYAPI oyProfiles_s *OYEXPORT oyProfiles_s::oyProfiles_New (oyObject_s object)
OYAPI oyProfiles_s *OYEXPORT oyProfiles_s::oyProfiles_Create (oyProfiles_s *patterns, oyObject_s object)
 get a list of installed profiles
OYAPI oyProfiles_s *OYEXPORT oyProfiles_s::oyProfiles_ForStd (oyPROFILE_e std_profile_class, int *current, oyObject_s object)
 get a list of installed profiles
OYAPI int OYEXPORT oyProfiles_s::oyProfiles_Release (oyProfiles_s **obj)
oyProfiles_soyProfiles_s::oyProfiles_MoveIn (oyProfiles_s *list, oyProfile_s **obj, int pos)
int oyProfiles_s::oyProfiles_ReleaseAt (oyProfiles_s *list, int pos)
oyProfile_soyProfiles_s::oyProfiles_Get (oyProfiles_s *list, int pos)
int oyProfiles_s::oyProfiles_Count (oyProfiles_s *list)

Enumeration Type Documentation

general profile infos

use for oyProfile_GetSignature

Since:
Oyranos: version 0.1.8
Date:
10 december 2007 (API 0.1.8)
Enumerator:
oySIGNATURE_COLOUR_SPACE  colour space
oySIGNATURE_PCS  profile connection space
oySIGNATURE_SIZE  internal stored size
oySIGNATURE_CMM  prefered CMM
oySIGNATURE_VERSION  version
oySIGNATURE_CLASS  usage class, e.g. 'mntr' ...
oySIGNATURE_MAGIC  magic; ICC: 'acsp'
oySIGNATURE_PLATFORM  operating system
oySIGNATURE_OPTIONS  various ICC header flags
oySIGNATURE_MANUFACTURER  device manufacturer
oySIGNATURE_MODEL  device modell
oySIGNATURE_INTENT  seldom used profile claimed intent
oySIGNATURE_CREATOR  profile creator ID
oySIGNATURE_DATETIME_YEAR  creation time in UTC
oySIGNATURE_DATETIME_MONTH  creation time in UTC
oySIGNATURE_DATETIME_DAY  creation time in UTC
oySIGNATURE_DATETIME_HOURS  creation time in UTC
oySIGNATURE_DATETIME_MINUTES  creation time in UTC
oySIGNATURE_DATETIME_SECONDS  creation time in UTC


Function Documentation

int oyProfile_AddTag ( oyProfile_s profile,
oyProfileTag_s **  obj,
int  pos 
) [related, inherited]

add a tag to a profile

Function oyProfile_AddTag

Version:
Oyranos: 0.1.8
Date:
2008/02/01
Since:
2008/02/01 (Oyranos: 0.1.8)

References oyProfile_s::oy_, oyObject_s::oyObject_Lock(), oyOBJECT_PROFILE_TAG_S, oyObject_s::oyObject_UnLock(), oyProfile_s::tags_, and oyProfileTag_s::type_.

Referenced by oyProfile_s::oyProfile_GetTagByPos_().

OYAPI oyProfile_s *OYEXPORT oyProfile_Copy ( oyProfile_s profile,
oyObject_s  object 
) [related, inherited]

copy from existing profile struct

Parameters:
[in] profile other profile
[in] object the optional base
Since:
Oyranos: version 0.1.8
Date:
november 2007 (API 0.1.8)

References oyProfile_s::oy_, and oyObject_s::oyObject_Copy().

Referenced by oyImage_s::oyImage_Create(), oyImage_s::oyImage_SetCritical(), oyNamedColour_s::oyNamedColour_Create(), oyNamedColour_s::oyNamedColour_GetSpaceRef(), oyProfile_s::oyProfile_FromStd(), and oyProfiles_s::oyProfiles_Get().

OYAPI oyProfile_s *OYEXPORT oyProfile_FromFile ( const char *  name,
uint32_t  flags,
oyObject_s  object 
) [related, inherited]

create from file

Parameters:
[in] name profile file name or zero to detect display?
[in] flags for future extension
[in] object the 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.

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

References oyProfile_s::oyProfile_GetID().

Referenced by oyImage_s::oyImage_CreateForDisplay(), oyProfile_s::oyProfile_GetFileName(), and oyProfiles_s::oyProfiles_Create().

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

create from in memory blob

Parameters:
[in] size buffer size
[in] block pointer to memory containing a profile
[in] flags for future use
[in] object the optional base
Since:
Oyranos: version 0.1.8
Date:
november 2007 (API 0.1.8)

References oyProfile_s::oyProfile_GetID().

OYAPI oyProfile_s *OYEXPORT oyProfile_FromSignature ( icSignature  sig,
oySIGNATURE_TYPE_e  type,
oyObject_s  object 
) [related, inherited]

create a fractional profile from signature

Parameters:
[in] sig signature
[in] type type of signature to set
[in] object the optional base
Version:
Oyranos: 0.1.8
Date:
2008/06/20
Since:
2007/06/20 (Oyranos: 0.1.8)

References oyProfile_s::oyProfile_SetSignature().

Referenced by oyProfiles_s::oyProfiles_ForStd().

oyProfile_s * oyProfile_FromStd ( oyPROFILE_e  type,
oyObject_s  object 
) [related, inherited]

create from default colour space settings

Parameters:
[in] type default colour space or zero to detect display?
[in] object the optional base
Since:
Oyranos: version 0.1.8
Date:
november 2007 (API 0.1.8)

References oyDEFAULT_PROFILE_END, oyGetDefaultProfileName(), oyProfile_s::oyProfile_Copy(), oyProfile_s::oyProfile_GetID(), and oyProfile_s::use_default_.

Referenced by oyNamedColour_s::oyNamedColour_GetColour(), oyNamedColour_s::oyNamedColour_GetColourStd(), and oyNamedColour_s::oyNamedColour_SetColourStd().

const oyChar * oyProfile_GetChannelName ( oyProfile_s profile,
int  pos,
oyNAME_e  type 
) [related, inherited]

get a channels name

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

Parameters:
[in] profile address of a Oyranos named colour structure
[in] pos position of channel
[in] type sort of text
Since:
Oyranos: version 0.1.8
Date:
november 2007 (API 0.1.8)

References oyProfile_s::names_chan_, oyObject_s::oyObject_GetName(), oyProfile_s::oyProfile_GetChannelNames(), and oyProfile_s::oyProfile_GetChannelsCount().

const oyObject_s * oyProfile_GetChannelNames ( oyProfile_s profile  )  [related, inherited]

int oyProfile_GetChannelsCount ( oyProfile_s profile  )  [related, inherited]

const oyChar * oyProfile_GetFileName ( oyProfile_s profile,
int  dl_pos 
) [related, inherited]

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:
profile the 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

References oyProfile_s::file_name_, oyProfile_s::oy_, oyOBJECT_PROFILE_S, oyProfile_s::oyProfile_FromFile(), oyProfile_s::oyProfile_GetTagById(), oyProfile_s::oyProfile_Release(), oyProfileTag_s::oyProfileTag_GetText(), and oyProfile_s::type_.

Referenced by oyProfiles_s::oyProfiles_ForStd().

OYAPI const oyChar *OYEXPORT oyProfile_GetID ( oyProfile_s s  )  [related, inherited]

get unique name

the returned string is identical to oyNAME_ID

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

References oyProfile_s::file_name_, oyProfile_s::oy_, oyNAME_NICK, oyObject_s::oyObject_GetName(), oyObject_s::oyObject_SetName(), and oyProfile_s::use_default_.

Referenced by oyProfile_s::oyProfile_FromFile(), oyProfile_s::oyProfile_FromMem(), oyProfile_s::oyProfile_FromStd(), and oyProfile_s::oyProfile_GetText().

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

get the ICC profile in memory

Function oyProfile_GetMem

The prefered memory comes from a previously created tag list. Otherwise the memory block is copied.

Version:
Oyranos: 0.1.8
Date:
2008/01/30
Since:
2007/12/20 (Oyranos: 0.1.8)

References oyProfile_s::block_, oyProfile_s::oy_, oyObject_s::oyObject_Lock(), oyOBJECT_PROFILE_S, oyObject_s::oyObject_UnLock(), oyStructList_Count(), oyProfile_s::size_, oyProfile_s::tags_, and oyProfile_s::type_.

OYAPI icSignature OYEXPORT oyProfile_GetSignature ( oyProfile_s s,
oySIGNATURE_TYPE_e  type 
) [related, inherited]

oyProfileTag_s * oyProfile_GetTagById ( oyProfile_s profile,
icTagSignature  id 
) [related, inherited]

get a profile tag by its tag signature

Function oyProfile_GetTagById

Parameters:
[in] profile the profile
[in] id icTagSignature
Since:
Oyranos: version 0.1.8
Date:
2 january 2008 (API 0.1.8)

References oyProfile_s::oy_, oyObject_s::oyObject_Lock(), oyOBJECT_PROFILE_S, oyObject_s::oyObject_UnLock(), oyProfile_s::oyProfile_GetTagByPos_(), oyProfile_s::oyProfile_GetTagCount(), oyProfileTag_s::oyProfileTag_Release(), and oyProfile_s::type_.

Referenced by oyProfile_s::oyProfile_GetFileName(), and oyProfile_s::oyProfile_GetText().

oyProfileTag_s * oyProfile_GetTagByPos ( oyProfile_s profile,
int  pos 
) [related, inherited]

get a profile tag

Function oyProfile_GetTagByPos

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

References oyProfile_s::oy_, oyObject_s::oyObject_Lock(), oyObject_s::oyObject_UnLock(), and oyProfile_s::oyProfile_GetTagByPos_().

oyProfileTag_s * oyProfile_GetTagByPos_ ( oyProfile_s profile,
int  pos 
) [related, inherited]

int oyProfile_GetTagCount ( oyProfile_s profile  )  [related, inherited]

Function oyProfile_GetTagCount

Since:
Oyranos: version 0.1.8
Date:
1 january 2008 (API 0.1.8)

References oyOBJECT_PROFILE_S, oyProfile_s::oyProfile_GetTagByPos_(), oyProfileTag_s::oyProfileTag_Release(), oyStructList_Count(), oyProfile_s::tags_, and oyProfile_s::type_.

Referenced by oyProfile_s::oyProfile_GetTagById().

OYAPI const oyChar *OYEXPORT oyProfile_GetText ( oyProfile_s s,
oyNAME_e  type 
) [related, inherited]

get a presentable name

The type argument should select the following string in return:

  • oyNAME_NAME - a readable XML element
  • oyNAME_NICK - the hash ID
  • oyNAME_DESCRIPTION - profile internal name (icSigProfileDescriptionTag)

Version:
Oyranos: 0.1.8
Since:
2007/11/26 (Oyranos: 0.1.8)
Date:
2008/06/23

References oyProfile_s::file_name_, oyProfileTag_s::oy_, oyProfile_s::oy_, oyNAME_DESCRIPTION, oyNAME_NAME, oyNAME_NICK, oyObject_s::oyObject_GetName(), oyObject_s::oyObject_SetName(), oyProfile_s::oyProfile_GetID(), oyProfile_s::oyProfile_GetTagById(), oyProfileTag_s::oyProfileTag_GetText(), oyWidgetTitleGet(), and oyProfile_s::use_default_.

Referenced by oyFilter_s::oyFilter_GetText().

int oyProfile_Release ( oyProfile_s **  obj  )  [related, inherited]

void oyProfile_SetChannelNames ( oyProfile_s profile,
oyObject_s names_chan 
) [related, inherited]

set channel names

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

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

Parameters:
[in] profile profile
[in] names_chan pointer to channel names
Since:
Oyranos: version 0.1.8
Date:
november 2007 (API 0.1.8)

References oyProfile_s::names_chan_, oyProfile_s::oy_, oyObject_s::oyObject_Copy(), and oyProfile_s::oyProfile_GetChannelsCount().

OYAPI int OYEXPORT oyProfile_SetSignature ( oyProfile_s profile,
icSignature  sig,
oySIGNATURE_TYPE_e  type 
) [related, inherited]

int oyProfile_TagReleaseAt ( oyProfile_s profile,
int  pos 
) [related, inherited]

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)

References oyProfile_s::oy_, oyObject_s::oyObject_Lock(), oyOBJECT_PROFILE_S, oyObject_s::oyObject_UnLock(), oyProfile_s::tags_, and oyProfile_s::type_.

int oyProfiles_Count ( oyProfiles_s list  )  [related, inherited]

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

References oyProfiles_s::list_, and oyStructList_Count().

Referenced by oyFilter_s::oyFilter_GetText(), oyProfiles_s::oyProfiles_Create(), and oyProfiles_s::oyProfiles_ForStd().

OYAPI oyProfiles_s *OYEXPORT oyProfiles_Create ( oyProfiles_s patterns,
oyObject_s  object 
) [related, inherited]

get a list of installed profiles

Function oyProfiles_Create

Parameters:
[in] patterns a list properties, e.g. classes
object the optional object
Version:
Oyranos: 0.1.8
Since:
2008/06/20 (Oyranos: 0.1.8)
Date:
2008/06/20

References oyProfile_s::oyProfile_FromFile(), oyProfile_s::oyProfile_Release(), oyProfiles_s::oyProfiles_Count(), oyProfiles_s::oyProfiles_Get(), oyProfiles_s::oyProfiles_MoveIn(), oyProfiles_s::oyProfiles_New(), and oyProfile_s::size_.

Referenced by oyProfiles_s::oyProfiles_ForStd().

OYAPI oyProfiles_s *OYEXPORT oyProfiles_ForStd ( oyPROFILE_e  std_profile_class,
int *  current,
oyObject_s  object 
) [related, inherited]

get a list of installed profiles

Function oyProfiles_ForStd

Allow for a special case with oyDEFAULT_PROFILE_START in the colour_space argument, to select all possible standard colour profiles, e.g. for typical colour conversions.

Parameters:
[in] std_profile_class standard profile class, e.g. oyEDITING_RGB
[out] current get the colour_space profile position
object a optional object
Returns:
the profile list
Example - get all standard RGB profiles:
    oyPROFILE_e type = oyEDITING_RGB;
    int current = 0,
        size, i;
    oyProfile_s * temp_prof = 0;
    oyProfiles_s * iccs = 0;

    iccs = oyProfiles_ForStd( type, &current, 0 );

    size = oyProfiles_Count(iccs);
    for( i = 0; i < size; ++i)
    {
      temp_prof = oyProfiles_Get( iccs, i );
      printf("%s %d: \"%s\" %s\n", i == current ? "*":" ", i,
             oyProfile_GetText( temp_prof, oyNAME_DESCRIPTION ),
             oyProfile_GetFileName(temp_prof, 0));
      oyProfile_Release( &temp_prof );
    } 
Version:
Oyranos: 0.1.8
Since:
2008/07/25 (Oyranos: 0.1.8)
Date:
2008/08/06

References oyASSUMED_CMYK, oyASSUMED_GRAY, oyASSUMED_LAB, oyASSUMED_RGB, oyASSUMED_XYZ, oyEDITING_CMYK, oyEDITING_GRAY, oyEDITING_LAB, oyEDITING_RGB, oyEDITING_XYZ, oyGetDefaultProfileName(), oyProfile_s::oyProfile_FromSignature(), oyProfile_s::oyProfile_GetFileName(), oyPROFILE_PROOF, oyProfile_s::oyProfile_Release(), oyProfile_s::oyProfile_SetSignature(), oyProfiles_s::oyProfiles_Count(), oyProfiles_s::oyProfiles_Create(), oyProfiles_s::oyProfiles_Get(), oyProfiles_s::oyProfiles_MoveIn(), oyProfiles_s::oyProfiles_Release(), and oySIGNATURE_CLASS.

oyProfile_s * oyProfiles_Get ( oyProfiles_s list,
int  pos 
) [related, inherited]

Parameters:
[in] list the profile list to use
[in] pos the position in list
Returns:
a copy of the profile owned by the caller
Since:
Oyranos: version 0.1.8 2007/11/22
Date:
20 december 2007 (API 0.1.8)

References oyProfiles_s::list_, oyOBJECT_PROFILE_S, and oyProfile_s::oyProfile_Copy().

Referenced by oyFilter_s::oyFilter_GetText(), oyProfiles_s::oyProfiles_Create(), and oyProfiles_s::oyProfiles_ForStd().

oyProfiles_s * oyProfiles_MoveIn ( oyProfiles_s list,
oyProfile_s **  obj,
int  pos 
) [related, inherited]

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

References oyProfiles_s::list_, oyOBJECT_PROFILE_S, oyProfiles_s::oyProfiles_New(), and oyProfile_s::type_.

Referenced by oyProfiles_s::oyProfiles_Create(), and oyProfiles_s::oyProfiles_ForStd().

OYAPI oyProfiles_s *OYEXPORT oyProfiles_New ( oyObject_s  object  )  [related, inherited]

OYAPI int OYEXPORT oyProfiles_Release ( oyProfiles_s **  obj  )  [related, inherited]

int oyProfiles_ReleaseAt ( oyProfiles_s list,
int  pos 
) [related, inherited]

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

References oyProfiles_s::list_.

OYAPI oyProfileTag_s *OYEXPORT oyProfileTag_Copy ( oyProfileTag_s obj,
oyObject_s  object 
) [related, inherited]

Function oyProfileTag_Copy

Since:
Oyranos: version 0.1.8
Date:
1 january 2008 (API 0.1.8)

References oyProfileTag_s::oy_, oyObject_s::oyObject_Lock(), and oyObject_s::oyObject_UnLock().

Referenced by oyProfile_s::oyProfile_GetTagByPos_(), and oyProfileTag_s::oyProfileTag_New().

OYAPI oyProfileTag_s *OYEXPORT oyProfileTag_Create ( oyStructList_s *  list,
icTagTypeSignature  tag_type,
uint32_t  version,
const char *  required_cmm,
oyObject_s  object 
) [related, inherited]

Function oyProfileTag_Create

The API relies on an generic arguments inside a list. The arguments are not specified here but in the appropriate moduls. This allowes flixibility, which needs more understanding.

For the effect of the parameters look at the appropriate module documentation and the function infos.

See also:
oyraProfileTag_Create

oyraFunctionGetInfo

Parameters:
[in] list a list of arguments
[in] tag_type type to create
[in] version version as supported
[in,out] required_cmm in: CMM to create the tag; out: used CMM
[in] object the user object for the tag creation
Returns:
a profile tag
Version:
Oyranos: 0.1.8
Since:
2008/01/08 (Oyranos: 0.1.8)
Date:
2008/01/08

References oyProfileTag_s::last_cmm_, oyOBJECT_CMM_API3_S, oyOBJECT_STRUCT_LIST_S, oyProfileTag_s::oyProfileTag_New(), and oyREQUEST_HARD.

char ** oyProfileTag_GetText ( oyProfileTag_s tag,
int32_t *  n,
const char *  language,
const char *  country,
int32_t *  tag_size,
oyAlloc_f  allocateFunc 
) [related, inherited]

Function oyProfileTag_GetText

For the affect of the parameters look at the appropriate module.

See also:
oyraProfileTag_GetValues
Hint: to select a certain module use the oyProfileTag_s::required_cmm element from the tag parameter.

For localised strings, e.g. icSigMultiLocalizedUnicodeType:

  • zero language and country args: all localisation strings are returned
  • with language and/or country args: return appropriate matches
  • for language != "", the string starts with language code, the text follows after a colon ":"
  • a non zero but empty language argument == "", returns the pure string in the actual Oyranos locale, no language code

Parameters:
[in] tag the tag to read
[out] n the number of returned strings
[in] language 2 byte language code, or "" for current
[in] country 2 byte country code
[out] tag_size the processed tag size
[in] allocateFunc the user allocator for the returned list
Returns:
a list of strings
Version:
Oyranos: 0.1.8
Since:
2008/01/03 (Oyranos: 0.1.8)
Date:
2008/06/19

References oyName_s::lang, oyProfileTag_s::last_cmm_, oyName_s::name, oyCountry(), oyLanguage(), oyOBJECT_CMM_API3_S, oyOBJECT_PROFILE_TAG_S, oyREQUEST_HARD, oyStructList_Count(), oyStructList_GetRefType(), oyProfileTag_s::profile_cmm_, oyProfileTag_s::required_cmm, oyProfileTag_s::tag_type_, and oyProfileTag_s::type_.

Referenced by oyProfile_s::oyProfile_GetFileName(), oyProfile_s::oyProfile_GetTagByPos_(), and oyProfile_s::oyProfile_GetText().

OYAPI oyProfileTag_s *OYEXPORT oyProfileTag_New ( oyObject_s  object  )  [related, inherited]

OYAPI int OYEXPORT oyProfileTag_Release ( oyProfileTag_s **  obj  )  [related, inherited]

OYAPI int OYEXPORT oyProfileTag_Set ( oyProfileTag_s tag,
icTagSignature  sig,
icTagTypeSignature  type,
oySTATUS_e  status,
size_t  tag_size,
oyPointer  tag_block 
) [related, inherited]

Function oyProfileTag_Set

Since:
Oyranos: version 0.1.8
Date:
1 january 2008 (API 0.1.8)

References oyProfileTag_s::block_, oyOBJECT_PROFILE_TAG_S, oyProfileTag_s::size_, oyProfileTag_s::status_, oyProfileTag_s::tag_type_, oyProfileTag_s::type_, and oyProfileTag_s::use.

Referenced by oyProfile_s::oyProfile_GetTagByPos_().


Generated on Tue Mar 10 09:45:18 2009 for Oyranos by  doxygen 1.5.8