Oyranos Colour Management System API
Functions
Policy API

Functions

int oyPolicySaveActual (oyGROUP_e group, const char *name)
 save a options group to a file
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
int oyPolicySet (const char *policy_file, const char *full_name)

Detailed Description

Functions to set and export policies in Oyranos.

Policies are a set of options used to group colour 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 colour management policy module for Oyranos is named "oicc".
Todo:
define some default policies internally

Function Documentation

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
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
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
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
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