![]() |
Oyranos Colour Management System API |
a filter chain or graph to manipulate a image More...
#include <oyranos_alpha.h>

Public Member Functions | |
| oyConversion_s * | oyConversion_New (oyObject_s object) |
| allocate and initialise a new oyConversion_s object | |
| oyConversion_s * | oyConversion_CreateBasicPixels (oyImage_s *input, oyImage_s *output, oyOptions_s *options, oyObject_s object) |
| allocate initialise a basic oyConversion_s object | |
| oyConversion_s * | oyConversion_Copy (oyConversion_s *conversion, oyObject_s object) |
| copy or reference a oyConversion_s object | |
| int | oyConversion_Release (oyConversion_s **obj) |
| release and zero a conversion object | |
| int | oyConversion_Set (oyConversion_s *conversion, oyFilterNode_s *input, oyFilterNode_s *output) |
| set input and output of a conversion graph | |
| int | oyConversion_RunPixels (oyConversion_s *conversion, oyPixelAccess_s *pixel_access) |
| iterate over a conversion graph | |
| int | oyPixelAccess_ChangeRectangle (oyPixelAccess_s *pixel_access, double start_x, double start_y, oyRectangle_s *output_rectangle) |
| change the ticket for a conversion graph | |
| int | oyConversion_GetOnePixel (oyConversion_s *conversion, double x, double y, oyPixelAccess_s *pixel_access) |
| compute one pixel at the given position | |
| oyImage_s * | oyConversion_GetImage (oyConversion_s *conversion, uint32_t flags) |
| get a image copy at the desired position | |
| oyFilterNode_s * | oyConversion_GetNode (oyConversion_s *conversion, uint32_t flags) |
| get the filter node copy | |
| oyFilterGraph_s * | oyConversion_GetGraph (oyConversion_s *conversion) |
| get the filter graph from a conversion context | |
| char * | oyConversion_ToText (oyConversion_s *conversion, const char *head_line, int reserved, oyAlloc_f allocateFunc) |
| text description of a conversion graph | |
| int | oyConversion_Correct (oyConversion_s *conversion, const char *registration, uint32_t flags, oyOptions_s *options) |
| check for correctly adhering to policies | |
Data Fields | |
| oyStruct_Copy_f | copy |
| oyStruct_Release_f | release |
| oyFilterNode_s * | input |
a filter chain or graph to manipulate a image
Order of filters matters. The processing direction is a bit like raytracing as nodes request their parent.
The graph is allowed to be a directed graph without cycles.
oyConversion_s shall provide access to the graph and help in processing and managing nodes.
Creating Graphs:
Most simple is to use the oyConversion_CreateBasicPixles() function to create a profile to profile and possible image buffer to image buffer linear graph.
The other possibility is to create a non linear graph. The input member can be accessed for this directly.
While it would be possible to have several open ends in a graph, there are two endpoints considered as special. The input member prepresents the top most required node to be provided in a oyConversion_s graph. The input node is accessible for user manipulation. The other one is the out_ member. It is the closing node in the graph. It will be set by Oyranos during closing the graph, e.g. in oyConversion_LinOutputAdd().
Using Graphs:
To obtain the data the oyConversion_GetNextPixel() and oyConversion_GetOnePixel() functions are available.
| oyStruct_Copy_f oyConversion_s::copy |
copy function
| oyFilterNode_s* oyConversion_s::input |
the input image filter; Most users will start logically with this pice and chain their filters to get the final result.
Referenced by oyConversion_Correct(), oyConversion_GetGraph(), oyConversion_GetImage(), oyConversion_GetNode(), oyConversion_Release(), oyConversion_RunPixels(), oyConversion_Set(), and oyConversion_ToText().
| oyStruct_Release_f oyConversion_s::release |
release function
Referenced by oyConversion_New().