Oyranos Color Management System API - Version 0.9.6
Macros | Typedefs | Enumerations | Functions
oyranos_object.h File Reference
#include <oyranos_core.h>

Macros

#define OY_SELECT_FILTER   2048
 select from filter More...
 
#define OY_SELECT_COMMON   4096
 select from policySelect typical from a associatable oyCMMapi9_s type of filter for providing common options. More...
 

Typedefs

typedef int(* oyPointer_release_f) (oyPointer *)
 oyPointer_s release function type More...
 
typedef void(* oyLockRelease_f) (oyPointer lock, const char *marker, int line)
 Lock release function type. More...
 
typedef void(* oyLock_f) (oyPointer lock, const char *marker, int line)
 Lock function type. More...
 
typedef void(* oyUnLock_f) (oyPointer look, const char *marker, int line)
 Unlock function type. More...
 
typedef struct oyObject_s_ * oyObject_s
 

Enumerations

Functions

char * oyFilterRegistrationToText (const char *registration, oyFILTER_REG_e type, oyAlloc_f allocateFunc)
 analyse registration string More...
 
int oyFilterRegistrationMatch (const char *registration, const char *pattern, oyOBJECT_e api_number)
 analyse registration string and compare with a given pattern More...
 
int oyFilterRegistrationMatchKey (const char *registration1, const char *registration2, oyOBJECT_e api_number)
 compare two registration strings, skip key attributes More...
 
const char * oyGetKeyFromRegistration (const char *registration)
 get oyFILTER_REG_MAX from registration string More...
 

Detailed Description

[Template file inheritance graph] +– oyranos_object.template.h

Oyranos is an open source Color Management System

Copyright:
2004-2016 (C) Kai-Uwe Behrmann
Author
Kai-Uwe Behrmann ku.b@.nosp@m.gmx..nosp@m.de
License:
new BSD - see: http://www.opensource.org/licenses/BSD-3-Clause

Typedef Documentation

typedef void(* oyLock_f) (oyPointer lock, const char *marker, int line)

Lock function type.

Version
Oyranos: 0.3.0
Date
2011/02/15
Since
2011/02/15 (Oyranos: 0.3.0)
typedef void(* oyLockRelease_f) (oyPointer lock, const char *marker, int line)

Lock release function type.

Version
Oyranos: 0.3.0
Date
2011/02/15
Since
2011/02/15 (Oyranos: 0.3.0)
typedef int(* oyPointer_release_f) (oyPointer *)

oyPointer_s release function type

Version
Oyranos: 0.3.0
Date
2011/02/15
Since
2011/02/15 (Oyranos: 0.3.0)
typedef void(* oyUnLock_f) (oyPointer look, const char *marker, int line)

Unlock function type.

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

Enumeration Type Documentation

boolean operations

Version
Oyranos: 0.1.8
Since
2008/06/28 (Oyranos: 0.1.8)
Date
2008/06/28
Enumerator
oyBOOLEAN_INTERSECTION 

and, the part covered by A and B

oyBOOLEAN_SUBSTRACTION 

minus, the part covered by A but not by B

oyBOOLEAN_DIFFERENZ 

xor, exclusive parts of A and B

oyBOOLEAN_UNION 

or, the parts covered by A or B or both

enum oyERROR_e
Enumerator
oyERROR_USER 

wrong or missing argument

oyERROR_DATA_READ 

input error

oyERROR_DATA_WRITE 

output error

oyERROR_DATA_AMBIGUITY 

uniqueness of data is conflicted

Function Documentation

int oyFilterRegistrationMatch ( const char *  registration,
const char *  pattern,
oyOBJECT_e  api_number 
)
int oyFilterRegistrationMatchKey ( const char *  registration_a,
const char *  registration_b,
oyOBJECT_e  api_number 
)

compare two registration strings, skip key attributes

Function oyFilterRegistrationMatchKey The rules are described in the Backend Modules overview. The rules in this function map especially to key storage rules for Oyranos DB.

The non key part is handled as namespace and should match in order to consider the two keys from the same namespace. The second condition is the key name is stripped from all attributes. This means the string part after the last slash '/' is taken into account only until the first point '.' or end of string appears.

Parameters
registration_aregistration key
registration_bregistration key
api_numberselect object type
Returns
match, useable for ranking
Version
Oyranos: 0.1.10
Since
2010/06/03 (Oyranos: 0.1.10)
Date
2010/06/03

References oyCONNECTOR_EVENT_CONNECTED, oyCONNECTOR_EVENT_DATA_CHANGED, oyCONNECTOR_EVENT_INCOMPATIBLE_CONTEXT, oyCONNECTOR_EVENT_INCOMPATIBLE_DATA, oyCONNECTOR_EVENT_INCOMPATIBLE_OPTION, oyCONNECTOR_EVENT_INCOMPLETE_GRAPH, oyCONNECTOR_EVENT_OK, oyCONNECTOR_EVENT_RELEASED, oyCONNECTOR_EVENT_STORAGE_CHANGED, oyFilterRegistrationMatch(), and oyFilterRegistrationToText().

Referenced by oyOptions_s::oyOptions_Set().

char* oyFilterRegistrationToText ( const char *  registration,
oyFILTER_REG_e  fields,
oyAlloc_f  allocateFunc 
)

analyse registration string

Function oyFilterRegistrationToText

Parameters
registrationregistration string to analyse
[in]fieldskind of answere in return
[in]allocateFuncuse this or Oyranos standard allocator
Version
Oyranos: 0.1.10
Since
2008/06/26 (Oyranos: 0.1.8)
Date
2009/05/27

For several oyFILTER_REG bits we compose a new registration string.

References OY_SLASH_C.

Referenced by oyConfig_s::oyConfig_Compare(), oyConversion_s::oyConversion_Correct(), oyDeviceSelectSimiliar(), oyDeviceSetProfile(), oyDeviceToJSON(), oyFilterNode_s::oyFilterNode_AddToAdjacencyLst_(), oyFilterNode_s::oyFilterNode_ConnectorMatch(), oyFilterNode_s::oyFilterNode_GetUi(), oyFilterRegistrationMatchKey(), oyGetFilterNodeDefaultPatternFromPolicy(), oyGetKeyFromRegistration(), oyOptions_s::oyOptions_Add(), oyOptions_s::oyOptions_CopyFrom(), oyOptions_s::oyOptions_DoFilter(), oyOptions_s::oyOptions_ForFilter_(), oyOptions_s::oyOptions_Handle(), oyOptions_s::oyOptions_SaveToDB(), oyOptions_s::oyOptions_Sort(), and oyProfile_s::oyProfile_AddDevice().

const char* oyGetKeyFromRegistration ( const char *  registration)

get oyFILTER_REG_MAX from registration string

Function oyGetKeyFromRegistration This function is similar to oyFilterRegistrationToText() .

Parameters
registrationregistration string to analyse
Returns
the key name
Version
Oyranos: 0.9.6
Date
2015/03/09
Since
2015/03/09 (Oyranos: 0.9.6)

References OY_SLASH_C, oyFilterRegistrationMatch(), and oyFilterRegistrationToText().

Referenced by oyOptions_s::oyOptions_MoveInStruct(), oyOptions_s::oyOptions_SetFromData(), oyOptions_s::oyOptions_SetFromDouble(), oyOptions_s::oyOptions_SetFromInt(), and oyOptions_s::oyOptions_SetFromText().