oyFilterCore_s Struct Reference
Description: C source code API documentation for the Oyranos project.
Keywords: Oyranos,Color Management,Color Management,ICC,CMS,C,doxygen,API,documentation

| Oyranos Color Management System API - Version 0.9.6

Public Member Functions | Data Fields
oyFilterCore_s Struct Reference
Conversion

A basic filter to manipulate data. More...

`#include <oyFilterCore_s.h>`

Inheritance diagram for oyFilterCore_s:
Collaboration diagram for oyFilterCore_s:

## Public Member Functions
OYAPI oyFilterCore_s *OYEXPORT | oyFilterCore_New (oyObject_s object)
| allocate a new FilterCore object More...
| oyFilterCore_Copy
| Copy or Reference a FilterCore object. More...
OYAPI int OYEXPORT | oyFilterCore_Release (oyFilterCore_s **filtercore)
| release and possibly deallocate a oyFilterCore_s object More...
const char * | oyFilterCore_GetCategory (oyFilterCore_s *filter, int nontranslated)
| Get category string. More...
const char * | oyFilterCore_GetName (oyFilterCore_s *filter, oyNAME_e name_type)
| Get name. More...
const char * | oyFilterCore_GetText (oyFilterCore_s *filter, oyNAME_e name_type)
| Get text. More...
oyFilterCore_s * | oyFilterCore_NewWith (const char *registration, oyOptions_s *options, oyObject_s object)
| Lookup and initialise a new filter object. More...
OYAPI const char *OYEXPORT | oyFilterCore_GetRegistration (oyFilterCore_s *filter)
| Get registration text. More...
OYAPI int OYEXPORT | oyFilterCore_SetBackendContext (oyFilterCore_s *obj, oyPointer_s *ptr)
| set backend specific runtime data More...
OYAPI oyPointer_s *OYEXPORT | oyFilterCore_GetBackendContext (oyFilterCore_s *obj)
| get backend specific runtime data 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...
| oyStruct_RegisterStaticMessageFunc
| register a function for verbosity More...
| oyStruct_GetInfo
| 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 basic filter to manipulate data.

This is the Oyranos filter object. Filters are categorised into basic classes of filters described in the Registration (//xxx) member. Filters implement a container for data and options. Filters can be manipulated by changing their options or data set.

Filters are chained into a oyConversion_s in order to get applied to data. The relation of filters in a graph is defined through the oyFilterNode_s struct.

It is possible to chain filters in different ways together. The aimed way here is to use members and queries to find possible connections. For instance a one in one out filter can not be connected to two sources at once.

The Registration describes different basic types of filters (//xxx).

Version
  Oyranos: 0.1.10

Since
  2008/06/08 (Oyranos: 0.1.8)

Date
  2009/11/17

Examples:
  oyranos_cmm_oJPG.c.

## Member Function Documentation

## ◆ oyFilterCore_Copy()

oyFilterCore_Copy

Copy or Reference a FilterCore object.

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

Parameters

  [in] | filtercore | FilterCore struct object
  | object | NULL - means reference, the optional object triggers a real copy

Referenced by oyFilterNode_s::oyFilterNode_Create(), and oyFilterNode_s::oyFilterNode_GetCore().

## ◆ oyFilterCore_GetBackendContext()

OYAPI oyPointer_s *OYEXPORT oyFilterCore_GetBackendContext | ( | oyFilterCore_s * | obj | ) |

get backend specific runtime data

Backend context is used by a filter type during execution.

Parameters

  [in] | obj | the node object

Returns
  the context needed to run the filter type

Version
  Oyranos: 0.9.5

Date
  2014/01/08

Since
  2014/01/08(Oyranos: 0.9.5)

References oyCMMapi4_s::oyCMMapi4_GetBackendContext(), and oyOBJECT_FILTER_CORE_S.

## ◆ oyFilterCore_GetCategory()

const char * oyFilterCore_GetCategory | ( | oyFilterCore_s * | filter,
|  | int | nontranslated
| ) |  |

Get category string.

Function oyFilterCore_GetCategory

Parameters

  [in,out] | filter | filter object
  | nontranslated | switch for translation

Version
  Oyranos: 0.1.10

Since
  2008/06/26 (Oyranos: 0.1.8)

Date
  2009/02/28

## ◆ oyFilterCore_GetName()

const char * oyFilterCore_GetName | ( | oyFilterCore_s * | filter,
|  | oyNAME_e | name_type
| ) |  |

Get name.

Function oyFilterCore_GetName

provides the original filter names

Parameters

  [in,out] | filter | filter object
  | name_type | type of name

Version
  Oyranos: 0.1.10

Since
  2008/06/26 (Oyranos: 0.1.8)

Date
  2009/02/28

Referenced by oyFilterNode_s::oyFilterNode_Connect().

## ◆ oyFilterCore_GetRegistration()

OYAPI const char *OYEXPORT oyFilterCore_GetRegistration | ( | oyFilterCore_s * | filter | ) |

Get registration text.

Function oyFilterCore_GetRegistration

Parameters

  [in] | filter | filter object

Returns
  Registration string

Version
  Oyranos: 0.5.0

Date
  2012/10/04

Since
  2012/10/04 (Oyranos: 0.5.0)

## ◆ oyFilterCore_GetText()

const char * oyFilterCore_GetText | ( | oyFilterCore_s * | filter,
|  | oyNAME_e | name_type
| ) |  |

Get text.

Function oyFilterCore_GetText

oyNAME_NAME provides a XML element with child elements and attributes

Parameters

  [in,out] | filter | filter object
  | name_type | type of name

Version
  Oyranos: 0.1.10

Since
  2008/07/18 (Oyranos: 0.1.8)

Date
  2009/02/28

References oyNAME_NAME, oyObject_GetName(), oyObject_SetName(), oyProfile_s::oyProfile_GetText(), oyProfiles_s::oyProfiles_Count(), and oyProfiles_s::oyProfiles_Get().

Referenced by oyFilterNode_s::oyFilterNode_GetText().

## ◆ oyFilterCore_New()

OYAPI oyFilterCore_s *OYEXPORT oyFilterCore_New | ( | oyObject_s | object | ) |

allocate a new FilterCore object

Function oyFilterCore_New

References oyOBJECT_OBJECT_S.

## ◆ oyFilterCore_NewWith()

oyFilterCore_s * oyFilterCore_NewWith | ( | const char * | registration,
|  | oyOptions_s * | options,
|  | oyObject_s | object
| ) |  |

Lookup and initialise a new filter object.

Function oyFilterCore_NewWith

back end selection:

- the user knows, which kind of filter is requested -> registration, e.g. "//color"
- the user probably knows, which special CMM to use (e.g. lcms, icc, shiva)

Parameters

  [in] | registration | the filter Registration pattern
  [in] | options | the supplied filter options
  [in] | object | the optional object

Returns
  a filter core

Version
  Oyranos: 0.1.10

Since
  2008/06/24 (Oyranos: 0.1.8)

Date
  2009/07/27

Referenced by oyFilterNode_s::oyFilterNode_FromOptions(), and oyFilterNode_s::oyFilterNode_NewWith().

## ◆ oyFilterCore_Release()

OYAPI int OYEXPORT oyFilterCore_Release | ( | oyFilterCore_s ** | filtercore | ) |

release and possibly deallocate a oyFilterCore_s object

Function oyFilterCore_Release

Parameters

  [in,out] | filtercore | FilterCore struct object

References oyOBJECT_FILTER_CORE_S.

Referenced by oyFilterNode_s::oyFilterNode_NewWith().

## ◆ oyFilterCore_SetBackendContext()

OYAPI int OYEXPORT oyFilterCore_SetBackendContext | ( | oyFilterCore_s * | obj,
|  | oyPointer_s * | ptr
| ) |  |

set backend specific runtime data

Runtime data can be used as context by a backend during execution. The data is typical set during oyCMMapi4_s creation. This function provides access for a backend inside a DAC in order to change that data during backend lifetime.

Parameters

  [in,out] | obj | the node object
  [in] | ptr | the data needed to run the filter type

Returns
  error

Version
  Oyranos: 0.9.5

Date
  2014/01/08

Since
  2014/01/08(Oyranos: 0.9.5)

References oyCMMapi4_s::oyCMMapi4_SetBackendContext(), and oyOBJECT_FILTER_CORE_S.

## Field Documentation

## ◆ copy

oyStruct_Copy_f oyFilterCore_s::copy

Copy function.

## ◆ oy_

oyObject_s oyFilterCore_s::oy_

Oyranos internal object.

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

## ◆ release

oyStruct_Release_f oyFilterCore_s::release

Release function.

## ◆ type_

const oyOBJECT_e oyFilterCore_s::type_

Type of object.

The struct type tells Oyranos how to interprete hidden fields.