| Customize Help
| Save Settings

MbufChildColor



Function Map
Synopsis
Allocate a color-band child data buffer within a color parent buffer.
Syntax
MIL_ID MbufChildColor(
MIL_ID ParentBufId, //in
MIL_INT Band, //in
MIL_ID *BufIdPtr //out
)
Description

This function allocates a band or multi-band child data buffer within the specified, previously allocated, parent data buffer. It selects one or all of the bands of the parent data buffer and allocates the band or bands as a child of that buffer. The parent buffer can be a single band or multiband buffer, and the child buffer can encompass the entire parent buffer.

The child buffer is not allocated in its own memory space; it remains part of the parent buffer. Therefore, any modification to the child buffer affects the parent and vice versa. Note, a parent buffer can have several child buffers.

The child buffer is considered a data buffer in its own right. It can be any band or all bands of its parent buffer, and can be used in the same circumstances as its parent buffer. A child buffer inherits its type and attributes from the parent buffer.

If a child buffer is allocated within a parent buffer which contains an ROI, set using MbufSetRegion(), the child buffer inherits a copy of the parent buffer's ROI. You can also set an ROI in a child buffer directly. Note that the ROI of the child buffer is only accessible using the child buffer's MIL identifier.

If the child buffer is allocated using a parent buffer that is associated with a calibration context, the child buffer will obtain a copy of the calibration information.

When this buffer is no longer required, release it, using MbufFree().

Note that this function reference has not been updated for a MIL system added during a MIL update. Refer to the MIL system's release note to see if there is complementary information.
Parameters
This function is not supported on the selected boards.
Parameters
ParentBufId

Specifies the identifier of the parent buffer.

The parent buffer cannot have an M_COMPRESS attribute.

Band

Specifies the band or bands of the parent data buffer from which to allocate the child data buffer. The specified band or bands should be valid in the parent buffer.

The Band parameter can be set to one of the values below.

function map For specifying the color band
Click to summarizeValue Description
Click to summarize M_ALL_BANDS

Specifies all the bands of the parent buffer. It can be RGB, HSL, HSV, YUV, or a 1-band buffer depending on the color space of the parent buffer.

It is useful to create a new full size buffer (a buffer with the same size as the parent, even if the parent is another child buffer) when you have more than one ROI or fixture and you want to add or disable them to the source buffer.

Note that you should typically select this value if the parent buffer is a monochrome buffer.

(summarize)
Click to summarize M_BLUE

Specifies the blue color band (for RGB parent buffers).

Click to summarize M_GREEN

Specifies the green color band (for RGB parent buffers).

Click to summarize M_HUE

Specifies the hue band (for HSL and HSV parent buffers).

Click to summarize M_LUMINANCE

Specifies the luminance band (for HSL parent buffers).

Click to summarize M_RED

Specifies the red color band (for RGB parent buffers).

Click to summarize M_SATURATION

Specifies the saturation band (for HSL and HSV parent buffers).

Click to summarize M_U

Specifies the U band (for YUV parent buffers).

Click to summarize M_V

Specifies the V band (for YUV and HSV parent buffers).

Click to summarize M_Y

Specifies the Y band (for YUV parent buffers).

Click to summarize 0 <= Value < #bands

Specifies the index of the band to use.

The relationship between index value and band for RGB, HSL, HSV, and YUV buffers is the following:

0

Corresponds to the red band (for RGB parent buffers), the hue band (for HSL and HSV parent buffers), and the Y band (for YUV parent buffers).

1

Corresponds to the green band (for RGB parent buffers), the saturation band (for HSL and HSV parent buffers), and the U band (for YUV parent buffers).

2

Corresponds to the blue band (for RGB parent buffers), the luminance band (for HSL parent buffers), and the V band (for YUV and HSV parent buffers).

Note that this value must be set to zero if the parent buffer is a monochrome.

(summarize)
BufIdPtr

Specifies the address of the variable in which the child buffer identifier is to be written. Since the MbufChildColor() function also returns the child buffer identifier, you can set this parameter to M_NULL.

Return value
The returned value is the child buffer identifier, if successful. If allocation fails, M_NULL is returned.
Compilation information
Header Include mil.h.
Library Use mil.lib.
DLL Requires mil.dll.
ALL BANDS BLUE GREEN HUE LUMINANCE RED SATURATION U V Y