|
Oyranos
0.9.7
Oyranos is a full featured Color Management System
|
Channel selection module for Oyranos. More...
#include "oyCMMapi4_s.h"#include "oyCMMapi7_s.h"#include "oyCMMui_s.h"#include "oyConnectorImaging_s.h"#include "oyRectangle_s.h"#include "oyRectangle_s_.h"#include "oyranos_cmm.h"#include "oyranos_cmm_oyra.h"#include "oyranos_db.h"#include "oyranos_helper.h"#include "oyranos_i18n.h"#include "oyranos_string.h"#include <math.h>#include <stdarg.h>#include <stdlib.h>#include <stdio.h>#include <string.h>#include <locale.h>Functions | |
| int | oyraFilter_ImageChannelRun (oyFilterPlug_s *requestor_plug, oyPixelAccess_s *ticket) |
| implement oyCMMFilter_GetNext_f() More... | |
| oyCMMapi_s * | oyraApi7ImageChannelCreate (void) |
| oyra oyCMMapi7_s implementation More... | |
| oyCMMapi_s * | oyraApi4ImageChannelCreate (void) |
| oyra oyCMMapi4_s implementation More... | |
Channel selection module for Oyranos.
Oyranos is an open source Color Management System
| oyCMMapi_s* oyraApi4ImageChannelCreate | ( | void | ) |
oyra oyCMMapi4_s implementation
oyra_api4 a filter providing a channel image filter
References oyCMMapi4_s::oyCMMapi4_Create(), oyCMMui_s::oyCMMui_Create(), oyraCMMInit(), oyraCMMMessageFuncSet(), OYRANOS_VERSION_A, OYRANOS_VERSION_B, and OYRANOS_VERSION_C.
| oyCMMapi_s* oyraApi7ImageChannelCreate | ( | void | ) |
oyra oyCMMapi7_s implementation
oyra_api7 a filter providing a channel image filter
References OY_TYPE_STD, oyCMMapi7_s::oyCMMapi7_Create(), oyCONNECTOR_IMAGING_CAP_CAN_INTERWOVEN, oyCONNECTOR_IMAGING_CAP_CAN_NONPREMULTIPLIED_ALPHA, oyCONNECTOR_IMAGING_CAP_CAN_PREMULTIPLIED_ALPHA, oyCONNECTOR_IMAGING_CAP_ID, oyCONNECTOR_IMAGING_CAP_MAX_CHANNELS_COUNT, oyCONNECTOR_IMAGING_CAP_MAX_COLOR_COUNT, oyCONNECTOR_IMAGING_CAP_MAX_COLOR_OFFSET, oyCONNECTOR_IMAGING_CAP_MIN_CHANNELS_COUNT, oyCONNECTOR_IMAGING_CAP_MIN_COLOR_COUNT, oyConnectorImaging_s::oyConnectorImaging_New(), oyConnectorImaging_s::oyConnectorImaging_SetCapability(), oyConnectorImaging_s::oyConnectorImaging_SetDataTypes(), oyConnectorImaging_s::oyConnectorImaging_SetIsPlug(), oyConnectorImaging_s::oyConnectorImaging_SetMatch(), oyConnectorImaging_s::oyConnectorImaging_SetReg(), oyConnectorImaging_s::oyConnectorImaging_SetTexts(), oyDOUBLE, oyFLOAT, oyHALF, oyraCMMInit(), oyraCMMMessageFuncSet(), oyraFilter_ImageChannelRun(), OYRANOS_VERSION_A, OYRANOS_VERSION_B, OYRANOS_VERSION_C, oyUINT16, oyUINT32, and oyUINT8.
| int oyraFilter_ImageChannelRun | ( | oyFilterPlug_s * | requestor_plug, |
| oyPixelAccess_s * | ticket | ||
| ) |
implement oyCMMFilter_GetNext_f()
oyraFilter_ImageChannelRun The "channel" option is build of channel fields. It contains the output section in one text string each in squared brackets: "[a|b|c]". Each channel is separated by pipe sign '|' and can contain the channel symbol or a fill value. -1 indicates the module shall select a appropriate fill value. The counting of channels starts from a and ends with z, covering the range of ASCII a-z. A special case is a "" no op signature. Use it for pass through.
With the above syntax it is possible to add or remove channels or simply switch channels of.
switch the second and thierd channels of: ["a", -1, -1]
swap first with thierd channel: ["c", "b". "a"]
duplicate the second channel and skip the first and possible the c and more source channels: ["b", "b"]
Note: changing the channel count might require a new ICC profile for the output image. Please setup the graph accordingly.
References oy_debug, OY_TYPE_STD, oyArray2d_s::oyArray2d_GetData(), oyArray2d_s::oyArray2d_GetHeight(), oyArray2d_s::oyArray2d_GetWidth(), oyArray2d_s::oyArray2d_Release(), oyDataTypeGetSize(), oyDOUBLE, oyFilterNode_s::oyFilterNode_GetOptions(), oyFilterNode_s::oyFilterNode_GetPlug(), oyFilterNode_s::oyFilterNode_GetPlugNode(), oyFilterNode_s::oyFilterNode_Release(), oyFilterNode_s::oyFilterNode_Run(), oyFilterPlug_s::oyFilterPlug_GetSocket(), oyFilterPlug_s::oyFilterPlug_Release(), oyFilterSocket_s::oyFilterSocket_GetData(), oyFilterSocket_s::oyFilterSocket_GetNode(), oyFilterSocket_s::oyFilterSocket_Release(), oyFLOAT, oyHALF, oyImage_s::oyImage_GetPixelLayout(), oyImage_s::oyImage_GetWidth(), oyImage_s::oyImage_Release(), oyLAYOUT, oyOBJECT_RECTANGLE_S, oyOptions_s::oyOptions_FindString(), oyOptions_s::oyOptions_Release(), oyPixelAccess_s::oyPixelAccess_GetArray(), oyPixelAccess_s::oyPixelAccess_GetArrayROI(), oyPixelAccess_s::oyPixelAccess_GetOutputImage(), oyPixelAccess_s::oyPixelAccess_Show(), oyRectangle_s::oyRectangle_Scale(), oyRectangle_s::oyRectangle_SetByRectangle(), oyToChannels_m, oyToDataType_m, oyUINT16, oyUINT32, and oyUINT8.
Referenced by oyraApi7ImageChannelCreate().