AAFA Developer Support

Public Member Functions
IAAFRGBADescriptor Interface Reference

IAAFRGBADescriptor is DEPRECATED. More...

List of all members.

Public Member Functions

HRESULT SetPixelLayout ([in] aafUInt32 numberElements,[in] aafRGBAComponent_t *PixelLayoutArray)
 Sets the layout and structure of the components in a single pixel.
HRESULT CountPixelLayoutElements ([out] aafUInt32 *pResult)
 This function returns the number of components in a pixel.
HRESULT GetPixelLayout ([in] aafUInt32 numberElements,[out, size_is(numberElements)] aafRGBAComponent_t *PixelLayoutArray)
 Gets the layout and structure of the components in a single pixel.
HRESULT SetPalette ([in] aafUInt32 numberElements,[in, size_is(numberElements)] aafUInt8 *pPalette)
 Sets the palette property.
HRESULT GetPalette ([in] aafUInt32 numberRecords,[out, size_is(numberRecords)] aafUInt8 *pPalette)
 Sets the palette property.
HRESULT GetPaletteSize ([out] aafUInt32 *pNumberBytes)
 Get the number of bytes in the VideoLineMap property array.
HRESULT CountPaletteLayoutElements ([out] aafUInt32 *pResult)
 This function returns the number of components in a pixel.
HRESULT SetPaletteLayout ([in] aafUInt32 numberElements,[in] aafRGBAComponent_t *PaletteLayoutArray)
 Sets the layout and structure of the components in a single pixel.
HRESULT GetPaletteLayout ([in] aafUInt32 numberElements,[out, size_is(numberElements)] aafRGBAComponent_t *PaletteLayoutArray)
 The layout array is an Array of 8 aafRGBAComponent_t.

Detailed Description

IAAFRGBADescriptor is DEPRECATED.

Please use IAAFRGBADescriptor2.

The IAAFRGBADescriptor interface is implemented by objects which describe video content data formatted using RGBA formatting.

In addition to the parameters inherited from AAFDigitalImageDescriptor, this interface adds Pixel layout (order of R, B, G, alpha) PixelStructure (sizes of the various components), Palette, Palette Layout, and Palette Structure.

In addition to the specific error results listed for each method, all methods in this interface may also return one of the following values:

AAFRESULT_NOMEMORY

AAFRESULT_NOT_INITIALIZED

Objects that implement IAAFRGBADescriptor also implement the following interfaces:

Definition at line 22825 of file AAF.idl.


Member Function Documentation

HRESULT IAAFRGBADescriptor::CountPaletteLayoutElements ( [out] aafUInt32 *  pResult)

This function returns the number of components in a pixel.

Succeeds if all of the following are true:

  • this object has already been initialized.
  • the pResult pointer is valid.

If this method fails no state is changed.

This method will return the following codes. If more than one of the listed errors is in effect, it will return the first one encountered in the order given below:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

  • Initialize() has already been called on this object.

AAFRESULT_NULL_PARAM

  • pResult is null.
Parameters:
pResult[out] Number of components
HRESULT IAAFRGBADescriptor::CountPixelLayoutElements ( [out] aafUInt32 *  pResult)

This function returns the number of components in a pixel.

Succeeds if all of the following are true:

  • this object has already been initialized.
  • the pResult pointer is valid.

If this method fails no state is changed.

This method will return the following codes. If more than one of the listed errors is in effect, it will return the first one encountered in the order given below:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

  • Initialize() has already been called on this object.

AAFRESULT_NULL_PARAM

  • pResult is null.
Parameters:
pResult[out] Number of components
HRESULT IAAFRGBADescriptor::GetPalette ( [in] aafUInt32  numberRecords,
[out, size_is(numberRecords)] aafUInt8 *  pPalette 
)

Sets the palette property.

The palette must be in the form specified by the palette layout and palette structure parameters. The values are written to the array specified by pPalette, which is of size numberElements. The required size may be found by calling GetPaletteSize().

Succeeds if all of the following are true:

  • pPalette is a valid pointer.
  • numberElements indicates the array is large enough to hold the data.

If this method fails, pPalette will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NULL_PARAM

  • pNumberElements is NULL.

AAFRESULT_SMALLBUF

  • numberElements indicates that the array is too small to hold the data.
Parameters:
numberRecords[in] The number of bytes in the array
pPalette[out, size_is(numberRecords)] Array to hold the palette information
HRESULT IAAFRGBADescriptor::GetPaletteLayout ( [in] aafUInt32  numberElements,
[out, size_is(numberElements)] aafRGBAComponent_t *  PaletteLayoutArray 
)

The layout array is an Array of 8 aafRGBAComponent_t.

The 'Code' field of the struct is from the set:

  • kAAFCompNone

kAAFCompAlpha

  • kAAFCompBlue
  • kAAFCompFill
  • kAAFCompGreen
  • kAAFCompPalette
  • kAAFCompRed

The 'Size' field of the struct is the component size in bits.

If you Get more entries than were set, the extra entries will be padded with kAAFCompNone and a size of zero.

If this method fails, PaletteLayoutArray will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NULL_PARAM

  • pNumberElements or PaletteLayoutArray is NULL.

AAFRESULT_SMALLBUF

  • numberElements indicates that the array is too small to hold the data.
Parameters:
numberElements[in] The number of elements in each array
PaletteLayoutArray[out, size_is(numberElements)] Array to hold 8 aafRGBAComponent_t indicating component order and size.
HRESULT IAAFRGBADescriptor::GetPaletteSize ( [out] aafUInt32 *  pNumberBytes)

Get the number of bytes in the VideoLineMap property array.

Succeeds if all of the following are true:

  • pNumberBytes is a valid pointer

If this method fails, *pNumberBytes will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NULL_PARAM

  • pNumberBytes is NULL.
Parameters:
pNumberBytes[out] The number of bytes in the array
HRESULT IAAFRGBADescriptor::GetPixelLayout ( [in] aafUInt32  numberElements,
[out, size_is(numberElements)] aafRGBAComponent_t *  PixelLayoutArray 
)

Gets the layout and structure of the components in a single pixel.

The layout array is an Array of 8 aafRGBAComponent_t. The 'Code' field of the struct is from the set:

  • kAAFCompNone

kAAFCompAlpha

  • kAAFCompBlue
  • kAAFCompFill
  • kAAFCompGreen
  • kAAFCompPalette
  • kAAFCompRed

The 'Size' field of the struct is the component size in bits.

If you Get more entries than were set, the extra entries will be padded with kAAFCompNone and a size of zero.

If this method fails, PixelLayoutArray will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NULL_PARAM

  • pNumberElements or PixelLayoutArray or PixelStructureArray is NULL.

AAFRESULT_SMALLBUF

  • numberElements indicates that the array is too small to hold the data.
Parameters:
numberElements[in] The number of elements in the array
PixelLayoutArray[out, size_is(numberElements)] Array to hold up to 8 aafRGBAComponent_t indicating component order and size.
HRESULT IAAFRGBADescriptor::SetPalette ( [in] aafUInt32  numberElements,
[in, size_is(numberElements)] aafUInt8 *  pPalette 
)

Sets the palette property.

The palette must be in the form specified by the palette layout and palette structure parameters.

Succeeds if all of the following are true:

  • pPalette is a valid pointer

If this method fails, the palette property will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NULL_PARAM

  • pPalette is NULL.
Parameters:
numberElements[in] The number of bytes in the array
pPalette[in, size_is(numberElements)] Array to hold the palette information
HRESULT IAAFRGBADescriptor::SetPaletteLayout ( [in] aafUInt32  numberElements,
[in] aafRGBAComponent_t *  PaletteLayoutArray 
)

Sets the layout and structure of the components in a single pixel.

The layout array is an Array of 8 aafRGBAComponent_t. The 'Code' field of the struct is from the set:

  • kAAFCompNone

kAAFCompAlpha

  • kAAFCompBlue
  • kAAFCompFill
  • kAAFCompGreen
  • kAAFCompPalette
  • kAAFCompRed

The 'Size' field of the struct is the component size in bits.

If you set less than 8 entries, the remaining entries will be padded with kAAFCompNone and a size of zero. If this method fails the PaletteLayout property will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)
Parameters:
numberElements[in] The number of elements in the array
PaletteLayoutArray[in] Array of up to 8 bytes indicating component size, matching layout, and terminated by a zero byte.
HRESULT IAAFRGBADescriptor::SetPixelLayout ( [in] aafUInt32  numberElements,
[in] aafRGBAComponent_t *  PixelLayoutArray 
)

Sets the layout and structure of the components in a single pixel.

The layout array is an Array of 8 aafRGBAComponent_t. The 'Code' field of the struct is from the set:

  • kAAFCompNone

kAAFCompAlpha

  • kAAFCompBlue
  • kAAFCompFill
  • kAAFCompGreen
  • kAAFCompPalette
  • kAAFCompRed

The 'Size' field of the struct is the component size in bits.

If you set less than 8 entries, the remaining entries will be padded with kAAFCompNone and a size of zero. If this method fails the PixelLayout property will not be changed.

This method will return the following codes:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)
Parameters:
numberElements[in] The number of elements in each array
PixelLayoutArray[in] Array of up to 8 aafRGBAComponent_t indicating component order and size.

Generated on Wed Jul 4 2012 22:13:30 for AAF COM API by doxygen 1.7.4