Oyranos Color Management System API
Functions
Policy API

Set and export policies in Oyranos. More...

Collaboration diagram for Policy API:

Functions

int oyPolicySaveActual (oyGROUP_e group, const char *name)
 save a options group to a file More...
 
char * oyPolicyToXML (oyGROUP_e group, int add_header, oyAlloc_f allocate_func)
 
int oyReadXMLPolicy (oyGROUP_e group, const char *xml)
 
int oyPolicyFileNameGet (const char *policy_name, char **full_name, oyAlloc_f allocateFunc)
 resolve the file name of a policy More...
 
int oyPolicySet (const char *policy_file, const char *full_name)
 

Detailed Description

Set and export policies in Oyranos.

Policies are a set of options used to group color management settings.

The core API consists of oyReadXMLPolicy() and its reversal oyPolicyToXML().

Additional oyPolicySaveActual() is used to store the actual options into a policy, oyPolicyFileNameGet() to obtain the file name for a given policy name and oyPolicySet() to import the actual policy from a file.

For getting the count, names and actual one of the installed policy files use oyOptionChoicesGet() e.g. oyOptionChoicesGet( oyWIDGET_POLICY, &count, &names, &current )

Future:
The policies are abstracted into the backend API oyCMMapi9_s. The layout of these options can be obtained from the according backends. The color management policy module for Oyranos is named "oicc".
Todo:
define some default policies internally

Function Documentation

◆ oyPolicyFileNameGet()

int oyPolicyFileNameGet ( const char *  policy_name,
char **  full_name,
oyAlloc_f  allocateFunc 
)

resolve the file name of a policy

oyPolicyFileNameGet The resolving is done by weak string matching. So it is possible to use short hands, e.g. "Photo" for "Photographer". The first letter is ignored. A convenience function.

Parameters
[in]policy_namethe selected policy
[out]full_namethe full file name of policy_name
[in]allocateFuncoptional user allocator
Returns
error
Version
Oyranos: 0.1.10
Since
2010/02/28 (Oyranos: 0.1.10)
Date
2010/02/28

◆ oyPolicySaveActual()

int oyPolicySaveActual ( oyGROUP_e  group,
const char *  name 
)

save a options group to a file

The function is basically a wrapper for oyPolicyToXML() and will write the resulting XML to a file somewhere in XDG_CONFIG_HOME.

A convenience function.

Parameters
groupuse oyGROUP_ALL for a typical snapshot
namethe name will become part of a filename
Returns
error
Version
Oyranos: 0.1.8
Since
2008/07/23 (Oyranos: 0.1.8)
Date
2008/07/23

◆ oyPolicySet()

int oyPolicySet ( const char *  policy_file,
const char *  full_name 
)

Load a group of policy settings.
use xml-ish file input produced by oyPolicyToXML()

A convenience function.

Parameters
policy_filethe policy file, will be locked up in standard paths
full_namefile name including path
Returns
errors

◆ oyPolicyToXML()

char* oyPolicyToXML ( oyGROUP_e  group,
int  add_header,
oyAlloc_f  allocate_func 
)

Save a group of policy settings.
Write only such variables, which are available and ignore unknown ones. This currently produces pseudo xml configuration files.

Parameters
groupthe policy group
add_headeradd description
allocate_funcuser provided function for allocating the strings memory
Returns
the configuration as XML to save to file

◆ oyReadXMLPolicy()

int oyReadXMLPolicy ( oyGROUP_e  group,
const char *  xml 
)

Load a group of policy settings.
use xml-ish input produced by oyPolicyToXML()

Parameters
groupthe policy group
xmlxml configuration string
Returns
errors