![]() |
Oyranos Colour Management System API |
|
Data Structures | |
| struct | oyConnector_s |
| a filter connection description structure More... | |
| struct | oyFilterSocket_s |
| a filter connection structure More... | |
| struct | oyFilterPlug_s |
| a filter connection structure More... | |
| struct | oyFilterPlugs_s |
| a FilterPlugs list More... | |
| struct | oyFilterCore_s |
| a basic filter to manipulate data More... | |
| struct | oyFilterCores_s |
| a FilterCore list More... | |
| struct | oyFilterNode_s |
| a FilterNode object More... | |
| struct | oyPixelAccess_s |
| control pixel access order More... | |
| struct | oyConversion_s |
| a filter chain or graph to manipulate a image More... | |
| struct | oyConnectorImaging_s |
| node connection descriptor More... | |
Enumerations | |
| enum | oyFILTER_REG_MODE_e { , oyFILTER_REG_MODE_STRIP_IMPLEMENTATION_ATTR = 0x0100 } |
| enum | oyCONNECTOR_e { oyCONNECTOR_IMAGE_MANIPULATOR, oyCONNECTOR_IMAGE_GENERATOR, oyCONNECTOR_IMAGE, oyCONNECTOR_IMAGE_OBSERVER, oyCONNECTOR_IMAGE_SPLITTER, oyCONNECTOR_IMAGE_COMPOSITOR, oyCONNECTOR_CONVERTOR_PIXELDATA, oyCONNECTOR_CONVERTOR_PIXELDATA_LOSSY, oyCONNECTOR_COMPOSITOR_CHANNEL, oyCONNECTOR_SPLITTER_CHANNEL, oyCONNECTOR_ANALYSIS } |
| basic connector attributes More... | |
| enum | oyCONNECTOR_EVENT_e { oyCONNECTOR_EVENT_OK, oyCONNECTOR_EVENT_CONNECTED, oyCONNECTOR_EVENT_RELEASED, oyCONNECTOR_EVENT_DATA_CHANGED, oyCONNECTOR_EVENT_STORAGE_CHANGED, oyCONNECTOR_EVENT_INCOMPATIBLE_DATA, oyCONNECTOR_EVENT_INCOMPATIBLE_OPTION, oyCONNECTOR_EVENT_INCOMPATIBLE_CONTEXT, oyCONNECTOR_EVENT_INCOMPLETE_GRAPH } |
| connector events types More... | |
Functions | |
| char * | oyFilterRegistrationToSTextField (const char *registration, oyFILTER_REG_e field, int *len) |
| analyse registration string | |
| char * | oyFilterRegistrationToText (const char *registration, oyFILTER_REG_e fields, oyAlloc_f allocateFunc) |
| analyse registration string | |
| int | oyFilterRegistrationMatch (const char *registration, const char *pattern, oyOBJECT_e api_number) |
| analyse registration string and compare with a given pattern | |
| int | oyFilterRegistrationMatchKey (const char *registration_a, const char *registration_b, oyOBJECT_e api_number) |
| compare two registration strings, skip key attributes | |
| int | oyTextIccDictMatch (const char *text, const char *pattern) |
| analyse a string and compare with a given pattern | |
| char | oyFilterRegistrationModify (const char *registration, oyFILTER_REG_MODE_e mode, char **result, oyAlloc_f allocateFunc) |
| process a registration string | |
| OYAPI oyConnector_s *OYEXPORT | oyConnector_s::oyConnector_New (oyObject_s object) |
| allocate a new Connector object | |
| OYAPI oyConnector_s *OYEXPORT | oyConnector_s::oyConnector_Copy (oyConnector_s *obj, oyObject_s object) |
| copy or reference a Connector object | |
| OYAPI int OYEXPORT | oyConnector_s::oyConnector_Release (oyConnector_s **obj) |
| release and possibly deallocate a Connector object | |
| int | oyConnector_s::oyConnector_SetName (oyConnector_s *obj, const char *string, oyNAME_e type) |
| set the names in a connector | |
| const char * | oyConnector_s::oyConnector_GetName (oyConnector_s *obj, oyNAME_e type) |
| set the names in a connector | |
| int | oyConnector_s::oyConnector_IsPlug (oyConnector_s *obj) |
| is this connector a plug or a socket | |
| int | oyConnector_s::oyConnector_SetIsPlug (oyConnector_s *obj, int is_plug) |
| Set this connector as a plug or a socket. | |
| const char * | oyConnector_s::oyConnector_GetReg (oyConnector_s *obj) |
| Get the registration for the connection type. | |
| int | oyConnector_s::oyConnector_SetReg (oyConnector_s *obj, const char *type_registration) |
| Set this connectors type string. | |
| int | oyConnector_s::oyConnector_SetMatch (oyConnector_s *obj, oyCMMFilterSocket_MatchPlug_f func) |
| Set this connectors type check function. | |
| oyCMMFilterSocket_MatchPlug_f | oyConnector_s::oyConnector_GetMatch (oyConnector_s *obj) |
| Set this connectors type check function. | |
| OYAPI int OYEXPORT | oyFilterSocket_s::oyFilterSocket_Callback (oyFilterPlug_s *c, oyCONNECTOR_EVENT_e e) |
| tell about a oyConversion_s event | |
| OYAPI int OYEXPORT | oyFilterPlug_s::oyFilterPlug_Callback (oyFilterPlug_s *c, oyCONNECTOR_EVENT_e e) |
| tell about a oyConversion_s event | |
| OYAPI int OYEXPORT | oyFilterSocket_s::oyFilterSocket_SignalToGraph (oyFilterSocket_s *c, oyCONNECTOR_EVENT_e e) |
| send a signal through the graph | |
| OYAPI oyFilterSocket_s *OYEXPORT | oyFilterSocket_s::oyFilterSocket_New (oyObject_s object) |
| allocate a new FilterSocket object | |
| OYAPI oyFilterSocket_s *OYEXPORT | oyFilterSocket_s::oyFilterSocket_Copy (oyFilterSocket_s *obj, oyObject_s object) |
| copy or reference a FilterSocket object | |
| OYAPI int OYEXPORT | oyFilterSocket_s::oyFilterSocket_Release (oyFilterSocket_s **obj) |
| release and possibly deallocate a FilterSocket object | |
| OYAPI int OYEXPORT | oyFilterPlug_s::oyFilterPlug_ConnectIntoSocket (oyFilterPlug_s **p, oyFilterSocket_s **s) |
| connect a oyFilterPlug_s with a oyFilterSocket_s | |
| OYAPI oyFilterPlug_s *OYEXPORT | oyFilterPlug_s::oyFilterPlug_New (oyObject_s object) |
| allocate a new FilterPlug object | |
| OYAPI oyFilterPlug_s *OYEXPORT | oyFilterPlug_s::oyFilterPlug_Copy (oyFilterPlug_s *obj, oyObject_s object) |
| copy or reference a FilterPlug object | |
| OYAPI int OYEXPORT | oyFilterPlug_s::oyFilterPlug_Release (oyFilterPlug_s **obj) |
| release and possibly deallocate a FilterPlug object | |
| OYAPI oyImage_s *OYEXPORT | oyFilterPlug_s::oyFilterPlug_ResolveImage (oyFilterPlug_s *plug, oyFilterSocket_s *socket, oyPixelAccess_s *ticket) |
| resolve processing data during a filter run | |
| OYAPI oyFilterPlugs_s *OYEXPORT | oyFilterPlugs_s::oyFilterPlugs_New (oyObject_s object) |
| allocate a new FilterPlugs list | |
| OYAPI oyFilterPlugs_s *OYEXPORT | oyFilterPlugs_s::oyFilterPlugs_Copy (oyFilterPlugs_s *obj, oyObject_s object) |
| copy or reference a FilterPlugs list | |
| OYAPI int OYEXPORT | oyFilterPlugs_s::oyFilterPlugs_Release (oyFilterPlugs_s **obj) |
| release and possibly deallocate a FilterPlugs list | |
| OYAPI oyFilterPlugs_s *OYEXPORT | oyFilterPlugs_s::oyFilterPlugs_MoveIn (oyFilterPlugs_s *list, oyFilterPlug_s **obj, int pos) |
| add a element to a FilterPlugs list | |
| OYAPI int OYEXPORT | oyFilterPlugs_s::oyFilterPlugs_ReleaseAt (oyFilterPlugs_s *list, int pos) |
| release a element from a FilterPlugs list | |
| OYAPI oyFilterPlug_s *OYEXPORT | oyFilterPlugs_s::oyFilterPlugs_Get (oyFilterPlugs_s *list, int pos) |
| get a element of a FilterPlugs list | |
| OYAPI int OYEXPORT | oyFilterPlugs_s::oyFilterPlugs_Count (oyFilterPlugs_s *list) |
| count the elements in a FilterPlugs list | |
| oyFilterCore_s * | oyFilterCore_s::oyFilterCore_New (const char *registration, oyOptions_s *options, oyObject_s object) |
| lookup and initialise a new filter object | |
| oyFilterCore_s * | oyFilterCore_s::oyFilterCore_Copy (oyFilterCore_s *filter, oyObject_s object) |
| copy or reference a filter object | |
| int | oyFilterCore_s::oyFilterCore_Release (oyFilterCore_s **obj) |
| release and zero a filter object | |
| const char * | oyFilterCore_s::oyFilterCore_GetText (oyFilterCore_s *filter, oyNAME_e name_type) |
| get text | |
| const char * | oyFilterCore_s::oyFilterCore_GetName (oyFilterCore_s *filter, oyNAME_e name_type) |
| get name | |
| const char * | oyFilterCore_s::oyFilterCore_CategoryGet (oyFilterCore_s *filter, int nontranslated) |
| get category string | |
| OYAPI oyFilterCores_s *OYEXPORT | oyFilterCores_s::oyFilterCores_New (oyObject_s object) |
| allocate a new Filters list | |
| OYAPI oyFilterCores_s *OYEXPORT | oyFilterCores_s::oyFilterCores_Copy (oyFilterCores_s *obj, oyObject_s object) |
| copy or reference a Filters list | |
| OYAPI int OYEXPORT | oyFilterCores_s::oyFilterCores_Release (oyFilterCores_s **obj) |
| release and possibly deallocate a Filters list | |
| OYAPI oyFilterCores_s *OYEXPORT | oyFilterCores_s::oyFilterCores_MoveIn (oyFilterCores_s *list, oyFilterCore_s **obj, int pos) |
| add a element to a Filters list | |
| OYAPI int OYEXPORT | oyFilterCores_s::oyFilterCores_ReleaseAt (oyFilterCores_s *list, int pos) |
| release a element from a Filters list | |
| OYAPI oyFilterCore_s *OYEXPORT | oyFilterCores_s::oyFilterCores_Get (oyFilterCores_s *list, int pos) |
| get a element of a Filters list | |
| OYAPI int OYEXPORT | oyFilterCores_s::oyFilterCores_Count (oyFilterCores_s *list) |
| count the elements in a Filters list | |
| oyFilterNode_s * | oyFilterNode_s::oyFilterNode_New (oyObject_s object) |
| allocate and initialise a new filter node object | |
| oyFilterNode_s * | oyFilterNode_s::oyFilterNode_Create (oyFilterCore_s *filter, oyObject_s object) |
| initialise a new filter node object properly | |
| oyFilterNode_s * | oyFilterNode_s::oyFilterNode_NewWith (const char *registration, oyOptions_s *options, oyObject_s object) |
| initialise a new filter node object properly | |
| oyFilterNode_s * | oyFilterNode_s::oyFilterNode_Copy (oyFilterNode_s *node, oyObject_s object) |
| copy or reference a filter node object | |
| int | oyFilterNode_s::oyFilterNode_Release (oyFilterNode_s **obj) |
| release and zero a filter node object | |
| int | oyFilterNode_s::oyFilterNode_EdgeCount (oyFilterNode_s *node, int is_input, int flags) |
| count real and potential connections to a filter node object | |
| int | oyFilterNode_s::oyFilterNode_Connect (oyFilterNode_s *input, const char *socket_nick, oyFilterNode_s *output, const char *plug_nick, int flags) |
| connect two nodes by a edge | |
| int | oyFilterNode_s::oyFilterNode_Disconnect (oyFilterPlug_s *edge) |
| disconnect two nodes by a edge | |
| OYAPI oyConnector_s *OYEXPORT | oyFilterNode_s::oyFilterNode_ShowConnector (oyFilterNode_s *node, int as_pos, int is_plug) |
| get a connector description from a filter module | |
| OYAPI int OYEXPORT | oyFilterNode_s::oyFilterNode_ConnectorMatch (oyFilterNode_s *node_first, int pos_first, oyFilterPlug_s *plug) |
| check if a connector match to a FilterNode | |
| OYAPI int OYEXPORT | oyFilterNode_s::oyFilterNode_GetConnectorPos (oyFilterNode_s *node, int is_input, const char *pattern, int nth_of_type, int flags) |
| get a oyFilterSocket_s or oyFilterPlug_s position from a FilterNode | |
| OYAPI oyFilterSocket_s *OYEXPORT | oyFilterNode_s::oyFilterNode_GetSocket (oyFilterNode_s *node, int pos) |
| get a oyFilterSocket_s of type from a FilterNode | |
| OYAPI oyFilterPlug_s *OYEXPORT | oyFilterNode_s::oyFilterNode_GetPlug (oyFilterNode_s *node, int pos) |
| get a oyFilterPlug_s of type from a FilterNode | |
| oyOptions_s * | oyFilterNode_s::oyFilterNode_OptionsGet (oyFilterNode_s *node, int flags) |
| get filter options | |
| int | oyFilterNode_s::oyFilterNode_UiGet (oyFilterNode_s *node, char **ui_text, char ***namespaces, oyAlloc_f allocateFunc) |
| get filter options XFORMS | |
| const char * | oyFilterNode_s::oyFilterNode_GetText (oyFilterNode_s *node, oyNAME_e name_type) |
| serialise filter node to text | |
| OYAPI int OYEXPORT | oyFilterNode_s::oyFilterNode_GetId (oyFilterNode_s *node) |
| get the object Id | |
| oyPointer | oyFilterNode_s::oyFilterNode_TextToInfo_ (oyFilterNode_s *node, size_t *size, oyAlloc_f allocateFunc) |
| serialise filter node to binary | |
| oyStruct_s * | oyFilterNode_s::oyFilterNode_DataGet (oyFilterNode_s *node, int socket_pos) |
| get process data from a filter socket | |
| int | oyFilterNode_s::oyFilterNode_DataSet (oyFilterNode_s *node, oyStruct_s *data, int socket_pos, oyObject_s *object) |
| Set process data to a filter socket. | |
| OYAPI oyFilterNodes_s *OYEXPORT | oyFilterNodes_s::oyFilterNodes_New (oyObject_s object) |
| allocate a new FilterNodes list | |
| OYAPI oyFilterNodes_s *OYEXPORT | oyFilterNodes_s::oyFilterNodes_Copy (oyFilterNodes_s *obj, oyObject_s object) |
| copy or reference a FilterNodes list | |
| OYAPI int OYEXPORT | oyFilterNodes_s::oyFilterNodes_Release (oyFilterNodes_s **obj) |
| release and possibly deallocate a FilterNodes list | |
| OYAPI int OYEXPORT | oyFilterNodes_s::oyFilterNodes_MoveIn (oyFilterNodes_s *list, oyFilterNode_s **obj, int pos) |
| add a element to a FilterNodes list | |
| OYAPI int OYEXPORT | oyFilterNodes_s::oyFilterNodes_ReleaseAt (oyFilterNodes_s *list, int pos) |
| release a element from a FilterNodes list | |
| OYAPI oyFilterNode_s *OYEXPORT | oyFilterNodes_s::oyFilterNodes_Get (oyFilterNodes_s *list, int pos) |
| get a element of a FilterNodes list | |
| OYAPI int OYEXPORT | oyFilterNodes_s::oyFilterNodes_Count (oyFilterNodes_s *list) |
| count the elements in a FilterNodes list | |
| OYAPI oyFilterGraph_s *OYEXPORT | oyFilterGraph_s::oyFilterGraph_New (oyObject_s object) |
| allocate a new FilterGraph object | |
| OYAPI oyFilterGraph_s *OYEXPORT | oyFilterNode_s::oyFilterGraph_FromNode (oyFilterNode_s *node, int flags) |
| get a graphs adjazency list | |
| OYAPI oyFilterGraph_s *OYEXPORT | oyFilterGraph_s::oyFilterGraph_Copy (oyFilterGraph_s *obj, oyObject_s object) |
| copy or reference a FilterGraph object | |
| OYAPI int OYEXPORT | oyFilterGraph_s::oyFilterGraph_Release (oyFilterGraph_s **obj) |
| release and possibly deallocate a FilterGraph object | |
| OYAPI int OYEXPORT | oyFilterGraph_s::oyFilterGraph_PrepareContexts (oyFilterGraph_s *graph, int flags) |
| iterate over a filter graph and possibly prepare contexts | |
| OYAPI oyFilterNode_s *OYEXPORT | oyFilterGraph_s::oyFilterGraph_GetNode (oyFilterGraph_s *graph, int pos, const char *registration, const char *mark) |
| select a node | |
| OYAPI int OYEXPORT | oyFilterNode_s::oyFilterGraph_SetFromNode (oyFilterGraph_s *graph, oyFilterNode_s *node, const char *mark, int flags) |
| get a graphs adjazency list | |
| OYAPI char *OYEXPORT | oyFilterGraph_s::oyFilterGraph_ToText (oyFilterGraph_s *graph, oyFilterNode_s *input, oyFilterNode_s *output, const char *head_line, int reserved, oyAlloc_f allocateFunc) |
| text description of a graph | |
Variables | |
| oyOBJECT_e | oyConfDomain_s_::type_ |
| oyStruct_Copy_f | oyConfDomain_s_::copy |
| oyStruct_Release_f | oyConfDomain_s_::release |
| oyObject_s | oyConfDomain_s_::oy_ |
Colour conversion front end API's.
Colour conversions are realised by structures called acyclic graphs. A graph combines several processing elements and their according stages into one process model. A very simple graph will link elements just one by one to form a chain. More complex graphs are possible by branching and rejoining of data processing arms. Datas are requested always from the end. This makes it simple to create views at data. A observer tells the to be viewed plugin that it wants to connect and can request the data stream. In the other direction plug-ins can send events along the pipe through callbacks, e.g. for reporting errors or requesting updating of parameters. The Module APIs explains how to create modules to plug into Oyranos.
About Graphs:
The top object a user will handle is of type oyConversion_s. This contains oyFilterNode_s objects, which describe the connections of each processing element, such as images with attached data and profile, and the filters. The Oyranos node connection concept is splitted into various structures.
Connectors have tree missions:
Routing:
The connector output, called socket, side is primarily passive. The data stream is requested or viewed by the input side, called plug. Changes are propagated by events. This turns the acyclic graph into a dual one. The events use the same graph just in the other direction. Events and data requests are distinct. A plug local to the filter or filter node can be connected to a remote socket connector and vice versa.
Status information can be passed from the input side to the output side by callbacks.
The data flows from the socket to the plug.
A oyFilterNode_s can have various oyFilterPlug_s ' to obtain data from different sources. The required number is described in the oyCMMapi4_s structure, which is part of oyFilterCore_s. But each plug can only connect to one socket.
oyFilterSocket_s is designed to accept arbitrary numbers of connections to allow for viewing on a filters data output or observe its state changes.
| enum oyCONNECTOR_e |
basic connector attributes
| oyCONNECTOR_IMAGE_MANIPULATOR |
a data manipulator. e.g. a normal filter - "//imaging/manipulator" |
| oyCONNECTOR_IMAGE_GENERATOR |
a data generator, e.g. checkerboard, gradient "//imaging/generator" |
| oyCONNECTOR_IMAGE |
a pixel data provider, e.g. image data connector "//imaging/data". This type should be always present to connect processing data. That data is stored in oyFilterSocket_s::data. |
| oyCONNECTOR_IMAGE_OBSERVER |
observer, a endpoint, only input, e.g. text log, thumbnail viewer "//imaging/observer" |
| oyCONNECTOR_IMAGE_SPLITTER |
a routing element, without data altering "//imaging/splitter.rectangle" |
| oyCONNECTOR_IMAGE_COMPOSITOR |
combines or splits image data, e.g. blending "//imaging/blender.rectangle" |
| oyCONNECTOR_CONVERTOR_PIXELDATA |
converts pixel layout to other formats "//imaging/pixel.convertor" |
| oyCONNECTOR_CONVERTOR_PIXELDATA_LOSSY |
converts pixel layout to other formats, with precission loss, e.g. float -> uint8_t, only relevant for output connectors "//imaging/pixel.convertor.lossy" |
| oyCONNECTOR_COMPOSITOR_CHANNEL |
combines gray channels, e.g. from colour "//imaging/combiner.channels" |
| oyCONNECTOR_SPLITTER_CHANNEL |
provides gray scale views of channels "//imaging/splitter.channels" |
| oyCONNECTOR_ANALYSIS |
provides values or text, only output "///analysis" |
| enum oyCONNECTOR_EVENT_e |
connector events types
| enum oyFILTER_REG_MODE_e |
| OYAPI oyConnector_s *OYEXPORT oyConnector_Copy | ( | oyConnector_s * | obj, |
| oyObject_s | object | ||
| ) |
copy or reference a Connector object
Function oyConnector_Copy
| [in] | obj | struct object |
| object | the optional object |
Referenced by oyConnector_s::oyConnector_New(), and oyFilterNode_s::oyFilterNode_ShowConnector().
| oyCMMFilterSocket_MatchPlug_f oyConnector_GetMatch | ( | oyConnector_s * | obj | ) |
Set this connectors type check function.
Function oyConnector_GetMatch
This is use as a check, if connections are possible. This allowes for a more fine grained control than the type registration.
| [in] | obj | Connector object |
References oyConnector_s::filterSocket_MatchPlug.
Referenced by oyFilterNode_s::oyFilterNode_ConnectorMatch().
| const char * oyConnector_GetName | ( | oyConnector_s * | obj, |
| oyNAME_e | type | ||
| ) |
set the names in a connector
Function oyConnector_GetName
Get UI strings.
| [in] | obj | Connector object |
| [in] | type | the names type |
| const char * oyConnector_GetReg | ( | oyConnector_s * | obj | ) |
Get the registration for the connection type.
Function oyConnector_GetReg
This is use as a rough check, if connections are possible.
| [in] | obj | Connector object |
References oyConnector_s::connector_type.
Referenced by oyFilterNode_s::oyFilterNode_ConnectorMatch(), and oyFilterNode_s::oyFilterNode_GetConnectorPos().
| int oyConnector_IsPlug | ( | oyConnector_s * | obj | ) |
is this connector a plug or a socket
Function oyConnector_IsPlug
| [in] | obj | Connector object |
References oyConnector_s::is_plug.
| OYAPI oyConnector_s *OYEXPORT oyConnector_New | ( | oyObject_s | object | ) |
allocate a new Connector object
Function oyConnector_New
References oyConnector_s::oyConnector_Copy(), oyConnector_s::oyConnector_Release(), and oyConnector_s::release.
| OYAPI int OYEXPORT oyConnector_Release | ( | oyConnector_s ** | obj | ) |
release and possibly deallocate a Connector object
Function oyConnector_Release
| [in,out] | obj | struct object |
References oyConnector_s::connector_type.
Referenced by oyConnector_s::oyConnector_New(), oyFilterNode_s::oyFilterNode_ConnectorMatch(), oyFilterPlug_s::oyFilterPlug_Release(), and oyFilterSocket_s::oyFilterSocket_Release().
| int oyConnector_SetIsPlug | ( | oyConnector_s * | obj, |
| int | is_plug | ||
| ) |
Set this connector as a plug or a socket.
Function oyConnector_SetIsPlug
| [in,out] | obj | Connector object |
| [in] | is_plug | boolean; 0 - socket; 1 - plug |
References oyConnector_s::is_plug.
| int oyConnector_SetMatch | ( | oyConnector_s * | obj, |
| oyCMMFilterSocket_MatchPlug_f | func | ||
| ) |
Set this connectors type check function.
Function oyConnector_SetMatch
This is use as a check, if connections are possible. This allowes for a more fine grained control than the type registration.
| [in,out] | obj | Connector object |
| [in] | func | the check function |
References oyConnector_s::filterSocket_MatchPlug.
| int oyConnector_SetName | ( | oyConnector_s * | obj, |
| const char * | string, | ||
| oyNAME_e | type | ||
| ) |
set the names in a connector
Function oyConnector_SetName
These are UI strings, e.g. "Img", "Image", "Image Socket" .
| [in,out] | obj | Connector object |
| [in] | string | the name to set |
| [in] | type | the names type |
| int oyConnector_SetReg | ( | oyConnector_s * | obj, |
| const char * | type_registration | ||
| ) |
Set this connectors type string.
Function oyConnector_SetReg
This is use as a rough check, if connections are possible.
| [in,out] | obj | Connector object |
| [in] | type_registration | the registration string to describe the type |
References oyConnector_s::connector_type.
| const char * oyFilterCore_CategoryGet | ( | oyFilterCore_s * | filter, |
| int | nontranslated | ||
| ) |
get category string
Function oyFilterCore_CategoryGet
| [in,out] | filter | filter object |
| nontranslated | switch for translation |
| oyFilterCore_s * oyFilterCore_Copy | ( | oyFilterCore_s * | filter, |
| oyObject_s | object | ||
| ) |
copy or reference a filter object
Function oyFilterCore_Copy
| [in] | filter | filter object |
| object | the optional object |
Referenced by oyFilterNode_s::oyFilterNode_Create().
| const char * oyFilterCore_GetName | ( | oyFilterCore_s * | filter, |
| oyNAME_e | name_type | ||
| ) |
get name
Function oyFilterCore_GetName
provides the original filter names
| [in,out] | filter | filter object |
| name_type | type of name |
References oyCMMui_s::getText, and oyCMMapi4_s::ui.
Referenced by oyFilterNode_s::oyFilterNode_Connect().
| 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
| [in,out] | filter | filter object |
| name_type | type of name |
References oyProfile_s::oyProfile_GetText(), oyProfiles_s::oyProfiles_Count(), oyProfiles_s::oyProfiles_Get(), and oyCMMapi4_s::version.
Referenced by oyFilterNode_s::oyFilterNode_GetText().
| oyFilterCore_s * oyFilterCore_New | ( | const char * | registration, |
| oyOptions_s * | options, | ||
| oyObject_s | object | ||
| ) |
lookup and initialise a new filter object
Function oyFilterCore_New
back end selection:
| [in] | registration | the filter registration pattern |
| [in] | options | the supplied filter options |
| [in] | object | the optional object |
References oyFilterCore_s::oyFilterCore_Release().
Referenced by oyFilterNode_s::oyFilterNode_NewWith().
| int oyFilterCore_Release | ( | oyFilterCore_s ** | obj | ) |
release and zero a filter object
Function oyFilterCore_Release
| [in,out] | obj | filter object |
Referenced by oyFilterCore_s::oyFilterCore_New(), and oyFilterNode_s::oyFilterNode_NewWith().
| OYAPI oyFilterCores_s *OYEXPORT oyFilterCores_Copy | ( | oyFilterCores_s * | obj, |
| oyObject_s | object | ||
| ) |
copy or reference a Filters list
Function: oyFilterCores_Copy
| [in] | obj | struct object |
| object | the optional object |
Referenced by oyFilterCores_s::oyFilterCores_New().
| OYAPI int OYEXPORT oyFilterCores_Count | ( | oyFilterCores_s * | list | ) |
count the elements in a Filters list
Function: oyFilterCores_Count
| [in,out] | list | the list |
| OYAPI oyFilterCore_s *OYEXPORT oyFilterCores_Get | ( | oyFilterCores_s * | list, |
| int | pos | ||
| ) |
get a element of a Filters list
Function: oyFilterCores_Get
| [in,out] | list | the list |
| pos | position |
| OYAPI oyFilterCores_s *OYEXPORT oyFilterCores_MoveIn | ( | oyFilterCores_s * | list, |
| oyFilterCore_s ** | obj, | ||
| int | pos | ||
| ) |
add a element to a Filters list
Function: oyFilterCores_MoveIn
| [in] | list | list |
| [in,out] | obj | list element |
| pos | position |
References oyFilterCores_s::oyFilterCores_New().
| OYAPI oyFilterCores_s *OYEXPORT oyFilterCores_New | ( | oyObject_s | object | ) |
allocate a new Filters list
Function: oyFilterCores_New
References oyFilterCores_s::oyFilterCores_Copy(), oyFilterCores_s::oyFilterCores_Release(), and oyFilterCores_s::release.
Referenced by oyFilterCores_s::oyFilterCores_MoveIn().
| OYAPI int OYEXPORT oyFilterCores_Release | ( | oyFilterCores_s ** | obj | ) |
release and possibly deallocate a Filters list
Function: oyFilterCores_Release
| [in,out] | obj | struct object |
Referenced by oyFilterCores_s::oyFilterCores_New().
| OYAPI int OYEXPORT oyFilterCores_ReleaseAt | ( | oyFilterCores_s * | list, |
| int | pos | ||
| ) |
release a element from a Filters list
Function: oyFilterCores_ReleaseAt
| [in,out] | list | the list |
| pos | position |
| OYAPI oyFilterGraph_s *OYEXPORT oyFilterGraph_Copy | ( | oyFilterGraph_s * | obj, |
| oyObject_s | object | ||
| ) |
copy or reference a FilterGraph object
Function oyFilterGraph_Copy
| [in] | obj | struct object |
| object | the optional object |
References oyFilterGraph_s::oy_.
Referenced by oyFilterGraph_s::oyFilterGraph_New().
| OYAPI oyFilterGraph_s *OYEXPORT oyFilterGraph_FromNode | ( | oyFilterNode_s * | node, |
| int | flags | ||
| ) |
get a graphs adjazency list
Function oyFilterGraph_FromNode
| [in] | node | filter node |
| [in] | flags | - OY_INPUT omit input direction
|
References oyFilterGraph_s::oyFilterGraph_New(), and oyFilterNode_s::oyFilterGraph_SetFromNode().
Referenced by oyFilterSocket_s::oyFilterSocket_SignalToGraph().
| OYAPI oyFilterNode_s *OYEXPORT oyFilterGraph_GetNode | ( | oyFilterGraph_s * | graph, |
| int | pos, | ||
| const char * | registration, | ||
| const char * | mark | ||
| ) |
select a node
Function oyFilterGraph_GetNode
| [in] | graph | a filter graph |
| [in] | pos | the position in a matching list, or -1 to select the first match |
| [in] | registration | criterium to generate the matching list, or zero for no criterium |
| [in] | mark | marking string to use as a selector |
References oyFilterNode_s::core, oyFilterGraph_s::nodes, oyFilterNode_s::oyFilterNode_Release(), oyFilterNodes_s::oyFilterNodes_Count(), oyFilterNodes_s::oyFilterNodes_Get(), oyFilterRegistrationMatch(), oyCMMapi4_s::registration, and oyFilterNode_s::tags.
| OYAPI oyFilterGraph_s *OYEXPORT oyFilterGraph_New | ( | oyObject_s | object | ) |
allocate a new FilterGraph object
Function oyFilterGraph_New
References oyFilterGraph_s::oyFilterGraph_Copy(), oyFilterGraph_s::oyFilterGraph_Release(), and oyFilterGraph_s::release.
Referenced by oyFilterNode_s::oyFilterGraph_FromNode().
| OYAPI int OYEXPORT oyFilterGraph_PrepareContexts | ( | oyFilterGraph_s * | graph, |
| int | flags | ||
| ) |
iterate over a filter graph and possibly prepare contexts
Function oyFilterGraph_PrepareContexts
| [in,out] | graph | a filter graph |
| [in] | flags | 1 - enforce a context preparation |
References oyFilterNode_s::api7_, oyFilterNode_s::backend_data, oyCMMapi7_s::context_type, oyFilterNode_s::core, oyFilterGraph_s::nodes, oyFilterGraph_s::options, oyCMMapi4_s::oyCMMFilterNode_ContextToMem, oyFilterNode_s::oyFilterNode_Release(), oyFilterNodes_s::oyFilterNodes_Count(), and oyFilterNodes_s::oyFilterNodes_Get().
| OYAPI int OYEXPORT oyFilterGraph_Release | ( | oyFilterGraph_s ** | obj | ) |
release and possibly deallocate a FilterGraph object
Function oyFilterGraph_Release
| [in,out] | obj | struct object |
References oyFilterGraph_s::edges, oyFilterGraph_s::nodes, oyFilterGraph_s::options, oyFilterGraph_s::oy_, oyFilterNodes_s::oyFilterNodes_Release(), and oyFilterPlugs_s::oyFilterPlugs_Release().
Referenced by oyFilterGraph_s::oyFilterGraph_New(), and oyFilterSocket_s::oyFilterSocket_SignalToGraph().
| OYAPI int OYEXPORT oyFilterGraph_SetFromNode | ( | oyFilterGraph_s * | graph, |
| oyFilterNode_s * | node, | ||
| const char * | mark, | ||
| int | flags | ||
| ) |
get a graphs adjazency list
Function oyFilterGraph_SetFromNode
| [in] | graph | a graph object |
| [in] | node | filter node |
| [in] | mark | a selection |
| [in] | flags | - OY_INPUT omit input direction
|
References oyFilterGraph_s::edges, oyFilterGraph_s::nodes, oyFilterNodes_s::oyFilterNodes_New(), oyFilterNodes_s::oyFilterNodes_Release(), oyFilterPlugs_s::oyFilterPlugs_New(), and oyFilterPlugs_s::oyFilterPlugs_Release().
Referenced by oyFilterNode_s::oyFilterGraph_FromNode().
| OYAPI char *OYEXPORT oyFilterGraph_ToText | ( | oyFilterGraph_s * | graph, |
| oyFilterNode_s * | input, | ||
| oyFilterNode_s * | output, | ||
| const char * | head_line, | ||
| int | reserved, | ||
| oyAlloc_f | allocateFunc | ||
| ) |
text description of a graph
Function oyFilterGraph_ToText
| [in] | graph | graphy object |
| [in] | input | start node of a oyConversion_s |
| [in] | output | end node and if present a switch to interprete input and output as start and end node of a oyConversion_s |
| [in] | head_line | text for inclusion |
| [in] | reserved | future format selector (dot, xml ...) |
| [in] | allocateFunc | allocation function |
The function is more verbose with the oy_debug variable set.
References oyFilterNode_s::core, oyFilterGraph_s::edges, oyFilterSocket_s::node, oyFilterPlug_s::node, oyFilterGraph_s::nodes, oyFilterNode_s::oyFilterNode_EdgeCount(), oyFilterNode_s::oyFilterNode_GetId(), oyFilterNode_s::oyFilterNode_Release(), oyFilterNodes_s::oyFilterNodes_Count(), oyFilterNodes_s::oyFilterNodes_Get(), oyFilterPlug_s::oyFilterPlug_Release(), oyFilterPlugs_s::oyFilterPlugs_Count(), and oyFilterPlugs_s::oyFilterPlugs_Get().
| int oyFilterNode_Connect | ( | oyFilterNode_s * | input, |
| const char * | socket_nick, | ||
| oyFilterNode_s * | output, | ||
| const char * | plug_nick, | ||
| int | flags | ||
| ) |
connect two nodes by a edge
Function oyFilterNode_Connect
| input | the node to provide a socket |
| socket_nick | name of socket |
| output | the node providing a plug |
| plug_nick | name of plug |
| flags | unused |
References oyFilterNode_s::core, oyFilterSocket_s::data, OY_FILTEREDGE_FREE, oyFilterCore_s::oyFilterCore_GetName(), oyFilterNode_s::oyFilterNode_ConnectorMatch(), oyFilterNode_s::oyFilterNode_EdgeCount(), oyFilterNode_s::oyFilterNode_GetConnectorPos(), oyFilterNode_s::oyFilterNode_GetPlug(), oyFilterNode_s::oyFilterNode_GetSocket(), oyFilterPlug_s::oyFilterPlug_ConnectIntoSocket(), oyFilterPlug_s::oyFilterPlug_Copy(), and oyFilterSocket_s::oyFilterSocket_Copy().
| OYAPI int OYEXPORT oyFilterNode_ConnectorMatch | ( | oyFilterNode_s * | node_first, |
| int | pos_first, | ||
| oyFilterPlug_s * | plug | ||
| ) |
check if a connector match to a FilterNode
Function: oyFilterNode_ConnectorMatch
| node_first | first node |
| pos_first | position of connector from first node |
| plug | second connector |
Check if basic types match.
More detailed checking is done in oyCMMapi5_s.
References oyFilterNode_s::core, oyConnector_s::oyConnector_GetMatch(), oyConnector_s::oyConnector_GetReg(), oyConnector_s::oyConnector_Release(), oyFilterNode_s::oyFilterNode_GetSocket(), oyFilterNode_s::oyFilterNode_ShowConnector(), oyFilterRegistrationMatch(), oyFilterRegistrationToText(), oyFilterSocket_s::pattern, and oyFilterPlug_s::pattern.
Referenced by oyFilterNode_s::oyFilterNode_Connect().
| oyFilterNode_s * oyFilterNode_Copy | ( | oyFilterNode_s * | node, |
| oyObject_s | object | ||
| ) |
copy or reference a filter node object
Function: oyFilterNode_Copy
| [in] | node | node object |
| object | the optional object |
Referenced by oyFilterNode_s::oyFilterNode_GetPlug(), oyFilterNode_s::oyFilterNode_GetSocket(), and oyFilterNode_s::oyFilterNode_New().
| oyFilterNode_s * oyFilterNode_Create | ( | oyFilterCore_s * | filter, |
| oyObject_s | object | ||
| ) |
initialise a new filter node object properly
Function oyFilterNode_Create
| filter | the mandatory filter |
| object | the optional object |
References oyFilterNode_s::api7_, oyFilterNode_s::core, oyFilterCore_s::oyFilterCore_Copy(), oyFilterNode_s::oyFilterNode_EdgeCount(), oyFilterNode_s::oyFilterNode_New(), oyFilterNode_s::oyFilterNode_Release(), oyFilterNode_s::plugs, oyCMMapi7_s::plugs_last_add, oyCMMapi7_s::plugs_n, oyFilterNode_s::plugs_n_, oyFilterNode_s::sockets, oyCMMapi7_s::sockets_last_add, oyCMMapi7_s::sockets_n, and oyFilterNode_s::sockets_n_.
Referenced by oyFilterNode_s::oyFilterNode_NewWith().
| oyStruct_s * oyFilterNode_DataGet | ( | oyFilterNode_s * | node, |
| int | socket_pos | ||
| ) |
get process data from a filter socket
Function oyFilterNode_DataGet
| [in] | node | filter node |
| [in] | socket_pos | position of socket |
References oyFilterSocket_s::data, and oyFilterNode_s::oyFilterNode_GetSocket().
| int oyFilterNode_DataSet | ( | oyFilterNode_s * | node, |
| oyStruct_s * | data, | ||
| int | socket_pos, | ||
| oyObject_s * | object | ||
| ) |
Set process data to a filter socket.
Function oyFilterNode_DataSet
| [in,out] | node | filter node |
| [in] | data | data |
| [in] | socket_pos | position of socket |
| [in] | object | a object to not only set a reference |
References oyFilterSocket_s::data, and oyFilterNode_s::oyFilterNode_GetSocket().
Referenced by oyFilterPlug_s::oyFilterPlug_ResolveImage().
| int oyFilterNode_Disconnect | ( | oyFilterPlug_s * | edge | ) |
disconnect two nodes by a edge
Function oyFilterNode_Disconnect
| edge | plug |
References oyCONNECTOR_EVENT_RELEASED, oyFilterSocket_s::oyFilterSocket_Callback(), and oyFilterSocket_s::oyFilterSocket_Release().
| int oyFilterNode_EdgeCount | ( | oyFilterNode_s * | node, |
| int | is_input, | ||
| int | flags | ||
| ) |
count real and potential connections to a filter node object
Function oyFilterNode_EdgeCount
| node | the node |
| is_input | 1 - plugs; 0 - sockets |
| flags | specify which number to return
|
References oyFilterNode_s::api7_, oyFilterNode_s::core, oyFilterPlugs_s::oyFilterPlugs_Count(), oyFilterNode_s::plugs, oyCMMapi7_s::plugs_last_add, oyCMMapi7_s::plugs_n, oyFilterNode_s::plugs_n_, oyFilterNode_s::sockets, oyCMMapi7_s::sockets_last_add, oyCMMapi7_s::sockets_n, and oyFilterNode_s::sockets_n_.
Referenced by oyFilterGraph_s::oyFilterGraph_ToText(), oyFilterNode_s::oyFilterNode_Connect(), oyFilterNode_s::oyFilterNode_Create(), oyFilterNode_s::oyFilterNode_GetPlug(), oyFilterNode_s::oyFilterNode_GetSocket(), oyFilterNode_s::oyFilterNode_Release(), oyFilterNode_s::oyFilterNode_ShowConnector(), and oyFilterSocket_s::oyFilterSocket_SignalToGraph().
| OYAPI int OYEXPORT oyFilterNode_GetConnectorPos | ( | oyFilterNode_s * | node, |
| int | is_input, | ||
| const char * | pattern, | ||
| int | nth_of_type, | ||
| int | flags | ||
| ) |
get a oyFilterSocket_s or oyFilterPlug_s position from a FilterNode
Function oyFilterNode_GetConnectorPos
| node | filter node |
| is_input | 1 - plugs; 0 - sockets |
| pattern | the pattern to be found in the oyConnector_s::connector_type of the searched plug or socket. Its a Registration string. E.g. a typical data connection: "//" OY_TYPE_STD "/data" See as well oyranos::oyCONNECTOR_e. |
| nth_of_type | the position in the group of the connector type for this filter; Note this parameter makes only sense for the last filter defined connector, as only this one can occure multiple times. |
| flags | specify which status to return
|
References oyFilterNode_s::api7_, oyConnector_s::oyConnector_GetReg(), oyFilterPlugs_s::oyFilterPlugs_Count(), oyFilterRegistrationMatch(), oyCMMapi7_s::plugs, oyFilterNode_s::plugs, oyCMMapi7_s::plugs_last_add, oyCMMapi7_s::plugs_n, oyCMMapi7_s::sockets, oyFilterNode_s::sockets, oyCMMapi7_s::sockets_last_add, and oyCMMapi7_s::sockets_n.
Referenced by oyFilterNode_s::oyFilterNode_Connect(), and oyFilterSocket_s::oyFilterSocket_SignalToGraph().
| OYAPI int OYEXPORT oyFilterNode_GetId | ( | oyFilterNode_s * | node | ) |
get the object Id
Function oyFilterNode_GetId
| [in] | node | filter node |
Referenced by oyFilterGraph_s::oyFilterGraph_ToText().
| OYAPI oyFilterPlug_s *OYEXPORT oyFilterNode_GetPlug | ( | oyFilterNode_s * | node, |
| int | pos | ||
| ) |
get a oyFilterPlug_s of type from a FilterNode
Function oyFilterNode_GetPlug
| node | filter node |
| pos | position of connector from filter |
References oyFilterPlug_s::node, oyFilterNode_s::oyFilterNode_Copy(), oyFilterNode_s::oyFilterNode_EdgeCount(), oyFilterNode_s::oyFilterNode_ShowConnector(), oyFilterPlug_s::oyFilterPlug_New(), oyFilterPlug_s::pattern, and oyFilterNode_s::plugs.
Referenced by oyFilterNode_s::oyFilterNode_Connect(), and oyFilterSocket_s::oyFilterSocket_SignalToGraph().
| OYAPI oyFilterSocket_s *OYEXPORT oyFilterNode_GetSocket | ( | oyFilterNode_s * | node, |
| int | pos | ||
| ) |
get a oyFilterSocket_s of type from a FilterNode
Function oyFilterNode_GetSocket
| node | filter node |
| pos | absolute position of connector |
References oyFilterSocket_s::node, oyFilterNode_s::oyFilterNode_Copy(), oyFilterNode_s::oyFilterNode_EdgeCount(), oyFilterNode_s::oyFilterNode_ShowConnector(), oyFilterSocket_s::oyFilterSocket_New(), oyFilterSocket_s::pattern, and oyFilterNode_s::sockets.
Referenced by oyFilterNode_s::oyFilterNode_Connect(), oyFilterNode_s::oyFilterNode_ConnectorMatch(), oyFilterNode_s::oyFilterNode_DataGet(), and oyFilterNode_s::oyFilterNode_DataSet().
| const char * oyFilterNode_GetText | ( | oyFilterNode_s * | node, |
| oyNAME_e | name_type | ||
| ) |
serialise filter node to text
Function oyFilterNode_GetText
Serialise into:
This function provides a complete description of the context. It might be more adequate to use only a subset for hashing as not all data and options might have an effect to the context data result. The oyCMMapi4_s::oyCMMFilterNode_GetText() function provides a way to let a module decide about what to place into a hash text.
| [in,out] | node | filter node |
| [out] | name_type | the type |
References oyFilterNode_s::core, and oyFilterCore_s::oyFilterCore_GetText().
Referenced by oyFilterNode_s::oyFilterNode_TextToInfo_().
| oyFilterNode_s * oyFilterNode_New | ( | oyObject_s | object | ) |
allocate and initialise a new filter node object
Function: oyFilterNode_New
| object | the optional object |
References oyFilterNode_s::oyFilterNode_Copy(), oyFilterNode_s::oyFilterNode_Release(), and oyFilterNode_s::release.
Referenced by oyFilterNode_s::oyFilterNode_Create().
| oyFilterNode_s * oyFilterNode_NewWith | ( | const char * | registration, |
| oyOptions_s * | options, | ||
| oyObject_s | object | ||
| ) |
initialise a new filter node object properly
Function oyFilterNode_NewWith
| registration | a registration string, |
| options | options for the filter |
| object | the optional object |
References oyFilterCore_s::oyFilterCore_New(), oyFilterCore_s::oyFilterCore_Release(), and oyFilterNode_s::oyFilterNode_Create().
| oyOptions_s * oyFilterNode_OptionsGet | ( | oyFilterNode_s * | node, |
| int | flags | ||
| ) |
get filter options
Function oyFilterNode_OptionsGet
| [in,out] | node | filter object |
| flags | see oyOptions_s::oyOptions_ForFilter() |
Observe exported options for changes and propagate to a existing graph.
References oyFilterNode_s::core.
Referenced by oyFilterNode_s::oyFilterNode_UiGet(), and oyFilterPlug_s::oyFilterPlug_ResolveImage().
| int oyFilterNode_Release | ( | oyFilterNode_s ** | obj | ) |
release and zero a filter node object
Function oyFilterNode_Release
| [in,out] | obj | node object |
References oyFilterNode_s::oyFilterNode_EdgeCount(), oyFilterPlug_s::oyFilterPlug_Release(), oyFilterSocket_s::oyFilterSocket_Release(), oyFilterNode_s::plugs, oyFilterNode_s::sockets, and oyFilterNode_s::tags.
Referenced by oyFilterGraph_s::oyFilterGraph_GetNode(), oyFilterGraph_s::oyFilterGraph_PrepareContexts(), oyFilterGraph_s::oyFilterGraph_ToText(), oyFilterNode_s::oyFilterNode_Create(), oyFilterNode_s::oyFilterNode_New(), oyFilterPlug_s::oyFilterPlug_Release(), oyFilterSocket_s::oyFilterSocket_Release(), and oyFilterSocket_s::oyFilterSocket_SignalToGraph().
| OYAPI oyConnector_s *OYEXPORT oyFilterNode_ShowConnector | ( | oyFilterNode_s * | node, |
| int | as_pos, | ||
| int | is_plug | ||
| ) |
get a connector description from a filter module
Function: oyFilterNode_ShowConnector
The path to obtain a new connector. The filter can say it has more connectors to provide for a certain kind of static connector eigther described in oyCMMapi4_s::inputs or oyCMMapi4_s::outputs.
| [in] | node | the module filter node |
| [in] | as_pos | the according oyConnector_s |
| [in] | is_plug | select from 0 - plugs or 1 - sockets |
References oyFilterNode_s::api7_, oyFilterNode_s::core, oyConnector_s::oyConnector_Copy(), oyFilterNode_s::oyFilterNode_EdgeCount(), oyCMMapi7_s::plugs, oyCMMapi7_s::plugs_n, oyCMMapi7_s::sockets, and oyCMMapi7_s::sockets_n.
Referenced by oyFilterNode_s::oyFilterNode_ConnectorMatch(), oyFilterNode_s::oyFilterNode_GetPlug(), and oyFilterNode_s::oyFilterNode_GetSocket().
| oyPointer oyFilterNode_TextToInfo_ | ( | oyFilterNode_s * | node, |
| size_t * | size, | ||
| oyAlloc_f | allocateFunc | ||
| ) |
serialise filter node to binary
Function oyFilterNode_TextToInfo_
Serialise into a Oyranos specific ICC profile containers "Info" text tag. Not useable for binary contexts.
This function is currently a ICC only thing and yet just for debugging useful.
| [in,out] | node | filter node |
| [out] | size | output size |
| [in] | allocateFunc | memory allocator |
References oyFilterNode_s::oyFilterNode_GetText().
| int oyFilterNode_UiGet | ( | oyFilterNode_s * | node, |
| char ** | ui_text, | ||
| char *** | namespaces, | ||
| oyAlloc_f | allocateFunc | ||
| ) |
get filter options XFORMS
Function oyFilterNode_UiGet
| [in,out] | node | filter object |
| [out] | ui_text | XFORMS fitting to the node Options |
| [out] | namespaces | additional XML namespaces |
| allocateFunc | optional user allocator |
References oyFilterNode_s::core, oyCMMui_s::oyCMMuiGet, oyCMMapi9_s::oyCMMuiGet, oyFILTER_REG_MODE_STRIP_IMPLEMENTATION_ATTR, oyFilterNode_s::oyFilterNode_OptionsGet(), oyFilterRegistrationMatch(), oyFilterRegistrationToText(), oyCMMapi9_s::pattern, oyCMMapi9_s::registration, oyCMMapi9_s::release, and oyCMMapi4_s::ui.
| OYAPI oyFilterNodes_s *OYEXPORT oyFilterNodes_Copy | ( | oyFilterNodes_s * | obj, |
| oyObject_s | object | ||
| ) |
copy or reference a FilterNodes list
Function oyFilterNodes_Copy
| [in] | obj | struct object |
| object | the optional object |
References oyFilterNodes_s::oy_.
Referenced by oyFilterNodes_s::oyFilterNodes_New().
| OYAPI int OYEXPORT oyFilterNodes_Count | ( | oyFilterNodes_s * | list | ) |
count the elements in a FilterNodes list
Function oyFilterNodes_Count
| [in,out] | list | the list |
References oyFilterNodes_s::list_.
Referenced by oyFilterGraph_s::oyFilterGraph_GetNode(), oyFilterGraph_s::oyFilterGraph_PrepareContexts(), oyFilterGraph_s::oyFilterGraph_ToText(), and oyFilterSocket_s::oyFilterSocket_SignalToGraph().
| OYAPI oyFilterNode_s *OYEXPORT oyFilterNodes_Get | ( | oyFilterNodes_s * | list, |
| int | pos | ||
| ) |
get a element of a FilterNodes list
Function oyFilterNodes_Get
| [in,out] | list | the list |
| pos | position |
References oyFilterNodes_s::list_.
Referenced by oyFilterGraph_s::oyFilterGraph_GetNode(), oyFilterGraph_s::oyFilterGraph_PrepareContexts(), oyFilterGraph_s::oyFilterGraph_ToText(), and oyFilterSocket_s::oyFilterSocket_SignalToGraph().
| OYAPI int OYEXPORT oyFilterNodes_MoveIn | ( | oyFilterNodes_s * | list, |
| oyFilterNode_s ** | obj, | ||
| int | pos | ||
| ) |
add a element to a FilterNodes list
Function oyFilterNodes_MoveIn
| [in] | list | list |
| [in,out] | obj | list element |
| pos | position |
References oyFilterNodes_s::list_, oyFilterNodes_s::oyFilterNodes_New(), and oyFilterNodes_s::type_.
| OYAPI oyFilterNodes_s *OYEXPORT oyFilterNodes_New | ( | oyObject_s | object | ) |
allocate a new FilterNodes list
Function oyFilterNodes_New
References oyFilterNodes_s::oyFilterNodes_Copy(), oyFilterNodes_s::oyFilterNodes_Release(), and oyFilterNodes_s::release.
Referenced by oyFilterNode_s::oyFilterGraph_SetFromNode(), and oyFilterNodes_s::oyFilterNodes_MoveIn().
| OYAPI int OYEXPORT oyFilterNodes_Release | ( | oyFilterNodes_s ** | obj | ) |
release and possibly deallocate a FilterNodes list
Function oyFilterNodes_Release
| [in,out] | obj | struct object |
References oyFilterNodes_s::list_, and oyFilterNodes_s::oy_.
Referenced by oyFilterGraph_s::oyFilterGraph_Release(), oyFilterNode_s::oyFilterGraph_SetFromNode(), and oyFilterNodes_s::oyFilterNodes_New().
| OYAPI int OYEXPORT oyFilterNodes_ReleaseAt | ( | oyFilterNodes_s * | list, |
| int | pos | ||
| ) |
release a element from a FilterNodes list
Function oyFilterNodes_ReleaseAt
| [in,out] | list | the list |
| pos | position |
References oyFilterNodes_s::list_, and oyFilterNodes_s::type_.
| OYAPI int OYEXPORT oyFilterPlug_Callback | ( | oyFilterPlug_s * | c, |
| oyCONNECTOR_EVENT_e | e | ||
| ) |
tell about a oyConversion_s event
Function oyFilterPlug_Callback
| [in,out] | c | the connector |
| e | the event type |
References oyFilterPlug_s::node, and oyCONNECTOR_EVENT_RELEASED.
Referenced by oyFilterSocket_s::oyFilterSocket_Release().
| OYAPI int OYEXPORT oyFilterPlug_ConnectIntoSocket | ( | oyFilterPlug_s ** | p, |
| oyFilterSocket_s ** | s | ||
| ) |
connect a oyFilterPlug_s with a oyFilterSocket_s
Function oyFilterPlug_ConnectIntoSocket
References oyCONNECTOR_EVENT_RELEASED, oyFilterPlugs_s::oyFilterPlugs_MoveIn(), oyFilterSocket_s::oyFilterSocket_Callback(), oyFilterSocket_s::oyFilterSocket_Release(), and oyStructTypeToText().
Referenced by oyFilterNode_s::oyFilterNode_Connect().
| OYAPI oyFilterPlug_s *OYEXPORT oyFilterPlug_Copy | ( | oyFilterPlug_s * | obj, |
| oyObject_s | object | ||
| ) |
copy or reference a FilterPlug object
Function oyFilterPlug_Copy
| [in] | obj | struct object |
| object | the optional object |
Referenced by oyFilterNode_s::oyFilterNode_Connect(), and oyFilterPlug_s::oyFilterPlug_New().
| OYAPI oyFilterPlug_s *OYEXPORT oyFilterPlug_New | ( | oyObject_s | object | ) |
allocate a new FilterPlug object
Function oyFilterPlug_New
References oyFilterPlug_s::oyFilterPlug_Copy(), oyFilterPlug_s::oyFilterPlug_Release(), and oyFilterPlug_s::release.
Referenced by oyFilterNode_s::oyFilterNode_GetPlug().
| OYAPI int OYEXPORT oyFilterPlug_Release | ( | oyFilterPlug_s ** | obj | ) |
release and possibly deallocate a FilterPlug object
Function oyFilterPlug_Release
| [in,out] | obj | struct object |
References oyFilterPlug_s::node, oyCONNECTOR_EVENT_RELEASED, oyConnector_s::oyConnector_Release(), oyFilterNode_s::oyFilterNode_Release(), oyFilterSocket_s::oyFilterSocket_Callback(), oyFilterSocket_s::oyFilterSocket_Release(), and oyFilterPlug_s::pattern.
Referenced by oyFilterGraph_s::oyFilterGraph_ToText(), oyFilterNode_s::oyFilterNode_Release(), oyFilterPlug_s::oyFilterPlug_New(), and oyFilterSocket_s::oyFilterSocket_Release().
| OYAPI oyImage_s *OYEXPORT oyFilterPlug_ResolveImage | ( | oyFilterPlug_s * | plug, |
| oyFilterSocket_s * | socket, | ||
| oyPixelAccess_s * | ticket | ||
| ) |
resolve processing data during a filter run
Function oyFilterPlug_ResolveImage
The function is a convenience function to use inside a filters oyCMMFilterPlug_Run_f call. The function makes only sense for non root filters.
| [in,out] | plug | the filters own plug |
| [in,out] | socket | the filters own socket |
| [in,out] | ticket | the actual ticket |
References oyFilterNode_s::api7_, oyFilterSocket_s::data, oyImage_s::height, oyFilterSocket_s::node, oyPixelAccess_s::output_image, oyCMMapi7_s::oyCMMFilterPlug_Run, oyFilterNode_s::oyFilterNode_DataSet(), oyFilterNode_s::oyFilterNode_OptionsGet(), oyImage_s::oyImage_Copy(), oyImage_s::oyImage_Create(), oyImage_s::oyImage_Release(), oyProfile_s::oyProfile_GetChannelsCount(), oyFilterNode_s::plugs, oyCMMapi7_s::plugs_n, oyPixelAccess_s::request_queue, and oyImage_s::width.
| OYAPI oyFilterPlugs_s *OYEXPORT oyFilterPlugs_Copy | ( | oyFilterPlugs_s * | obj, |
| oyObject_s | object | ||
| ) |
copy or reference a FilterPlugs list
Function oyFilterPlugs_Copy
| [in] | obj | struct object |
| object | the optional object |
Referenced by oyFilterPlugs_s::oyFilterPlugs_New().
| OYAPI int OYEXPORT oyFilterPlugs_Count | ( | oyFilterPlugs_s * | list | ) |
count the elements in a FilterPlugs list
Function oyFilterPlugs_Count
| [in,out] | list | the list |
Referenced by oyFilterGraph_s::oyFilterGraph_ToText(), oyFilterNode_s::oyFilterNode_EdgeCount(), oyFilterNode_s::oyFilterNode_GetConnectorPos(), oyFilterSocket_s::oyFilterSocket_Callback(), oyFilterSocket_s::oyFilterSocket_Release(), and oyFilterSocket_s::oyFilterSocket_SignalToGraph().
| OYAPI oyFilterPlug_s *OYEXPORT oyFilterPlugs_Get | ( | oyFilterPlugs_s * | list, |
| int | pos | ||
| ) |
get a element of a FilterPlugs list
Function oyFilterPlugs_Get
| [in,out] | list | the list |
| pos | position |
Referenced by oyFilterGraph_s::oyFilterGraph_ToText(), oyFilterSocket_s::oyFilterSocket_Callback(), oyFilterSocket_s::oyFilterSocket_Release(), and oyFilterSocket_s::oyFilterSocket_SignalToGraph().
| OYAPI oyFilterPlugs_s *OYEXPORT oyFilterPlugs_MoveIn | ( | oyFilterPlugs_s * | list, |
| oyFilterPlug_s ** | obj, | ||
| int | pos | ||
| ) |
add a element to a FilterPlugs list
Function oyFilterPlugs_MoveIn
| [in] | list | list |
| [in,out] | obj | list element |
| pos | position |
References oyFilterPlugs_s::oyFilterPlugs_New().
Referenced by oyFilterPlug_s::oyFilterPlug_ConnectIntoSocket().
| OYAPI oyFilterPlugs_s *OYEXPORT oyFilterPlugs_New | ( | oyObject_s | object | ) |
allocate a new FilterPlugs list
Function oyFilterPlugs_New
References oyFilterPlugs_s::oyFilterPlugs_Copy(), oyFilterPlugs_s::oyFilterPlugs_Release(), and oyFilterPlugs_s::release.
Referenced by oyFilterNode_s::oyFilterGraph_SetFromNode(), and oyFilterPlugs_s::oyFilterPlugs_MoveIn().
| OYAPI int OYEXPORT oyFilterPlugs_Release | ( | oyFilterPlugs_s ** | obj | ) |
release and possibly deallocate a FilterPlugs list
Function oyFilterPlugs_Release
| [in,out] | obj | struct object |
Referenced by oyFilterGraph_s::oyFilterGraph_Release(), oyFilterNode_s::oyFilterGraph_SetFromNode(), and oyFilterPlugs_s::oyFilterPlugs_New().
| OYAPI int OYEXPORT oyFilterPlugs_ReleaseAt | ( | oyFilterPlugs_s * | list, |
| int | pos | ||
| ) |
release a element from a FilterPlugs list
Function oyFilterPlugs_ReleaseAt
| [in,out] | list | the list |
| pos | position |
Referenced by oyFilterSocket_s::oyFilterSocket_Callback().
| int oyFilterRegistrationMatch | ( | const char * | registration, |
| const char * | pattern, | ||
| oyOBJECT_e | api_number | ||
| ) |
analyse registration string and compare with a given pattern
Function oyFilterRegistrationMatch The rules are described in the Module APIs overview. The function is intensively used.
| registration | registration string to analise |
| pattern | pattern or key name to compare with |
| api_number | select object type |
References oyFilterRegistrationToSTextField().
Referenced by oyFilterGraph_s::oyFilterGraph_GetNode(), oyFilterNode_s::oyFilterNode_ConnectorMatch(), oyFilterNode_s::oyFilterNode_GetConnectorPos(), oyFilterNode_s::oyFilterNode_UiGet(), and oyFilterRegistrationMatchKey().
| 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 Module APIs 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.
| registration_a | registration key |
| registration_b | registration key |
| api_number | select object type |
References oyFilterRegistrationMatch(), and oyFilterRegistrationToText().
| char oyFilterRegistrationModify | ( | const char * | registration, |
| oyFILTER_REG_MODE_e | mode, | ||
| char ** | result, | ||
| oyAlloc_f | allocateFunc | ||
| ) |
process a registration string
Function oyFilterRegistrationModify A semantical overview is given in Module APIs.
| [in] | registration | registration key |
| [in] | mode | the processing rule |
| [out] | result | allocated by allocateFunc |
| [in] | allocateFunc | optional user allocator; defaults to oyAllocateFunc_ |
References oyFILTER_REG_MODE_STRIP_IMPLEMENTATION_ATTR.
| char* oyFilterRegistrationToSTextField | ( | const char * | registration, |
| oyFILTER_REG_e | field, | ||
| int * | len | ||
| ) |
analyse registration string
Function oyFilterRegistrationToSTextField
| registration | registration string to analyse | |
| [in] | field | kind of answere in return, only one field |
| [out] | len | text length |
We can not allow attributes in the oyFILTER_TOP_TYPE section, as this would conflict with the Elektra namespace policy.
We can not allow attributes in the oyFILTER_REG_TYPE section, as this would conflict with robust module cache lookup.
oyFILTER_REG_MAX returns the last level which is the key name.
For several oyFILTER_REG bits we compose a new registration string.
Referenced by oyFilterRegistrationMatch(), and oyFilterRegistrationToText().
| char* oyFilterRegistrationToText | ( | const char * | registration, |
| oyFILTER_REG_e | fields, | ||
| oyAlloc_f | allocateFunc | ||
| ) |
analyse registration string
Function oyFilterRegistrationToText
| registration | registration string to analyse | |
| [in] | fields | kind of answere in return |
| [in] | allocateFunc | use this or Oyranos standard allocator |
For several oyFILTER_REG bits we compose a new registration string.
References oyFilterRegistrationToSTextField().
Referenced by oyConfig_s::oyConfig_Compare(), oyDeviceSelectSimiliar(), oyDeviceSetProfile(), oyDeviceToJSON(), oyFilterNode_s::oyFilterNode_ConnectorMatch(), oyFilterNode_s::oyFilterNode_UiGet(), oyFilterRegistrationMatchKey(), and oyProfile_s::oyProfile_DeviceAdd().
| OYAPI int OYEXPORT oyFilterSocket_Callback | ( | oyFilterPlug_s * | c, |
| oyCONNECTOR_EVENT_e | e | ||
| ) |
tell about a oyConversion_s event
Function oyFilterSocket_Callback
| [in,out] | c | the connector |
| e | the event type |
References oyFilterSocket_s::node, oyFilterPlug_s::node, oyCONNECTOR_EVENT_OK, oyCONNECTOR_EVENT_RELEASED, oyFilterPlugs_s::oyFilterPlugs_Count(), oyFilterPlugs_s::oyFilterPlugs_Get(), and oyFilterPlugs_s::oyFilterPlugs_ReleaseAt().
Referenced by oyFilterNode_s::oyFilterNode_Disconnect(), oyFilterPlug_s::oyFilterPlug_ConnectIntoSocket(), oyFilterPlug_s::oyFilterPlug_Release(), and oyFilterSocket_s::oyFilterSocket_SignalToGraph().
| OYAPI oyFilterSocket_s *OYEXPORT oyFilterSocket_Copy | ( | oyFilterSocket_s * | obj, |
| oyObject_s | object | ||
| ) |
copy or reference a FilterSocket object
Function oyFilterSocket_Copy
| [in] | obj | struct object |
| object | the optional object |
Referenced by oyFilterNode_s::oyFilterNode_Connect(), and oyFilterSocket_s::oyFilterSocket_New().
| OYAPI oyFilterSocket_s *OYEXPORT oyFilterSocket_New | ( | oyObject_s | object | ) |
allocate a new FilterSocket object
Function oyFilterSocket_New
References oyFilterSocket_s::oyFilterSocket_Copy(), oyFilterSocket_s::oyFilterSocket_Release(), and oyFilterSocket_s::release.
Referenced by oyFilterNode_s::oyFilterNode_GetSocket().
| OYAPI int OYEXPORT oyFilterSocket_Release | ( | oyFilterSocket_s ** | obj | ) |
release and possibly deallocate a FilterSocket object
Function oyFilterSocket_Release
| [in,out] | obj | struct object |
References oyFilterSocket_s::node, oyCONNECTOR_EVENT_RELEASED, oyConnector_s::oyConnector_Release(), oyFilterNode_s::oyFilterNode_Release(), oyFilterPlug_s::oyFilterPlug_Callback(), oyFilterPlug_s::oyFilterPlug_Release(), oyFilterPlugs_s::oyFilterPlugs_Count(), oyFilterPlugs_s::oyFilterPlugs_Get(), and oyFilterSocket_s::pattern.
Referenced by oyFilterNode_s::oyFilterNode_Disconnect(), oyFilterNode_s::oyFilterNode_Release(), oyFilterPlug_s::oyFilterPlug_ConnectIntoSocket(), oyFilterPlug_s::oyFilterPlug_Release(), and oyFilterSocket_s::oyFilterSocket_New().
| OYAPI int OYEXPORT oyFilterSocket_SignalToGraph | ( | oyFilterSocket_s * | c, |
| oyCONNECTOR_EVENT_e | e | ||
| ) |
send a signal through the graph
Function oyFilterSocket_SignalToGraph
The traversal direction is defined as from the starting node to the output.
< kind of ping
< connection established
< released the connection
< call to update image views
< new data accessors
< can not process image
< can not handle option
< can not handle profile
< can not completely process
References oyFilterSocket_s::node, oyFilterPlug_s::node, oyFilterGraph_s::nodes, OY_FILTEREDGE_CONNECTED, 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, oyFilterNode_s::oyFilterGraph_FromNode(), oyFilterGraph_s::oyFilterGraph_Release(), oyFilterNode_s::oyFilterNode_EdgeCount(), oyFilterNode_s::oyFilterNode_GetConnectorPos(), oyFilterNode_s::oyFilterNode_GetPlug(), oyFilterNode_s::oyFilterNode_Release(), oyFilterNodes_s::oyFilterNodes_Count(), oyFilterNodes_s::oyFilterNodes_Get(), oyFilterPlugs_s::oyFilterPlugs_Count(), oyFilterPlugs_s::oyFilterPlugs_Get(), and oyFilterSocket_s::oyFilterSocket_Callback().
| int oyTextIccDictMatch | ( | const char * | text, |
| const char * | pattern | ||
| ) |
analyse a string and compare with a given pattern
Function oyTextIccDictMatch The rules are described in the ICC meta tag dict type at http://www.color.org ICCSpecRevision_25-02-10_dictType.pdf
| text | value string |
| pattern | pattern to compare with |
Referenced by oyConfig_s::oyConfig_Compare().
| oyStruct_Copy_f oyConfDomain_s_::copy |
copy function
| oyObject_s oyConfDomain_s_::oy_ |
base object
| oyStruct_Release_f oyConfDomain_s_::release |
release function
| oyOBJECT_e oyConfDomain_s_::type_ |
struct type oyOBJECT_CONF_DOMAIN_S