
Advanced Authoring Format
Application Programming Interface Reference
Version 1.0 Preliminary Draft
NOTICE
Product Specifications are subject to change without notice. The software described in this document is furnished under a license agreement, and may be used or copied only in accordance with the terms of the license agreement.
THE ADVANCED AUTHORING FORMAT APPLICATION PROGRAMMING INTERFACE REFERENCE IS PROVIDED "AS IS" WITH NO WARRANTIES WHATSOEVER, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED TO ANY WARRANTY OF MERCHANTABILITY, NONINFRINGEMENT, FITNESS FOR ANY PARTICULAR OR INTENDED PURPOSE, OR ANY WARRANTY OTHERWISE ARISING OUT OF ANY PROPOSAL, SPECIFICATION, OR SAMPLE. IN NO EVENT WILL THE PROMOTERS OR ANY OF THEM BE LIABLE FOR ANY DAMAGES, INCLUDING BUT NOT LIMITED TO LOSS OF PROFITS, LOSS OF USE, INCIDENTAL, CONSEQUENTIAL, INDIRECT, OR SPECIAL DAMAGES ARISING OUT OF USE OF THIS ADVANCED AUTHORING FORMAT APPLICATION PROGRAMMING INTERFACE REFERENCE WHETHER OR NOT SUCH PARTY HAD ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES.
Copyright © 1999 Avid Technology, Inc. All Rights Reserved
Trademarks
Avid is a registered trademark of Avid Technology, Inc.
All other trademarks contained herein are the property of their respective owners.
AAF Types Reference
AAF Plugin Interfaces for Codecs
AAF Plugin Types Reference
IAAFAIFCDescriptor Interface
IAAFCDCIDescriptor Interface
IAAFClassDef Interface
IAAFCodecDef Interface
IAAFCommentMarker Interface
IAAFComponent Interface
IAAFCompositionMob Interface
IAAFConstantValue Interface
IAAFContainerDef Interface
IAAFControlPoint Interface
IAAFDataDef Interface
IAAFDefObject Interface
IAAFDictionary Interface
IAAFDigitalImageDescriptor Interface
IAAFEdgecode Interface
IAAFEndian Interface
IAAFEssenceAccess Interface
IAAFEssenceData Interface
IAAFEssenceDescriptor Interface
IAAFEssenceFormat Interface
IAAFEssenceGroup Interface
IAAFEssenceMultiAccess Interface
IAAFEssenceRawAccess Interface
IAAFEvent Interface
IAAFEventMobSlot Interface
IAAFFile Interface
IAAFFileDescriptor Interface
IAAFFiller Interface
IAAFFilmDescriptor Interface
IAAFFindSourceInfo Interface
IAAFGPITrigger Interface
IAAFHeader Interface
IAAFHTMLClip Interface
IAAFIdentification Interface
IAAFIntraFrameMarker Interface
IAAFLocator Interface
IAAFMasterMob Interface
IAAFMob Interface
IAAFMobSlot Interface
IAAFNestedScope Interface
IAAFNetworkLocator Interface
IAAFObject Interface
IAAFOperationDef Interface
IAAFOperationGroup Interface
IAAFParameter Interface
IAAFParameterDef Interface
IAAFPluggableCode Interface
IAAFPluginDescriptor Interface
IAAFPluginManager Interface
IAAFProperty Interface
IAAFPropertyDef Interface
IAAFPropertyValue Interface
IAAFPulldown Interface
IAAFScopeReference Interface
IAAFSearchSource Interface
IAAFSegment Interface
IAAFSelector Interface
IAAFSequence Interface
IAAFSourceClip Interface
IAAFSourceMob Interface
IAAFSourceReference Interface
IAAFTaggedValue Interface
IAAFTapeDescriptor Interface
IAAFTextLocator Interface
IAAFTIFFDescriptor Interface
IAAFTimecode Interface
IAAFTimecodeStream Interface
IAAFTimelineMobSlot Interface
IAAFTransition Interface
IAAFTypeDef Interface
IAAFTypeDefEnum Interface
IAAFTypeDefExtEnum Interface
IAAFTypeDefFixedArray Interface
IAAFTypeDefInt Interface
IAAFTypeDefObjectRef Interface
IAAFTypeDefRecord Interface
IAAFTypeDefRename Interface
IAAFTypeDefSet Interface
IAAFTypeDefStream Interface
IAAFTypeDefString Interface
IAAFTypeDefVariableArray Interface
IAAFVaryingValue Interface
IAAFWAVEDescriptor Interface
IEnumAAFClassDefs Interface
IEnumAAFCodecDefs Interface
IEnumAAFCodecFlavours Interface
IEnumAAFComponents Interface
IEnumAAFContainerDefs Interface
IEnumAAFControlPoints Interface
IEnumAAFDataDefs Interface
IEnumAAFEssenceData Interface
IEnumAAFIdentifications Interface
IEnumAAFInterpolationDefs Interface
IEnumAAFLoadedPlugins Interface
IEnumAAFLocators Interface
IEnumAAFMobs Interface
IEnumAAFMobSlots Interface
IEnumAAFOperationDefs Interface
IEnumAAFParameterDefs Interface
IEnumAAFPluginDescriptors Interface
IEnumAAFPluginLocators Interface
IEnumAAFProperties Interface
IEnumAAFPropertyDefs Interface
IEnumAAFPropertyValues Interface
IEnumAAFSegments Interface
IEnumAAFTaggedValues Interface
IEnumAAFTypeDefs Interface
IAAFAIFCDescriptor Interface
In addition to the methods inherited from IUnknown, the IAAFAIFCDescriptor interface exposes the following methods.
GetSummary
GetSummaryBufferSize
Initialize
SetSummary
The AAFAIFCDescriptor object implements the IAAFAIFCDescriptor interface and also implements the following:
IAAFAIFCDescriptor::GetSummary
The GetSummary method getSummary() Gets a copy of the AIFC file information without the media.
Syntax
HRESULT GetSummary(
aafUInt32 size,
aafDataValue_t pSummary
);
Parameters
[in] size
Specifies size.
[out] pSummary
If the method succeeds, specifies a pointer to a summary object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetSummary() Gets a copy of the AIFC file information without
the media. Succeeds if all of the following are true: - pSummary
is a valid pointer. - The size of the buffer is large enough
to hold the AIFC file information. If this method fails pSummary
will not be changed. This method will return the following codes:
AAFRESULT_SUCCESS - succeeded. AAFRESULT_NULL_PARAM - pSummary
arg is NULL. AAFRESULT_SMALLBUF - The buffer is too small to
hold the AIFC file information.
size: Preallocated buffer to hold the AIFC file information.
See Also
IAAFAIFCDescriptor::GetSummaryBufferSize
The GetSummaryBufferSize method getSummaryBufferSize() Returns the size of the buffer required for the GetSummary() method.
Syntax
HRESULT GetSummaryBufferSize(
aafUInt32* pSize
);
Parameters
[out] pSize
If the method succeeds, specifies a pointer to a size object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetSummaryBufferSize() Returns the size of the buffer required
for the GetSummary() method. The value is placed into the location
specified by pSize. Succeeds if all of the following are true:
- the pSize pointer is valid. If this method fails nothing will
be written to *pSize. This method will return the following codes:
AAFRESULT_SUCCESS - succeeded. AAFRESULT_NULL_PARAM - pSize arg
is NULL.
pSize: required buffer size.
See Also
IAAFAIFCDescriptor::Initialize
The Initialize method .
Syntax
HRESULT Initialize();
Parameters
This method takes no parameters.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFAIFCDescriptor ************************
The IAAFAIFCDescriptor interface is implemented by objects which
describe audio content data formatted according to the AIFC compressed
Audio File Format. 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 - insufficient
system memory is available to perform the operation. 5-11d2-bf9d-00104bc9156d
Initialize() Initializes a newly allocated, empty IAAFAIFCDescriptor-supporting
object. This method must be called after allocation, and before
any other method can be called. Succeeds if: - Initialize() has
not yet been called on this object. 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_ALREADY_INITIALIZED - Initialize()
has already been called on this object.
See Also
IAAFAIFCDescriptor::SetSummary
The SetSummary method setSummary() Sets the AIFC file information.
Syntax
HRESULT SetSummary(
aafUInt32 size,
aafDataValue_t pSummary
);
Parameters
[in] size
Specifies size.
[in] pSummary
Pointer to a summary object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetSummary() Sets the AIFC file information. Succeeds if all
of the following are true: - pSummary is a valid pointer If this
method fails the summary property will not be changed. This method
will return the following codes: AAFRESULT_SUCCESS - succeeded.
AAFRESULT_NULL_PARAM - pSummary arg is NULL.
size: buffer containing value.
See Also
IAAFCDCIDescriptor Interface
In addition to the methods inherited from IUnknown, the IAAFCDCIDescriptor interface exposes the following methods.
GetBlackReferenceLevel
GetColorRange
GetColorSiting
GetComponentWidth
GetHorizontalSubsampling
GetPaddingBits
GetWhiteReferenceLevel
Initialize
SetBlackReferenceLevel
SetColorRange
SetColorSiting
SetComponentWidth
SetHorizontalSubsampling
SetPaddingBits
SetWhiteReferenceLevel
The AAFCDCIDescriptor object implements the IAAFCDCIDescriptor interface and also implements the following:
IAAFCDCIDescriptor::GetBlackReferenceLevel
The GetBlackReferenceLevel method getBlackReferenceLevel() Gets the BlackReferenceLevel property.
Syntax
HRESULT GetBlackReferenceLevel(
aafUInt32* pBlackReferenceLevel
);
Parameters
[out] pBlackReferenceLevel
If the method succeeds, specifies a pointer to a black reference level object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetBlackReferenceLevel() Gets the BlackReferenceLevel property.
Specifies the digital luminance component value associated with
black. For CCIR-601/2, the value is 16 for 8-bit video and 64
for 10-bit video. For YUV, the value is 0. These are typical
values; other values will not be disallowed by the reference
implementation. The same value is used in CDCI and RGBA when
standard colorspace conversion is used. Succeeds if all of the
following are true: - pBlackReferenceLevel is a valid pointer.
If this method fails, *pBlackReferenceLevel will not be changed.
This method will return the following codes: AAFRESULT_SUCCESS
- succeeded. (This is the only code indicating success.) AAFRESULT_NOT_INITIALIZED
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pBlackReferenceLevel arg is NULL.
pBlackReferenceLevel: Address to store the integer value..
See Also
IAAFCDCIDescriptor::GetColorRange
The GetColorRange method getColorRange() Gets the ColorRange property.
Syntax
HRESULT GetColorRange(
aafUInt32* pColorRange
);
Parameters
[out] pColorRange
If the method succeeds, specifies a pointer to a color range object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetColorRange() Gets the ColorRange property. Specifies the range
of allowable digital chrominance component values. Chrominance
values are unsigned and the range is centered on 128 for 8-bit
video and 512 for 10-bit video. This value is used for both chrominance
components. For CCIR-601/2, the range is 225 for 8-bit video
and 897 for 10-bit video. For YUV, the range is 255 for 8-bit
video and 1023 for 10-bit video. These are typical values; other
values will not be disallowed by the reference implementation.
Succeeds if all of the following are true: - pColorRange is a
valid pointer. If this method fails, *pColorRange will not be
changed. This method will return the following codes: AAFRESULT_SUCCESS
- succeeded. (This is the only code indicating success.) AAFRESULT_NOT_INITIALIZED
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pColorRange arg is NULL.
pColorRange: Address to store the integer value..
See Also
IAAFCDCIDescriptor::GetColorSiting
The GetColorSiting method getColorSiting() Gets the ColorSiting property.
Syntax
HRESULT GetColorSiting(
aafColorSiting_t* pColorSiting
);
Parameters
[out] pColorSiting
If the method succeeds, specifies a pointer to a color siting object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetColorSiting() Gets the ColorSiting property. Specifies how
to compute subsampled chrominance values. Valid values are:
kCoSiting - To calculate subsampled pixels, take the preceding's
pixels color value, discard the other color values and cosite
the color with the first luminance value. kAveraging - To calculate
subsampled pixels, take the average of the two adjacent pixels'
color values and site the color in the center of the luminance
pixels. kThreeTap - To calculate subsampled pixels, take 25 percent
of the the previous pixel's color value, 50 percent of the first
value and 25 percent of the second value. For the first value
in a row, use 75 percent of that value since there is no previous
value. The kThreeTap value is only meaningful when the HorizontalSubsampling
propert has a value of 2. Succeeds if all of the following are
true: - pColorSiting is a valid pointer. If this method fails,
*pColorSiting will not be changed. This method will return the
following codes: AAFRESULT_SUCCESS - succeeded. (This is the
only code indicating success.) AAFRESULT_NOT_INITIALIZED - This
object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pColorSiting arg is NULL.
pColorSiting: Address to store the color siting value..
See Also
IAAFCDCIDescriptor::GetComponentWidth
The GetComponentWidth method getComponentWidth() Gets the ComponentWidth property.
Syntax
HRESULT GetComponentWidth(
aafInt32* pComponentWidth
);
Parameters
[out] pComponentWidth
If the method succeeds, specifies a pointer to a component width object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetComponentWidth() Gets the ComponentWidth property. Specifies
the number of bits used to store each component. Typical values
can be 8, 10, 12, 14, or 16, but others are permitted by the
reference implementation. Each component in a sample is packed
contiguously; the sample is filled with the number of bits specified
by the optional PaddingBits property. If the PaddingBits property
is omitted, samples are packed contiguously. Succeeds if all
of the following are true: - pComponentWidth is a valid pointer.
If this method fails, *pComponentWidth will not be changed.
This method will return the following codes: AAFRESULT_SUCCESS
- succeeded. (This is the only code indicating success.) AAFRESULT_NOT_INITIALIZED
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pComponentWidth arg is NULL.
pComponentWidth: Address to store the number of bits..
See Also
IAAFCDCIDescriptor::GetHorizontalSubsampling
The GetHorizontalSubsampling method getHorizontalSubsampling() Gets the HorizontalSubsampling property.
Syntax
HRESULT GetHorizontalSubsampling(
aafUInt32* pHorizontalSubsampling
);
Parameters
[out] pHorizontalSubsampling
If the method succeeds, specifies a pointer to a horizontal subsampling object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetHorizontalSubsampling() Gets the HorizontalSubsampling property.
Specifies the ratio of luminance sampling to chrominance sampling
in the horizontal direction. For 4:2:2 video, the value is 2,
which means that there are twice as many luminance values as
there are color-difference values. Another typical value is 1;
however other values are permitted by the reference implementation.
Succeeds if all of the following are true: - pHorizontalSubsampling
is a valid pointer. If this method fails, *pHorizontalSubsampling
will not be changed. This method will return the following codes:
AAFRESULT_SUCCESS - succeeded. (This is the only code indicating
success.) AAFRESULT_NOT_INITIALIZED - This object has not yet
had Initialize() called on it. AAFRESULT_NULL_PARAM - pHorizontalSubsampling
arg is NULL.
pHorizontalSubsampling: Address to store the integer value..
See Also
IAAFCDCIDescriptor::GetPaddingBits
The GetPaddingBits method getPaddingBits() Gets the PaddingBits property.
Syntax
HRESULT GetPaddingBits(
aafInt16* pPaddingBits
);
Parameters
[out] pPaddingBits
If the method succeeds, specifies a pointer to a padding bits object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetPaddingBits() Gets the PaddingBits property. Specifies the
number of bits padded to each pixel. Succeeds if all of the following
are true: - pPaddingBits is a valid pointer. If this method fails,
pPaddingBits will not be changed. This method will return the
following codes: AAFRESULT_SUCCESS - succeeded. (This is the
only code indicating success.) AAFRESULT_NOT_INITIALIZED - This
object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pPaddingBits arg is NULL.
pPaddingBits: Address to store the number of bits..
See Also
IAAFCDCIDescriptor::GetWhiteReferenceLevel
The GetWhiteReferenceLevel method getWhiteReferenceLevel() Gets the WhiteReferenceLevel property.
Syntax
HRESULT GetWhiteReferenceLevel(
aafUInt32* pWhiteReferenceLevel
);
Parameters
[out] pWhiteReferenceLevel
If the method succeeds, specifies a pointer to a white reference level object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetWhiteReferenceLevel() Gets the WhiteReferenceLevel property.
Specifies the digital luminance component component value associated
with white. For CCIR-601/2, the value is 235 for 8-bit video
and 940 for 10-bit video. For YUV, the value is 255 for 8-bit
video and 1023 for 10-bit video. These are typical values; other
values will not be disallowed by the reference implementation.
Succeeds if all of the following are true: - pWhiteReferenceLevel
is a valid pointer. If this method fails, *pWhiteReferenceLevel
will not be changed. This method will return the following codes:
AAFRESULT_SUCCESS - succeeded. (This is the only code indicating
success.) AAFRESULT_NOT_INITIALIZED - This object has not yet
had Initialize() called on it. AAFRESULT_NULL_PARAM - pWhiteReferenceLevel
arg is NULL.
pWhiteReferenceLevel: Address to store the integer value..
See Also
IAAFCDCIDescriptor::Initialize
The Initialize method .
Syntax
HRESULT Initialize();
Parameters
This method takes no parameters.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFCDCIDescriptor ************************
The IAAFCDCIDescriptor interface is implemented by objects which
describe video essence formatted with one luminance component
and two color-difference components. 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
- insufficient system memory is available to perform the operation.
A-11d2-813C-006097310172 Initialize() Initializes a newly allocated,
empty IAAFCDCIDescriptor-supporting object. This method must
be called after allocation, and before any other method can be
called. Succeeds if: - Initialize() has not yet been called on
this object. 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_ALREADY_INITIALIZED
- Initialize() has already been called on this object.
See Also
IAAFCDCIDescriptor::SetBlackReferenceLevel
The SetBlackReferenceLevel method setBlackReferenceLevel() Sets the BlackReferenceLevel property.
Syntax
HRESULT SetBlackReferenceLevel(
aafUInt32 BlackReferenceLevel
);
Parameters
[in] BlackReferenceLevel
Specifies black reference level.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetBlackReferenceLevel() Sets the BlackReferenceLevel property.
Specifies the digital luminance component component value associated
with black. For CCIR-601/2, the value is 16 for 8-bit video and
64 for 10-bit video. For YUV, the value is 0. These are typical
values; other values will not be disallowed by the reference
implementation. The same value is used in CDCI and RGBA when
standard colorspace conversion is used. This property is optional.
The default value is 0. If this method fails, the BlackReferenceLevel
property will not be changed. This method will return the following
codes: AAFRESULT_SUCCESS - succeeded. (This is the only code
indicating success.) AAFRESULT_NOT_INITIALIZED - This object
has not yet had Initialize() called on it.
BlackReferenceLevel: Integer value..
See Also
IAAFCDCIDescriptor::SetColorRange
The SetColorRange method setColorRange() Sets the ColorRange property.
Syntax
HRESULT SetColorRange(
aafUInt32 ColorRange
);
Parameters
[in] ColorRange
Specifies color range.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetColorRange() Sets the ColorRange property. Specifies the range
of allowable digital chrominance component values. Chrominance
values are unsigned and the range is centered on 128 for 8-bit
video and 512 for 10-bit video. This value is used for both chrominance
components. For CCIR-601/2, the range is 225 for 8-bit video
and 897 for 10-bit video. For YUV, the range is 255 for 8-bit
video and 1023 for 10-bit video. These are typical values; other
values will not be disallowed by the reference implementation.
This property is optional. The default value is the maximum unsigned
integer value for component size. Succeeds if all of the following
are true: If this method fails, the ColorRange property will
not be changed. This method will return the following codes:
AAFRESULT_SUCCESS - succeeded. (This is the only code indicating
success.) AAFRESULT_NOT_INITIALIZED - This object has not yet
had Initialize() called on it.
ColorRange: Integer value..
See Also
IAAFCDCIDescriptor::SetColorSiting
The SetColorSiting method setColorSiting() Sets the ColorSiting property.
Syntax
HRESULT SetColorSiting(
aafColorSiting_t ColorSiting
);
Parameters
[in] ColorSiting
Specifies color siting.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetColorSiting() Sets the ColorSiting property. Specifies how
to compute subsampled chrominance values. Valid values are:
kCoSiting - To calculate subsampled pixels, take the preceding's
pixels color value, discard the other color values and cosite
the color with the first luminance value. kAveraging - To calculate
subsampled pixels, take the average of the two adjacent pixels'
color values and site the color in the center of the luminance
pixels. kThreeTap - To calculate subsampled pixels, take 25 percent
of the the previous pixel's color value, 50 percent of the first
value and 25 percent of the second value. For the first value
in a row, use 75 percent of that value since there is no previous
value. The kThreeTap value is only meaningful when the HorizontalSubsampling
propert has a value of 2. This property is optional. The default
value is kCoSiting. Succeeds if all of the following are true:
- ColorSiting is valid If this method fails, the ColorSiting
property will not be changed. This method will return the following
codes: AAFRESULT_SUCCESS - succeeded. (This is the only code
indicating success.) AAFRESULT_NOT_INITIALIZED - This object
has not yet had Initialize() called on it.
ColorSiting: Color siting value..
See Also
IAAFCDCIDescriptor::SetComponentWidth
The SetComponentWidth method setComponentWidth() Sets the ComponentWidth property.
Syntax
HRESULT SetComponentWidth(
aafInt32 ComponentWidth
);
Parameters
[in] ComponentWidth
Specifies component width.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetComponentWidth() Sets the ComponentWidth property. Specifies
the number of bits used to store each component. Typical values
can be 8, 10, 12, 14, or 16, but others are permitted by the
reference implementation. Each component in a sample is packed
contiguously; the sample is filled with the number of bits specified
by the optional PaddingBits property. If the PaddingBits property
is omitted, samples are packed contiguously. If this method fails,
the ComponentWidth property will not be changed. This method
will return the following codes: AAFRESULT_SUCCESS - succeeded.
(This is the only code indicating success.) AAFRESULT_NOT_INITIALIZED
- This object has not yet had Initialize() called on it.
ComponentWidth: Number of bits..
See Also
IAAFCDCIDescriptor::SetHorizontalSubsampling
The SetHorizontalSubsampling method setHorizontalSubsampling() Sets the HorizontalSubsampling property.
Syntax
HRESULT SetHorizontalSubsampling(
aafUInt32 HorizontalSubsampling
);
Parameters
[in] HorizontalSubsampling
Specifies horizontal subsampling.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetHorizontalSubsampling() Sets the HorizontalSubsampling property.
Specifies the ratio of luminance sampling to chrominance sampling
in the horizontal direction. For 4:2:2 video, the value is 2,
which means that there are twice as many luminance values as
there are color-difference values. Another typical value is 1;
however other values are permitted by the reference implementation.
If this method fails, the HorizontalSubsampling property will
not be changed. This method will return the following codes:
AAFRESULT_SUCCESS - succeeded. (This is the only code indicating
success.) AAFRESULT_NOT_INITIALIZED - This object has not yet
had Initialize() called on it.
HorizontalSubsampling: Integer value..
See Also
IAAFCDCIDescriptor::SetPaddingBits
The SetPaddingBits method setPaddingBits() Sets the PaddingBits property.
Syntax
HRESULT SetPaddingBits(
aafInt16 PaddingBits
);
Parameters
[in] PaddingBits
Specifies padding bits.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetPaddingBits() Sets the PaddingBits property. Specifies the
number of bits padded to each pixel. This property is optional.
The default value is 0. If this method fails, the PaddingBits
property will not be changed. This method will return the following
codes: AAFRESULT_SUCCESS - succeeded. (This is the only code
indicating success.) AAFRESULT_NOT_INITIALIZED - This object
has not yet had Initialize() called on it.
PaddingBits: Number of bits..
See Also
IAAFCDCIDescriptor::SetWhiteReferenceLevel
The SetWhiteReferenceLevel method setWhiteReferenceLevel() Sets the WhiteReferenceLevel property.
Syntax
HRESULT SetWhiteReferenceLevel(
aafUInt32 WhiteReferenceLevel
);
Parameters
[in] WhiteReferenceLevel
Specifies white reference level.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetWhiteReferenceLevel() Sets the WhiteReferenceLevel property.
Specifies the digital luminance component component value associated
with white. For CCIR-601/2, the value is 235 for 8-bit video
and 940 for 10-bit video. For YUV, the value is 255 for 8-bit
video and 1023 for 10-bit video. These are typical values; other
values will not be disallowed by the reference implementation.
This property is optional. The default value is the maximum unsigned
interger value for component size. If this method fails, the
WhiteReferenceLevel property will not be changed. This method
will return the following codes: AAFRESULT_SUCCESS - succeeded.
(This is the only code indicating success.) AAFRESULT_NOT_INITIALIZED
- This object has not yet had Initialize() called on it.
WhiteReferenceLevel: Integer value..
See Also
IAAFClassDef Interface
In addition to the methods inherited from IUnknown, the IAAFClassDef interface exposes the following methods.
AppendNewPropertyDef
AppendOptionalPropertyDef
CountPropertyDefs
GetName
GetNameBufLen
GetParent
GetPropertyDefs
Initialize
LookupPropertyDef
The AAFClassDef object implements the IAAFClassDef interface and also implements the following:
IAAFClassDef::AppendNewPropertyDef
The AppendNewPropertyDef method appendNewPropertyDef() Creates a new property definition and appends it to this class definition.
Syntax
HRESULT AppendNewPropertyDef(
aafUID_t* pID,
aafCharacter* pName,
IAAFTypeDef* pTypeDef,
aafBool isOptional,
IAAFPropertyDef** ppPropDef
);
Parameters
[in] pID
Pointer to an ID object.
[in] pName
Pointer to a name object.
[in] pTypeDef
Pointer to a type def object.
[in] isOptional
Specifies isoptional.
[out] ppPropDef
If the method succeeds, specifies a pointer to a variable containing a pointer to a prop def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
AppendNewPropertyDef() Creates a new property definition and
appends it to this class definition. If ppPropDef is non-NULL,
will return the new property definition in ppPropDef. Note that
it is illegal to add mandatory properties to an existing (registered)
class. This method will allow adding either optional or mandatory
properties to a class, but they must be added to a class which
has not yet been registered in the dictionary. If this class
has already been registered, it is possible to add optional properties,
but not through this method. Optional properties added to an
existing (registered) class may be added through the AppendOpionalPropertyDef()
method. Succeeds if: - The pID pointer is valid. - The pName
pointer is valid. - The pTypeDef pointer is valid. - This class
has not already been registered in the dictionary. - The auid
specified by pID has not already been registered. 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_NULL_PARAM -
pID, pName, or pTypeDef arg is NULL. AAFRESULT_OBJECT_ALREADY_ATTACHED
- This class has already been registered. AAFRESULT_BAD_PARAM
- The given ID has already been registered.
pID: name of the new property.
pName: type of the new property.
pTypeDef: true if new property is to be optional.
isOptional: return pointer to newly created property def.
See Also
IAAFClassDef::AppendOptionalPropertyDef
The AppendOptionalPropertyDef method appendOptionalPropertyDef() Creates a new property definition and appends it to this class definition.
Syntax
HRESULT AppendOptionalPropertyDef(
aafUID_t* pID,
aafCharacter* pName,
IAAFTypeDef* pTypeDef,
IAAFPropertyDef** ppPropDef
);
Parameters
[in] pID
Pointer to an ID object.
[in] pName
Pointer to a name object.
[in] pTypeDef
Pointer to a type def object.
[out] ppPropDef
If the method succeeds, specifies a pointer to a variable containing a pointer to a prop def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
AppendOptionalPropertyDef() Creates a new property definition
and appends it to this class definition. If ppPropDef is non-NULL,
will return the new property definition in ppPropDef. Note that
it is illegal to add mandatory properties to an already existing
(registered) class. It is assumed that this property is being
added to a class which is already registered. If so, it must
be optional and this method will declare it so. If it is wished
to add a mandatory property, that may be done through the AppendNewPropertyDef()
method, but that must be called on a class which is not yet registered.
Succeeds if: - The pID pointer is valid. - The pName pointer
is valid. - The pTypeDef pointer is valid. - The auid specified
by pID has not already been registered. 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_NULL_PARAM - pID, pName,
or pTypeDef arg is NULL. AAFRESULT_BAD_PARAM - The given ID has
already been registered.
pID: name of the new property.
pName: type of the new property.
pTypeDef: return pointer to newly created property def.
See Also
IAAFClassDef::CountPropertyDefs
The CountPropertyDefs method countPropertyDefs() Returns number of property definitions in this class.
Syntax
HRESULT CountPropertyDefs(
aafUInt32* pCount
);
Parameters
[out] pCount
If the method succeeds, specifies a pointer to a count object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
CountPropertyDefs() Returns number of property definitions in
this class. Succeeds if: - The pCount pointer is valid. 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_NULL_PARAM -
pCount arg is NULL.
pCount: number of properties contained in this class definition.
See Also
IAAFClassDef::GetName
The GetName method getName() Gets Accesses a human-readable name for the class.
Syntax
HRESULT GetName(
wchar_t* pName,
aafUInt32 bufSize
);
Parameters
[out] pName
If the method succeeds, specifies a pointer to a name object.
[in] bufSize
Specifies bufsize.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetName() Gets Accesses a human-readable name for the class.
This name is not meant to be a way for programs to refer to the
class, as it is of undetermined length, and is not checked to
guarantee uniqueness. Writes the Name property, with a trailing
null character, into the pName buffer. The buffer is allocated
by the caller. The size of the buffer is given by bufSize. If
the Name property has not yet been set, a zero-length string
will be written (that is, only the trailing null character).
Caller may call GetNameBufLen() to determine the required buffer
size. If this method fails nothing will be written to *pName.
Succeeds if: - The pName pointer is valid. - bufSize indicates
that the buffer is large enough to hold Name. 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_NULL_PARAM - pName arg
is NULL. AAFRESULT_SMALL_BUF - bufSize indicates that the allocated
buffer is not large enough to hold Name.
pName: size of *pName buffer in bytes.
See Also
IAAFClassDef::GetNameBufLen
The GetNameBufLen method getNameBufLen() Returns size of buffer (in bytes) required for GetName().
Syntax
HRESULT GetNameBufLen(
aafUInt32* pBufSize
);
Parameters
[out] pBufSize
If the method succeeds, specifies a pointer to a buf size object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetNameBufLen() Returns size of buffer (in bytes) required for
GetName(). Succeeds if: - The pBufSize pointer is valid. 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_NULL_PARAM -
pBufSize arg is NULL.
pBufSize: size of required buffer, in bytes.
See Also
IAAFClassDef::GetParent
The GetParent method getParent() Gets the Parent class for this object.
Syntax
HRESULT GetParent(
IAAFClassDef** pClassDef
);
Parameters
[out] pClassDef
If the method succeeds, specifies a pointer to a class def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetParent() Gets the Parent class for this object. If there is
no parent, returns the NULL AUID. The only class which has no
parent will be AAFObject. Succeeds if: - The pClassDef pointer
is valid. 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_NULL_PARAM
- pClassDef arg is NULL.
pClassDef: parent class definition.
See Also
IAAFClassDef::GetPropertyDefs
The GetPropertyDefs method getPropertyDefs() Returns an enumerator over all of the aaf property definitions attached to the current class.
Syntax
HRESULT GetPropertyDefs(
IEnumAAFPropertyDefs** ppEnum
);
Parameters
[out] ppEnum
If the method succeeds, specifies a pointer to a variable containing a pointer to an enum object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetPropertyDefs() Returns an enumerator over all of the aaf property
definitions attached to the current class. Succeeds if: - The
ppEnum pointer is valid. 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_NULL_PARAM - ppEnum arg is NULL.
ppEnum: Property Definition enumeration.
See Also
IAAFClassDef::Initialize
The Initialize method ************************ Interface IAAFClassDef ************************ This interface is used with an object representing an AAF class definition.
Syntax
HRESULT Initialize(
aafUID_t* pID,
IAAFClassDef* pParentClass,
aafCharacter* pClassName
);
Parameters
[in] pID
Pointer to an ID object.
[in] pParentClass
Pointer to a parent class object.
[in] pClassName
Pointer to a class name object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFClassDef ************************
This interface is used with an object representing an AAF class
definition. The operations on a class definition include managing
the position of the class within the class heirarchy, and accessing
property definitions associated with the class. 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 - insufficient system memory is available
to perform the operation. * Stub only. Implementation not yet
added * 1-11d2-bf96-006097116212 Initialize() Initializes this
class definition object to inherit from the given parent class.
Succeeds if: - The pID pointer is valid. - The pParentClass pointer
is valid. - The pTypeName pointer is valid. 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_NULL_PARAM - pID, pParentClass,
or pTypeName arg is NULL.
pID: existing class from which this one inherits.
pParentClass: friendly name of this type definition.
See Also
IAAFClassDef::LookupPropertyDef
The LookupPropertyDef method lookupPropertyDef() Looks up the property definition corresponding to the named auid and returns a pointer to that property definition in ppPropDef.
Syntax
HRESULT LookupPropertyDef(
aafUID_t* pPropID,
IAAFPropertyDef** ppPropDef
);
Parameters
[in] pPropID
Pointer to a propID object.
[out] ppPropDef
If the method succeeds, specifies a pointer to a variable containing a pointer to a prop def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
LookupPropertyDef() Looks up the property definition corresponding
to the named auid and returns a pointer to that property definition
in ppPropDef. Succeeds if: - The pPropID pointer is valid. -
The ppPropDef pointer is valid. - the auid specified by pID has
been registered as a property definition for this class definition.
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_NULL_PARAM
- Either pPropID or ppPropDef arg is NULL. AAFRESULT_BAD_PARAM
- The given ID has not been registered as a property definition.
pPropID: resulting property definition.
See Also
IAAFCodecDef Interface
In addition to the methods inherited from IUnknown, the IAAFCodecDef interface exposes the following methods.
AppendEssenceKind
AreThereFlavours
EnumCodecFlavours
GetFileDescriptorClass
IsEssenceKindSupported
SetFileDescriptorClass
The AAFCodecDef object implements the IAAFCodecDef interface and also implements the following:
IAAFCodecDef::AppendEssenceKind
The AppendEssenceKind method appendEssenceKind() Appends the given essence kind to those supported by the codec.
Syntax
HRESULT AppendEssenceKind(
aafUID_t* pEssenceKind
);
Parameters
[in] pEssenceKind
Pointer to an essence kind object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
AppendEssenceKind() Appends the given essence kind to those supported
by the codec. This is dependant upon the format, not an incomplete
implementation. Succeeds if all of the following are true: -
the pMob pointer is valid. - the given mob is not already part
of this collection. If this method fails no state will be 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_NULL_PARAM
- pEssenceKind is null. AAFRESULT_DUPLICATE_ESSENCE_KIND - the
given essenceKind is already contained.
pEssenceKind: The essence kind.
See Also
IAAFCodecDef::AreThereFlavours
The AreThereFlavours method areThereFlavours() Find out whether its worth iterating over flavours flavours are used when a single codec can support multiple formats.
Syntax
HRESULT AreThereFlavours(
aafBool* pResult
);
Parameters
[out] pResult
If the method succeeds, specifies a pointer to a result object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
AreThereFlavours() Find out whether its worth iterating over
flavours flavours are used when a single codec can support multiple
formats. An Example would be a codec which would accept a "resolution
ID" for a particular manufacturer and set up all of the parameters.
When a new resolution ID is released, then a new codec plugin
would give users the ability to use the new resolutions without
upgrading the application. Succeeds if all of the following are
true: - the pResult pointer is valid. If this method fails no
state will be 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_NULL_PARAM - if Result is null.
pResult: True if there are flavours of this codec.
See Also
IAAFCodecDef::EnumCodecFlavours
The EnumCodecFlavours method enumCodecFlavours() Places an enumerator for codec flavour into the *ppEnum argument.
Syntax
HRESULT EnumCodecFlavours(
IEnumAAFCodecFlavours** ppEnum
);
Parameters
[out] ppEnum
If the method succeeds, specifies a pointer to a variable containing a pointer to an enum object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
EnumCodecFlavours() Places an enumerator for codec flavour into
the *ppEnum argument. The returned enumerator is AddRef()ed before
it is returned. Flavours are used when a single codec can support
multiple formats. An Example would be a codec which would accept
a "resolution ID" for a particular manufacturer and set up all
of the parameters. When a new resolution ID is released, then
a new codec plugin would give users the ability to use the new
resolutions without upgrading the application. Succeeds if all
of the following are true: - the ppEnum pointer is valid. If
this method fails nothing will be written to *ppEnum. 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_NULL_PARAM -
if ppEnum is null.
ppEnum: Codec flavour Enumeration.
See Also
IAAFCodecDef::GetFileDescriptorClass
The GetFileDescriptorClass method getFileDescriptorClass() Places the file descriptor class object associated with this codec into the *ppClass argument.
Syntax
HRESULT GetFileDescriptorClass(
IAAFClassDef** ppClass
);
Parameters
[out] ppClass
If the method succeeds, specifies a pointer to a variable containing a pointer to a class object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetFileDescriptorClass() Places the file descriptor class object
associated with this codec into the *ppClass argument. If none
exists yet, NULL is placed into the *ppClass argument. The returned
class object, if it exists, is AddRef()ed before it is returned.
Succeeds if all of the following are true: - the ppClass pointer
is valid. - A valid file descriptor class exists. 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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- ppClass is null.
ppClass: Returned file descriptor class object.
See Also
IAAFCodecDef::IsEssenceKindSupported
The IsEssenceKindSupported method .
Syntax
HRESULT IsEssenceKindSupported(
aafUID_t* pEssenceKind,
aafBool* pIsSupported
);
Parameters
[in] pEssenceKind
Pointer to an essence kind object.
[out] pIsSupported
If the method succeeds, specifies a pointer to an is supported object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFCodecDef ************************
This interface is used with an object representing a particular
kind of essence codec, which may be implemented by one or more
AAFPluginDescriptors. 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 - insufficient
system memory is available to perform the operation. 2-11d2-809C-006008143E6F
IsEssenceKindSupported() Returns AAFTrue if the given codec support
transfers to essence of the given essence kind. Succeeds if all
of the following are true: - the pEssenceKind pointer is valid.
- the pIsSupported pointer is valid. If this method fails nothing
will be written to *pIsSupported. 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_NULL_PARAM - either pEssenceKind
or pIsSupported is null.
pEssenceKind: Is this type supported.
See Also
IAAFCodecDef::SetFileDescriptorClass
The SetFileDescriptorClass method setFileDescriptorClass() Sets the file descriptor class associated with this codec to be the given one.
Syntax
HRESULT SetFileDescriptorClass(
IAAFClassDef* pClass
);
Parameters
[in] pClass
Pointer to a class object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetFileDescriptorClass() Sets the file descriptor class associated
with this codec to be the given one. Succeeds if all of the following
are true: - the pClass pointer is valid. 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 - This object
has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pClass is null.
pClass: File descriptor class object.
See Also
IAAFCommentMarker Interface
In addition to the methods inherited from IUnknown, the IAAFCommentMarker interface exposes the following methods.
GetAnnotation
SetAnnotation
The AAFCommentMarker object implements the IAAFCommentMarker interface and also implements the following:
IAAFCommentMarker::GetAnnotation
The GetAnnotation method ************************ Interface IAAFCommentMarker ************************ The IAAFCommentMarker interface is implemented by objects which represent a user comment associated with a point in time.
Syntax
HRESULT GetAnnotation(
IAAFSourceReference** ppResult
);
Parameters
[out] ppResult
If the method succeeds, specifies a pointer to a variable containing a pointer to a result object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFCommentMarker ************************
The IAAFCommentMarker interface is implemented by objects which
represent a user comment associated with a point in time. A CommentMarker
may have a SourceReference that specifies a text or audio annotation.
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 - insufficient system memory is available
to perform the operation. AAFRESULT_NOT_INITIALIZED - This object
has not yet had Initialize() called on it through this object's
primary interface. Note that IAAFMobSlot is a primary interface
for an abstract class, so it is not appropriate for the Initialize()
method to exist in this interface. The Initialize() method is
available through the concrete object's primary interface. 5-11d2-bf9d-00104bc9156d
GetAnnotation() This method will get the annotation for this
comment marker and place an interface for it into the **ppResult
argument. Succeeds if all of the following are true: - the pResult
pointer is valid. If this method fails nothing will be written
to *pResult. 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_NULL_PARAM
- pResult arg is NULL.
ppResult: Annotation property value.
See Also
IAAFCommentMarker::SetAnnotation
The SetAnnotation method setAnnotation() This method will set the Annotation for this comment marker.
Syntax
HRESULT SetAnnotation(
IAAFSourceReference* pAnnotation
);
Parameters
[in] pAnnotation
Pointer to an annotation object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetAnnotation() This method will set the Annotation for this
comment marker. If this method fails no state will be 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.)
pAnnotation: Annotation property value.
See Also
IAAFComponent Interface
In addition to the methods inherited from IUnknown, the IAAFComponent interface exposes the following methods.
GetDataDef
GetLength
SetDataDef
SetLength
IAAFComponent::GetDataDef
The GetDataDef method getDataDef() returns data definition object.
Syntax
HRESULT GetDataDef(
[retval][out] aafUID_t
);
Parameters
aafUID_t
Specifies aafUID_t.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetDataDef() returns data definition object. Succeeds if all
of the following are true: - the pDatadef pointer is valid.
If this method fails nothing will be written to *pDatadef. 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_NULL_PARAM -
pDatadef arg is NULL.
aafUID_t: DataDef of this object.
See Also
IAAFComponent::GetLength
The GetLength method getLength() Gets the duration in edit units of this component.
Syntax
HRESULT GetLength(
[retval][out] aafLength_t
);
Parameters
aafLength_t
Specifies aaflength_t.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetLength() Gets the duration in edit units of this component.
Succeeds if all of the following are true: - the pLength pointer
is valid. - the optional length property is present for this
object. This method deals with an optional property, which will
only be present for time-varying media. If this method fails
nothing will be written to *pLength. 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_NULL_PARAM - pLength arg
is NULL. AAFRESULT_BAD_PROP - the optional length property is
not present for this object.
aafLength_t: Length of this component.
See Also
IAAFComponent::SetDataDef
The SetDataDef method setDataDef() sets the data definition property AUID on this component.
Syntax
HRESULT SetDataDef(
aafUID_t* pDatadef
);
Parameters
[in] pDatadef
Pointer to a datadef object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetDataDef() sets the data definition property AUID on this component.
Succeeds if all of the following are true: - the pDatadef pointer
is valid. If this method fails the Data Definition property will
not be 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_NULL_PARAM
- pDatadef arg is NULL.
pDatadef: DataDef of this object.
See Also
IAAFComponent::SetLength
The SetLength method ************************ Interface IAAFComponent ************************ The component class represents an essence element.
Syntax
HRESULT SetLength(
aafLength_t* pLength
);
Parameters
[in] pLength
Pointer to a length object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFComponent ************************
The component class represents an essence element. A Component
is an abastract class with two subclasses: Segment and Transition.
The GetLength and SetLength only aplies to time-varying media
and it is an optional property. Non time-varying objects DO NOT
support this property. 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 - insufficient
system memory is available to perform the operation. AAFRESULT_NOT_INITIALIZED
- This object has not yet had Initialize() called on it through
this object's primary interface. Note that IAAFComponent is a
primary interface for an abstract class, so it is not appropriate
for the Initialize() method to exist in this interface. The Initialize()
method is available through the concrete object's primary interface.
c-11d2-8411-00600832acb8 SetLength() Sets the length property
value on this component object. Succeeds if all of the following
are true: - the pLength pointer is valid. - the optional length
property is present for this object. This method deals with an
optional property, which will only be present for time-varying
media. If this method fails the length property will not be 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_NULL_PARAM
- pVersion arg is NULL. AAFRESULT_BAD_PROP - the optional length
property is not present for this object.
pLength: The duration in edit units of this component.
See Also
IAAFCompositionMob Interface
In addition to the methods inherited from IUnknown, the IAAFCompositionMob interface exposes the following methods.
GetDefaultFade
Initialize
SetDefaultFade
The AAFCompositionMob object implements the IAAFCompositionMob interface and also implements the following:
IAAFCompositionMob::GetDefaultFade
The GetDefaultFade method getDefaultFade() Get the default fade for this composition.
Syntax
HRESULT GetDefaultFade(
aafDefaultFade_t* pResult
);
Parameters
[out] pResult
If the method succeeds, specifies a pointer to a result object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetDefaultFade() Get the default fade for this composition.
If there is no default fade, this function returns with no error,
but the VALID field of the structure is false. This allows you
to pass this struct to SourceClip::GetFade() in all cases. Succeeds
if all of the following are true: - this object has already been
initialized. - the pResult pointer is valid. 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 - This
object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pResult argument is NULL.
pResult: a default fade struct.
See Also
IAAFCompositionMob::Initialize
The Initialize method .
Syntax
HRESULT Initialize(
aafCharacter* pName
);
Parameters
[in] pName
Pointer to a name object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFCompositionMob ************************
The IAAFCompositionMob interface is implemented on objects which
can specify how to combine content data elements into a sequence,
how to modify content data elements, and how to synchronize content
data elements. 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 - insufficient
system memory is available to perform the operation. e-11D2-bfA3-006097116212
Initialize() Initializes this object with the given name. Succeeds
if all of the following are true: - this object has not yet been
initialized. - the pName pointer is valid. 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_ALREADY_INITIALIZED - Initialize()
has already been called on this object. AAFRESULT_NULL_PARAM
- pName argument is NULL.
pName: Mob name [optional].
See Also
IAAFCompositionMob::SetDefaultFade
The SetDefaultFade method setDefaultFade() Adds the default crossfade properties to the Mob.
Syntax
HRESULT SetDefaultFade(
aafLength_t fadeLength,
aafFadeType_t fadeType,
aafRational_t fadeEditUnit
);
Parameters
[in] fadeLength
Specifies fadelength.
[in] fadeType
Specifies fadetype.
[in] fadeEditUnit
Specifies fadeedit unit.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetDefaultFade() Adds the default crossfade properties to the
Mob. Succeeds if all of the following are true: - this object
has already been initialized. 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 - This object has not yet
had Initialize() called on it. AAFRESULT_BAD_TYPE - invalid fadeType.
AAFRESULT_BAD_LENGTH - invalid fadeLength.
fadeLength: default fade type.
fadeType: default fade edit unit.
See Also
IAAFConstantValue Interface
In addition to the methods inherited from IUnknown, the IAAFConstantValue interface exposes the following methods.
GetValue
GetValueBufLen
SetValue
The AAFConstantValue object implements the IAAFConstantValue interface and also implements the following:
IAAFConstantValue::GetValue
The GetValue method .
Syntax
HRESULT GetValue(
aafUInt32 valueSize,
aafDataBuffer_t pValue,
aafUInt32* bytesRead
);
Parameters
[in] valueSize
Specifies valuesize.
[out] pValue
If the method succeeds, specifies a pointer to a value object.
[out] bytesRead
Specifies bytesread.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFConstantValue ************************
The IAAFConstantValue interface is implemented by objects that
specify a parameter whose value is constant for an entire operation
group. Use IAAFVaryingValue and one or more IAAFControlPoints
for parameters which change in value during the operation group.
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 - insufficient system memory is available
to perform the operation. a-11D2-bfA5-006097116212 /****/ GetValue()
Writes the value into the pValue buffer. The buffer is allocated
by the caller, and the size of the buffer is given by valueSize.
Caller may call GetValueBufLen() to determine the required buffer
size. Succeeds if all of the following are true: - the pValue
pointer is valid. - valueSize indicates the buffer is large enough
to hold the name. If this method fails nothing will be written
to *pValue. 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_NULL_PARAM
- pValue arg is NULL. AAFRESULT_SMALLBUF - valueSize indicates
the buffer is too small to hold the value.
valueSize: Preallocated buffer to hold value.
pValue: Number of actual bytes read.
See Also
IAAFConstantValue::GetValueBufLen
The GetValueBufLen method getValueBufLen() Returns the length of buffer required for the GetValue() method.
Syntax
HRESULT GetValueBufLen(
aafUInt32* pLen
);
Parameters
[out] pLen
If the method succeeds, specifies a pointer to a len object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetValueBufLen() Returns the length of buffer required for the
GetValue() method. The value is placed into the location specified
by pLen. Succeeds if all of the following are true: - the pLen
pointer is valid. If this method fails nothing will be written
to *pLen. 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_NULL_PARAM
- pLen arg is NULL.
pLen: Pointer to an variable used to return the length.
See Also
IAAFConstantValue::SetValue
The SetValue method /****/ SetValue() The data value is set from a buffer of size valueSize.
Syntax
HRESULT SetValue(
aafUInt32 valueSize,
aafDataBuffer_t pValue
);
Parameters
[in] valueSize
Specifies valuesize.
[in] pValue
Pointer to a value object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ SetValue() The data value is set from a buffer of size
valueSize. Succeeds if all of the following are true: - the pValue
pointer is valid. 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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pValue is null.
valueSize: buffer containing value.
See Also
IAAFContainerDef Interface
In addition to the methods inherited from IUnknown, the IAAFContainerDef interface exposes the following methods.
EssenceIsIdentified
SetEssenceIsIdentified
The AAFContainerDef object implements the IAAFContainerDef interface and also implements the following:
IAAFContainerDef::EssenceIsIdentified
The EssenceIsIdentified method .
Syntax
HRESULT EssenceIsIdentified(
aafBool* pEssenceIsIdentified
);
Parameters
[out] pEssenceIsIdentified
If the method succeeds, specifies a pointer to an essence is identified object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFContainerDef ************************
This interface is used with an object representing a particular
kind of essence stream factory object, which may be implemented
by one or more AAFPluginDescriptors. 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
- insufficient system memory is available to perform the operation.
2-11d2-809C-006008143E6F EssenceIsIdentified() Tells whether
the given plugin is capable of supporting authentication. The
methods for authenticating a plugin are still tbd. Succeeds if
all of the following are true: - the pEssenceIsIdentified pointer
is valid. If this method fails nothing will be written to *pEssenceIsIdentified.
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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pEssenceIsIdentified arg is NULL.
pEssenceIsIdentified: The EssenceIsIdentified.
See Also
IAAFContainerDef::SetEssenceIsIdentified
The SetEssenceIsIdentified method setEssenceIsIdentified() Tells whether the given plugin is capable of supporting authentication.
Syntax
HRESULT SetEssenceIsIdentified(
aafBool EssenceIsIdentified
);
Parameters
[in] EssenceIsIdentified
Specifies essence is identified.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetEssenceIsIdentified() Tells whether the given plugin is capable
of supporting authentication. The methods for authenticating
a plugin are still tbd. 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 - This object has not yet
had Initialize() called on it.
EssenceIsIdentified: The EssenceIsIdentified flag.
See Also
IAAFControlPoint Interface
In addition to the methods inherited from IUnknown, the IAAFControlPoint interface exposes the following methods.
GetEditHint
GetTime
GetTypeDefinition
GetValue
GetValueBufLen
SetEditHint
SetTime
SetTypeDefinition
SetValue
IAAFControlPoint::GetEditHint
The GetEditHint method getEditHint() Returns the edit hint of the control point, which describes how to alter the position if the AAFOperationGroup is made longer or shorter.
Syntax
HRESULT GetEditHint(
aafEditHint_t* pEditHint
);
Parameters
[out] pEditHint
If the method succeeds, specifies a pointer to an edit hint object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetEditHint() Returns the edit hint of the control point, which
describes how to alter the position if the AAFOperationGroup
is made longer or shorter. Succeeds if all of the following are
true: - the pEditHint pointer is valid. If this method fails
nothing will be written to *pEditHint. 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 - This object
has not yet had Initialize() called on it. AAFRESULT_PROP_NOT_PRESENT
- This property does not exist in the file. AAFRESULT_NULL_PARAM
- pEditHint arg is NULL.
pEditHint: Pointer to an aafEditHint_t.
See Also
IAAFControlPoint::GetTime
The GetTime method .
Syntax
HRESULT GetTime(
aafRational_t* pTime
);
Parameters
[out] pTime
If the method succeeds, specifies a pointer to a time object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFControlPoint ************************
The IAAFControlPoint interface is implemented by objects that
store an individual point value of a parameter whose value changes
during the operation group. IAAFControlPoints must be added to
an object which implements IAAFVaryingValue, which is then added
to the IAAFOperationGroup. For parameters which are constant
in value during the operation group, use IAAFConstantValue. 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 - insufficient system memory is available
to perform the operation. 3-11D2-BFa3-006097116212 GetTime()
Returns the position of the control point within an operation
group, expressed as a rational running from 0 to 1. Succeeds
if all of the following are true: - the pTime pointer is valid.
If this method fails nothing will be written to *pTime. 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
- This object has not yet had Initialize() called on it. AAFRESULT_PROP_NOT_PRESENT
- This property does not exist in the file. AAFRESULT_NULL_PARAM
- pTime arg is NULL.
pTime: Pointer to an aafRational_t.
See Also
IAAFControlPoint::GetTypeDefinition
The GetTypeDefinition method getTypeDefinition() Places the IAAFTypeDefinition of the dataval inside this parameter into the *ppTypeDef argument.
Syntax
HRESULT GetTypeDefinition(
IAAFTypeDef** ppTypeDef
);
Parameters
[out] ppTypeDef
If the method succeeds, specifies a pointer to a variable containing a pointer to a type def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetTypeDefinition() Places the IAAFTypeDefinition of the dataval
inside this parameter into the *ppTypeDef argument. 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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- ppTypeDef is null.
ppTypeDef: Type Definition of the dataval inside of this object.
See Also
IAAFControlPoint::GetValue
The GetValue method getValue() Writes the value into the pValue buffer.
Syntax
HRESULT GetValue(
aafUInt32 valueSize,
aafDataBuffer_t pValue,
aafUInt32* bytesRead
);
Parameters
[in] valueSize
Specifies valuesize.
[out] pValue
If the method succeeds, specifies a pointer to a value object.
[out] bytesRead
Specifies bytesread.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetValue() Writes the value into the pValue buffer. The buffer
is allocated by the caller, and the size of the buffer is given
by valueSize. Caller may call GetValueBufLen() to determine the
required buffer size. Succeeds if all of the following are true:
- the pValue pointer is valid. - valueSize indicates the buffer
is large enough to hold the name. If this method fails nothing
will be written to *pValue. 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_NULL_PARAM - pValue arg is NULL. AAFRESULT_SMALLBUF
- valueSize indicates the buffer is too small to hold the value.
valueSize: Preallocated buffer to hold value.
pValue: Number of actual bytes read.
See Also
IAAFControlPoint::GetValueBufLen
The GetValueBufLen method getValueBufLen() Returns the length of buffer required for the GetValue() method.
Syntax
HRESULT GetValueBufLen(
aafUInt32* pLen
);
Parameters
[out] pLen
If the method succeeds, specifies a pointer to a len object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetValueBufLen() Returns the length of buffer required for the
GetValue() method. The value is placed into the location specified
by pLen. Succeeds if all of the following are true: - the pLen
pointer is valid. If this method fails nothing will be written
to *pLen. 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_NULL_PARAM
- pLen arg is NULL.
pLen: Pointer to an variable used to return the length.
See Also
IAAFControlPoint::SetEditHint
The SetEditHint method setEditHint() Sets the control point Edit hint value, which describes how to alter the position if the AAFOperationGroup is made longer or shorter.
Syntax
HRESULT SetEditHint(
aafEditHint_t editHint
);
Parameters
[in] editHint
Specifies edithint.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetEditHint() Sets the control point Edit hint value, which describes
how to alter the position if the AAFOperationGroup is made longer
or shorter. 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
- This object has not yet had Initialize() called on it.
editHint: Control Point Edit hint.
See Also
IAAFControlPoint::SetTime
The SetTime method setTime() Sets the position of the control point within an operation group, expressed as a rational running from 0 to 1.
Syntax
HRESULT SetTime(
aafRational_t pTime
);
Parameters
[in] pTime
Pointer to a time object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetTime() Sets the position of the control point within an operation
group, expressed as a rational running from 0 to 1. 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
- This object has not yet had Initialize() called on it.
pTime: Control Point time.
See Also
IAAFControlPoint::SetTypeDefinition
The SetTypeDefinition method setTypeDefinition() Sets the IAAFTypeDefinition of the dataval inside this parameter to be the given one.
Syntax
HRESULT SetTypeDefinition(
IAAFTypeDef* pTypeDef
);
Parameters
[in] pTypeDef
Pointer to a type def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetTypeDefinition() Sets the IAAFTypeDefinition of the dataval
inside this parameter to be the given one. Succeeds if all of
the following are true: - the pTypeDef pointer is valid. 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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pTypeDef is null.
pTypeDef: Type Definition of the dataval inside of this object.
See Also
IAAFControlPoint::SetValue
The SetValue method setValue() The data value is set from a buffer of size valueSize.
Syntax
HRESULT SetValue(
aafUInt32 valueSize,
aafDataBuffer_t pValue
);
Parameters
[in] valueSize
Specifies valuesize.
[in] pValue
Pointer to a value object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetValue() The data value is set from a buffer of size valueSize.
Succeeds if all of the following are true: - the pValue pointer
is valid. 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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pValue is null.
valueSize: buffer containing value.
See Also
IAAFDataDef Interface
In addition to the methods inherited from IUnknown, the IAAFDataDef interface exposes the following methods.
DoesDataDefConvertFrom
DoesDataDefConvertTo
IsDataDefOf
IsMatteKind
IsPictureKind
IsPictureWithMatteKind
IsSoundKind
The AAFDataDef object implements the IAAFDataDef interface and also implements the following:
IAAFDataDef::DoesDataDefConvertFrom
The DoesDataDefConvertFrom method doesDataDefConvertFrom() Sets return value to TRUE if the DataDef of the given object can be converted from the DataDef specified in the IN parameter specified with the DataDefName string.
Syntax
HRESULT DoesDataDefConvertFrom(
aafUID_t* pAuid,
[retval,out] aafBool
);
Parameters
[in] pAuid
Pointer to an auid object.
aafBool
Specifies aafbool.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
DoesDataDefConvertFrom() Sets return value to TRUE if the DataDef
of the given object can be converted from the DataDef specified
in the IN parameter specified with the DataDefName string.
pAuid: pointer to result.
See Also
IAAFDataDef::DoesDataDefConvertTo
The DoesDataDefConvertTo method doesDataDefConvertTo() Sets return value to TRUE if the DataDef of the given object can be converted to the DataDef specified in the IN parameter with the DataDefName string.
Syntax
HRESULT DoesDataDefConvertTo(
aafUID_t* pAuid,
[retval,out] aafBool
);
Parameters
[in] pAuid
Pointer to an auid object.
aafBool
Specifies aafbool.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
DoesDataDefConvertTo() Sets return value to TRUE if the DataDef
of the given object can be converted to the DataDef specified
in the IN parameter with the DataDefName string.
pAuid: pointer to result.
See Also
IAAFDataDef::IsDataDefOf
The IsDataDefOf method isDataDefOf() Sets the value to TRUE if the DataDef of the given object matches the DataDef specified in the IN parameter with the DataDefName string.
Syntax
HRESULT IsDataDefOf(
aafUID_t* pAuid,
[retval,out] aafBool
);
Parameters
[in] pAuid
Pointer to an auid object.
aafBool
Specifies aafbool.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
IsDataDefOf() Sets the value to TRUE if the DataDef of the given
object matches the DataDef specified in the IN parameter with
the DataDefName string.
pAuid: pointer to result.
See Also
IAAFDataDef::IsMatteKind
The IsMatteKind method isMatteKind() Sets return value to TRUE if DataDef is a matte.
Syntax
HRESULT IsMatteKind(
[retval,out] aafBool
);
Parameters
aafBool
Specifies aafbool.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
IsMatteKind() Sets return value to TRUE if DataDef is a matte.
aafBool: pointer to the return value.
See Also
IAAFDataDef::IsPictureKind
The IsPictureKind method ************************ Interface IAAFDataDef ************************ 1-11d2-bf96-006097116212 IsPictureKind() Sets return value to TRUE if DataDef is a picture.
Syntax
HRESULT IsPictureKind(
[retval,out] aafBool
);
Parameters
aafBool
Specifies aafbool.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFDataDef ************************
1-11d2-bf96-006097116212 IsPictureKind() Sets return value to
TRUE if DataDef is a picture.
aafBool: pointer to the return value.
See Also
IAAFDataDef::IsPictureWithMatteKind
The IsPictureWithMatteKind method isPictureWithMatteKind() Sets return value to TRUE if DataDef is a picture with matte.
Syntax
HRESULT IsPictureWithMatteKind(
[retval,out] aafBool
);
Parameters
aafBool
Specifies aafbool.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
IsPictureWithMatteKind() Sets return value to TRUE if DataDef
is a picture with matte.
aafBool: pointer to the return value.
See Also
IAAFDataDef::IsSoundKind
The IsSoundKind method isSoundKind() Sets return value to TRUE if DataDef is a sound.
Syntax
HRESULT IsSoundKind(
[retval,out] aafBool
);
Parameters
aafBool
Specifies aafbool.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
IsSoundKind() Sets return value to TRUE if DataDef is a sound.
aafBool: pointer to the return value.
See Also
IAAFDefObject Interface
In addition to the methods inherited from IUnknown, the IAAFDefObject interface exposes the following methods.
AppendPluginDescriptor
EnumPluginDescriptors
GetAUID
GetDescription
GetDescriptionBufLen
GetName
GetNameBufLen
Init
PrependPluginDescriptor
SetDescription
SetName
IAAFDefObject::AppendPluginDescriptor
The AppendPluginDescriptor method appendPluginDescriptor() Append another PluginDescriptor to this PluggableDefinition.
Syntax
HRESULT AppendPluginDescriptor(
IAAFPluginDescriptor* pPluginDescriptor
);
Parameters
[in] pPluginDescriptor
Pointer to a plugin descriptor object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
AppendPluginDescriptor() Append another PluginDescriptor to this
PluggableDefinition. Use this function to add a PluginDescriptor
to be scanned last when searching for the plugin (a secondary
location for the plugin). Succeeds if all of the following are
true: - the pPluginDescriptor pointer is valid. If this method
fails no state will be 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_NULL_PARAM - pPluginDescriptor is null.
pPluginDescriptor: PluginDescriptor to append.
See Also
IAAFDefObject::EnumPluginDescriptors
The EnumPluginDescriptors method enumPluginDescriptors() Returns an IEnumAAFPluginDescriptors enumerator for the plugin descriptors contained in the AAFPluggableDef through the *ppEnum argument.
Syntax
HRESULT EnumPluginDescriptors(
IEnumAAFPluginDescriptors** ppEnum
);
Parameters
[out] ppEnum
If the method succeeds, specifies a pointer to a variable containing a pointer to an enum object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
EnumPluginDescriptors() Returns an IEnumAAFPluginDescriptors
enumerator for the plugin descriptors contained in the AAFPluggableDef
through the *ppEnum argument. The returned enumerator is AddRef()ed
before it is returned. Succeeds if all of the following are true:
- this object has already been initialized. - the ppEnum pointer
is valid. If this method fails nothing will be written to *ppEnum.
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
- ppEnum is null. E_FAIL - Failed to create the enumerator.
ppEnum: AAFPluginDescriptor Enumeration.
See Also
IAAFDefObject::GetAUID
The GetAUID method getAUID() Gets the AUID for this object.
Syntax
HRESULT GetAUID(
[retval,out] aafUID_t
);
Parameters
aafUID_t
Specifies aafUID_t.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetAUID() Gets the AUID for this object.
aafUID_t: Pointer to an AUID reference.
See Also
IAAFDefObject::GetDescription
The GetDescription method getDescription() Gets the Description of this definition.
Syntax
HRESULT GetDescription(
wchar_t* pDescription,
aafUInt32 bufSize
);
Parameters
[out] pDescription
If the method succeeds, specifies a pointer to a description object.
[in] bufSize
Specifies bufsize.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetDescription() Gets the Description of this definition. Writes
the Description property, with a trailing null character, into
the pDescription buffer. The buffer is allocated by the caller.
The size of the buffer is given by bufSize. If the Description
property has not yet been set, a zero-length string will be written
(that is, only the trailing null character). Caller may call
GetDescriptionBufLen() to determine the required buffer size.
If this method fails nothing will be written to *pDescription.
Succeeds if: - The pDescription pointer is valid. - bufSize indicates
that the buffer is large enough to hold Description. 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_NULL_PARAM -
pDescription arg is NULL. AAFRESULT_SMALL_BUF - bufSize indicates
that the allocated buffer is not large enough to hold Description.
pDescription: size of *pDescription buffer in bytes.
See Also
IAAFDefObject::GetDescriptionBufLen
The GetDescriptionBufLen method getDescriptionBufLen() Returns size of buffer (in bytes) required for GetDescription().
Syntax
HRESULT GetDescriptionBufLen(
aafUInt32* pBufSize
);
Parameters
[out] pBufSize
If the method succeeds, specifies a pointer to a buf size object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetDescriptionBufLen() Returns size of buffer (in bytes) required
for GetDescription(). Succeeds if: - The pBufSize pointer is
valid. 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_NULL_PARAM
- pBufSize arg is NULL.
pBufSize: size of required buffer, in bytes.
See Also
IAAFDefObject::GetName
The GetName method getName() Gets the Name of this definition.
Syntax
HRESULT GetName(
wchar_t* pName,
aafUInt32 bufSize
);
Parameters
[out] pName
If the method succeeds, specifies a pointer to a name object.
[in] bufSize
Specifies bufsize.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetName() Gets the Name of this definition. Writes the Name property,
with a trailing null character, into the pName buffer. The buffer
is allocated by the caller. The size of the buffer is given by
bufSize. If the Name property has not yet been set, a zero-length
string will be written (that is, only the trailing null character).
Caller may call GetNameBufLen() to determine the required buffer
size. If this method fails nothing will be written to *pName.
Succeeds if: - The pName pointer is valid. - bufSize indicates
that the buffer is large enough to hold Name. 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_NULL_PARAM - pName arg
is NULL. AAFRESULT_SMALL_BUF - bufSize indicates that the allocated
buffer is not large enough to hold Name.
pName: size of *pName buffer in bytes.
See Also
IAAFDefObject::GetNameBufLen
The GetNameBufLen method getNameBufLen() Returns size of buffer (in bytes) required for GetName().
Syntax
HRESULT GetNameBufLen(
aafUInt32* pBufSize
);
Parameters
[out] pBufSize
If the method succeeds, specifies a pointer to a buf size object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetNameBufLen() Returns size of buffer (in bytes) required for
GetName(). Succeeds if: - The pBufSize pointer is valid. 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_NULL_PARAM -
pBufSize arg is NULL.
pBufSize: size of required buffer, in bytes.
See Also
IAAFDefObject::Init
The Init method ************************ Interface IAAFDefObject ************************ This interface is defines an item to be referenced in the AAF file.
Syntax
HRESULT Init(
aafUID_t* pAuid,
aafCharacter* pName,
aafCharacter* pDescription
);
Parameters
[in] pAuid
Pointer to an auid object.
[in] pName
Pointer to a name object.
[in] pDescription
Pointer to a description object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFDefObject ************************
This interface is defines an item to be referenced in the AAF
file. It specifies the AUID unique identifier used to define
types used in AAF persistent objects. 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
- insufficient system memory is available to perform the operation.
AAFRESULT_NOT_INITIALIZED - This object has not yet had Initialize()
called on it through this object's primary interface. Note that
IAAFObject is a primary interface for an abstract class, so it
is not appropriate for the Initialize() method to exist in this
interface. The Initialize() method is available through the
concrete object's primary interface. 1-11d2-bf96-006097116212
Init() Init all fields of a definition object.
pAuid: Name for new DefObject.
pName: Description for new DefObject.
See Also
IAAFDefObject::PrependPluginDescriptor
The PrependPluginDescriptor method prependPluginDescriptor() Append another PluginDescriptor to this PluggableDefinition.
Syntax
HRESULT PrependPluginDescriptor(
IAAFPluginDescriptor* pPluginDescriptor
);
Parameters
[in] pPluginDescriptor
Pointer to a plugin descriptor object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
PrependPluginDescriptor() Append another PluginDescriptor to
this PluggableDefinition. Use this function to add a PluginDescriptor
to be scanned first when searching for the plugin (a new primary
location for the plugin). Succeeds if all of the following are
true: - the pPluginDescriptor pointer is valid. If this method
fails no state will be 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_NULL_PARAM - pPluginDescriptor is null.
pPluginDescriptor: PluginDescriptor to append.
See Also
IAAFDefObject::SetDescription
The SetDescription method setDescription() Sets the Description of this definition.
Syntax
HRESULT SetDescription(
wchar_t* pDescription
);
Parameters
[in] pDescription
Pointer to a description object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetDescription() Sets the Description of this definition. Set
the Description property to the value specified in pDescription.
A copy is made of the data so the caller retains ownership of
the *pDescription buffer and is responsible for de-allocating
it. There is no pre-set limit to the length of the name, other
than available system memory or disk space. Succeeds if all of
the following are true: - the pDescription pointer is valid.
If this method fails the Description property will not be 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_NULL_PARAM
- pDescription arg is NULL.
pDescription: buffer from which Description is to be read.
See Also
IAAFDefObject::SetName
The SetName method setName() Sets the Name of this definition.
Syntax
HRESULT SetName(
wchar_t* pName
);
Parameters
[in] pName
Pointer to a name object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetName() Sets the Name of this definition. Set the Name property
to the value specified in pName. A copy is made of the data so
the caller retains ownership of the *pName buffer and is responsible
for de-allocating it. There is no pre-set limit to the length
of the name, other than available system memory or disk space.
Succeeds if all of the following are true: - the pName pointer
is valid. If this method fails the Name property will not be
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_NULL_PARAM
- pName arg is NULL.
pName: buffer from which Name is to be read.
See Also
IAAFDictionary Interface
In addition to the methods inherited from IUnknown, the IAAFDictionary interface exposes the following methods.
CreateInstance
GetClassDefinitions
GetCodecDefinitions
GetContainerDefinitions
GetDataDefinitions
GetInterpolationDefinitions
GetOperationDefinitions
GetParameterDefinitions
GetPluginDescriptors
GetTypeDefinitions
LookupClass
LookupCodecDefinition
LookupContainerDefinition
LookupDataDefintion
LookupInterpolationDefinition
LookupOperationDefinition
LookupParameterDefinition
LookupPluginDescriptor
LookupType
RegisterClass
RegisterCodecDefinition
RegisterContainerDefinition
RegisterDataDefintion
RegisterInterpolationDefinition
RegisterOperationDefinition
RegisterParameterDefinition
RegisterPluginDescriptor
RegisterType
IAAFDictionary::CreateInstance
The CreateInstance method ************************ Interface IAAFDictionary ************************ This interface is used to access dictionary services in an AAF file.
Syntax
HRESULT CreateInstance(
aafUID_t* pAUID,
REFIID riid,
IUnknown** ppvObject
);
Parameters
[in] pAUID
Pointer to an AUID object.
[in] riid
Specifies riid.
[out] ppvObject
Specifies ppvobject.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFDictionary ************************
This interface is used to access dictionary services in an AAF
file. 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 - insufficient system
memory is available to perform the operation. * Stub only. Implementation
not yet added * D-11D2-BF78-00104BC9156D CreateInstance() Creates
a single uninitialized AAF object of the class associated with
a specified stored object id.
pAUID: Reference to the identifier of the interface.
riid: interface pointer requested in riid.
See Also
IAAFDictionary::GetClassDefinitions
The GetClassDefinitions method getClassDefinitions() Return an enumerator for all class definitions.
Syntax
HRESULT GetClassDefinitions(
IEnumAAFClassDefs** ppEnum
);
Parameters
[out] ppEnum
If the method succeeds, specifies a pointer to a variable containing a pointer to an enum object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetClassDefinitions() Return an enumerator for all class definitions.
Succeeds if: - The ppEnum pointer is valid. 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_NULL_PARAM - ppEnum
arg is NULL.
ppEnum: Class Definition Enumeration.
See Also
IAAFDictionary::GetCodecDefinitions
The GetCodecDefinitions method getCodecDefinitions() Return an enumerator for all codec definitions.
Syntax
HRESULT GetCodecDefinitions(
IEnumAAFCodecDefs** ppEnum
);
Parameters
[out] ppEnum
If the method succeeds, specifies a pointer to a variable containing a pointer to an enum object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetCodecDefinitions() Return an enumerator for all codec definitions.
ppEnum: Definition Enumeration.
See Also
IAAFDictionary::GetContainerDefinitions
The GetContainerDefinitions method getContainerDefinitions() Return an enumerator for all container definitions.
Syntax
HRESULT GetContainerDefinitions(
IEnumAAFContainerDefs** ppEnum
);
Parameters
[out] ppEnum
If the method succeeds, specifies a pointer to a variable containing a pointer to an enum object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetContainerDefinitions() Return an enumerator for all container
definitions.
ppEnum: Definition Enumeration.
See Also
IAAFDictionary::GetDataDefinitions
The GetDataDefinitions method getDataDefinitions() Return an enumerator for aff data definitions.
Syntax
HRESULT GetDataDefinitions(
IEnumAAFDataDefs** ppEnum
);
Parameters
[out] ppEnum
If the method succeeds, specifies a pointer to a variable containing a pointer to an enum object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetDataDefinitions() Return an enumerator for aff data definitions.
ppEnum: Definition Enumeration.
See Also
IAAFDictionary::GetInterpolationDefinitions
The GetInterpolationDefinitions method getInterpolationDefinitions() Return an enumerator for aff Interpolation definitions.
Syntax
HRESULT GetInterpolationDefinitions(
IEnumAAFInterpolationDefs** ppEnum
);
Parameters
[out] ppEnum
If the method succeeds, specifies a pointer to a variable containing a pointer to an enum object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetInterpolationDefinitions() Return an enumerator for aff Interpolation
definitions.
ppEnum: Definition Enumeration.
See Also
IAAFDictionary::GetOperationDefinitions
The GetOperationDefinitions method getOperationDefinitions() Return an enumerator for all operation definitions.
Syntax
HRESULT GetOperationDefinitions(
IEnumAAFOperationDefs** ppEnum
);
Parameters
[out] ppEnum
If the method succeeds, specifies a pointer to a variable containing a pointer to an enum object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetOperationDefinitions() Return an enumerator for all operation
definitions.
ppEnum: Definition Enumeration.
See Also
IAAFDictionary::GetParameterDefinitions
The GetParameterDefinitions method getParameterDefinitions() Return an enumerator for all parameter definitions.
Syntax
HRESULT GetParameterDefinitions(
IEnumAAFParameterDefs** ppEnum
);
Parameters
[out] ppEnum
If the method succeeds, specifies a pointer to a variable containing a pointer to an enum object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetParameterDefinitions() Return an enumerator for all parameter
definitions.
ppEnum: Definition Enumeration.
See Also
IAAFDictionary::GetPluginDescriptors
The GetPluginDescriptors method getPluginDescriptors() Return an enumerator for all plugin descriptors.
Syntax
HRESULT GetPluginDescriptors(
IEnumAAFPluginDescriptors** ppEnum
);
Parameters
[out] ppEnum
If the method succeeds, specifies a pointer to a variable containing a pointer to an enum object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetPluginDescriptors() Return an enumerator for all plugin descriptors.
ppEnum: Definition Enumeration.
See Also
IAAFDictionary::GetTypeDefinitions
The GetTypeDefinitions method getTypeDefinitions() Return an enumerator for all type definitions.
Syntax
HRESULT GetTypeDefinitions(
IEnumAAFTypeDefs** ppEnum
);
Parameters
[out] ppEnum
If the method succeeds, specifies a pointer to a variable containing a pointer to an enum object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetTypeDefinitions() Return an enumerator for all type definitions.
Succeeds if: - The ppEnum pointer is valid. 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_NULL_PARAM - ppEnum
arg is NULL.
ppEnum: Type Def Enumeration.
See Also
IAAFDictionary::LookupClass
The LookupClass method lookupClass() Return the class definition with the given id.
Syntax
HRESULT LookupClass(
aafUID_t* pClassID,
IAAFClassDef** ppClassDef
);
Parameters
[in] pClassID
Pointer to a classID object.
[out] ppClassDef
If the method succeeds, specifies a pointer to a variable containing a pointer to a class def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
LookupClass() Return the class definition with the given id.
Succeeds if: - The pClassID pointer is valid. - The ppClassDef
pointer is valid. - the ID is a recognized id for a class definition.
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_NULL_PARAM
- Either pClassID or ppClassDef arg is NULL. AAFRESULT_BAD_PARAM
- The given ID is not recognized as a class definition ID.
pClassID: Class Definition.
See Also
IAAFDictionary::LookupCodecDefinition
The LookupCodecDefinition method lookupCodecDefinition() Return the codec definition object with the given id.
Syntax
HRESULT LookupCodecDefinition(
aafUID_t* parameterID,
IAAFCodecDef** ppParmDef
);
Parameters
[in] parameterID
Specifies parameterID.
[out] ppParmDef
If the method succeeds, specifies a pointer to a variable containing a pointer to a parm def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
LookupCodecDefinition() Return the codec definition object with
the given id.
parameterID: Codec definition object.
See Also
IAAFDictionary::LookupContainerDefinition
The LookupContainerDefinition method lookupContainerDefinition() Return the container definition object with the given id.
Syntax
HRESULT LookupContainerDefinition(
aafUID_t* parameterID,
IAAFContainerDef** ppParmDef
);
Parameters
[in] parameterID
Specifies parameterID.
[out] ppParmDef
If the method succeeds, specifies a pointer to a variable containing a pointer to a parm def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
LookupContainerDefinition() Return the container definition object
with the given id.
parameterID: Container definition object.
See Also
IAAFDictionary::LookupDataDefintion
The LookupDataDefintion method lookupDataDefintion() Return the data definition object with the given id.
Syntax
HRESULT LookupDataDefintion(
aafUID_t* pDataDefintionID,
IAAFDataDef** ppDataDef
);
Parameters
[in] pDataDefintionID
Pointer to a data defintionID object.
[out] ppDataDef
If the method succeeds, specifies a pointer to a variable containing a pointer to a data def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
LookupDataDefintion() Return the data definition object with
the given id.
pDataDefintionID: Data Definition Object.
See Also
IAAFDictionary::LookupInterpolationDefinition
The LookupInterpolationDefinition method lookupInterpolationDefinition() Return the Interpolation definition object with the given id.
Syntax
HRESULT LookupInterpolationDefinition(
aafUID_t* parameterID,
IAAFInterpolationDef** ppInterpDef
);
Parameters
[in] parameterID
Specifies parameterID.
[out] ppInterpDef
If the method succeeds, specifies a pointer to a variable containing a pointer to an interp def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
LookupInterpolationDefinition() Return the Interpolation definition
object with the given id.
parameterID: Interpolation definition object.
See Also
IAAFDictionary::LookupOperationDefinition
The LookupOperationDefinition method lookupOperationDefinition() Return the operation definition object with the given id.
Syntax
HRESULT LookupOperationDefinition(
aafUID_t* operationID,
IAAFOperationDef** ppOperationDef
);
Parameters
[in] operationID
Specifies operationID.
[out] ppOperationDef
If the method succeeds, specifies a pointer to a variable containing a pointer to an operation def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
LookupOperationDefinition() Return the operation definition object
with the given id.
operationID: Operation definition object.
See Also
IAAFDictionary::LookupParameterDefinition
The LookupParameterDefinition method lookupParameterDefinition() Return the parameter definition object with the given id.
Syntax
HRESULT LookupParameterDefinition(
aafUID_t* parameterID,
IAAFParameterDef** ppParmDef
);
Parameters
[in] parameterID
Specifies parameterID.
[out] ppParmDef
If the method succeeds, specifies a pointer to a variable containing a pointer to a parm def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
LookupParameterDefinition() Return the parameter definition object
with the given id.
parameterID: Parameter definition object.
See Also
IAAFDictionary::LookupPluginDescriptor
The LookupPluginDescriptor method lookupPluginDescriptor() Return the plugin descriptor object with the given id.
Syntax
HRESULT LookupPluginDescriptor(
aafUID_t* parameterID,
IAAFPluginDescriptor** ppPlugDesc
);
Parameters
[in] parameterID
Specifies parameterID.
[out] ppPlugDesc
If the method succeeds, specifies a pointer to a variable containing a pointer to a plug desc object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
LookupPluginDescriptor() Return the plugin descriptor object
with the given id.
parameterID: plugin descriptor object.
See Also
IAAFDictionary::LookupType
The LookupType method lookupType() Return the type definition object with the given id.
Syntax
HRESULT LookupType(
aafUID_t* pTypeID,
IAAFTypeDef** ppTypeDef
);
Parameters
[in] pTypeID
Pointer to a typeID object.
[out] ppTypeDef
If the method succeeds, specifies a pointer to a variable containing a pointer to a type def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
LookupType() Return the type definition object with the given
id. Succeeds if: - The pTypeID pointer is valid. - The ppTypeDef
pointer is valid. - the ID is a recognized id for a type definition.
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_NULL_PARAM
- Either pTypeID or ppTypeDef arg is NULL. AAFRESULT_BAD_PARAM
- The given ID is not recognized as a type definition ID.
pTypeID: Type Definition Object.
See Also
IAAFDictionary::RegisterClass
The RegisterClass method registerClass() Add the class definition object to the dictionary.
Syntax
HRESULT RegisterClass(
IAAFClassDef* pClassDef
);
Parameters
[in] pClassDef
Pointer to a class def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
RegisterClass() Add the class definition object to the dictionary.
Succeeds if: - The pClassDef pointer is valid. - the ID contained
in the class def is not already been registered. 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_NULL_PARAM -
pClassDef arg is NULL. AAFRESULT_BAD_PARAM - The class def ID
has already been registered.
pClassDef: Class Definition.
See Also
IAAFDictionary::RegisterCodecDefinition
The RegisterCodecDefinition method registerCodecDefinition() Add the codec definition object to the header's list of definitions.
Syntax
HRESULT RegisterCodecDefinition(
IAAFCodecDef* pParmDef
);
Parameters
[in] pParmDef
Pointer to a parm def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
RegisterCodecDefinition() Add the codec definition object to
the header's list of definitions.
pParmDef: Codec Definition Object.
See Also
IAAFDictionary::RegisterContainerDefinition
The RegisterContainerDefinition method registerContainerDefinition() Add the container definition object to the header's list of definitions.
Syntax
HRESULT RegisterContainerDefinition(
IAAFContainerDef* pParmDef
);
Parameters
[in] pParmDef
Pointer to a parm def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
RegisterContainerDefinition() Add the container definition object
to the header's list of definitions.
pParmDef: Container Definition Object.
See Also
IAAFDictionary::RegisterDataDefintion
The RegisterDataDefintion method registerDataDefintion() Add the data definition object to the header's list of definitions.
Syntax
HRESULT RegisterDataDefintion(
IAAFDataDef* pDataDef
);
Parameters
[in] pDataDef
Pointer to a data def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
RegisterDataDefintion() Add the data definition object to the
header's list of definitions.
pDataDef: Data Definition Object.
See Also
IAAFDictionary::RegisterInterpolationDefinition
The RegisterInterpolationDefinition method registerInterpolationDefinition() Add the Interpolation definition object to the header's list of definitions.
Syntax
HRESULT RegisterInterpolationDefinition(
IAAFInterpolationDef* pInterpDef
);
Parameters
[in] pInterpDef
Pointer to an interp def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
RegisterInterpolationDefinition() Add the Interpolation definition
object to the header's list of definitions.
pInterpDef: Interpolation Definition Object.
See Also
IAAFDictionary::RegisterOperationDefinition
The RegisterOperationDefinition method registerOperationDefinition() Add the operation definition object to the header's list of definitions.
Syntax
HRESULT RegisterOperationDefinition(
IAAFOperationDef* pOperationDef
);
Parameters
[in] pOperationDef
Pointer to an operation def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
RegisterOperationDefinition() Add the operation definition object
to the header's list of definitions.
pOperationDef: Operation Definition Object.
See Also
IAAFDictionary::RegisterParameterDefinition
The RegisterParameterDefinition method registerParameterDefinition() Add the operation definition object to the header's list of definitions.
Syntax
HRESULT RegisterParameterDefinition(
IAAFParameterDef* pParmDef
);
Parameters
[in] pParmDef
Pointer to a parm def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
RegisterParameterDefinition() Add the operation definition object
to the header's list of definitions.
pParmDef: Parameter Definition Object.
See Also
IAAFDictionary::RegisterPluginDescriptor
The RegisterPluginDescriptor method registerPluginDescriptor() Add the Interpolation definition object to the header's list of definitions.
Syntax
HRESULT RegisterPluginDescriptor(
IAAFPluginDescriptor* pPlugDesc
);
Parameters
[in] pPlugDesc
Pointer to a plug desc object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
RegisterPluginDescriptor() Add the Interpolation definition object
to the header's list of definitions.
pPlugDesc: plugin descriptor Object.
See Also
IAAFDictionary::RegisterType
The RegisterType method registerType() Add the type definition object to the dictionary.
Syntax
HRESULT RegisterType(
IAAFTypeDef* pTypeDef
);
Parameters
[in] pTypeDef
Pointer to a type def object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
RegisterType() Add the type definition object to the dictionary.
Succeeds if: - The pTypeDef pointer is valid. - the ID is not
already been registered. 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_NULL_PARAM - pClassDef arg is NULL. AAFRESULT_BAD_PARAM
- The given type has already been registered.
pTypeDef: Type Definition Object.
See Also
IAAFDigitalImageDescriptor Interface
In addition to the methods inherited from IUnknown, the IAAFDigitalImageDescriptor interface exposes the following methods.
GetAlphaTransparency
GetCompression
GetDisplayView
GetFrameLayout
GetGamma
GetImageAlignmentFactor
GetImageAspectRatio
GetSampledView
GetStoredView
GetVideoLineMap
GetVideoLineMapSize
SetAlphaTransparency
SetCompression
SetDisplayView
SetFrameLayout
SetGamma
SetImageAlignmentFactor
SetImageAspectRatio
SetSampledView
SetStoredView
SetVideoLineMap
The AAFDigitalImageDescriptor object implements the IAAFDigitalImageDescriptor interface and also implements the following:
IAAFDigitalImageDescriptor::GetAlphaTransparency
The GetAlphaTransparency method getAlphaTransparency() Gets the AlphaTransparency property.
Syntax
HRESULT GetAlphaTransparency(
aafAlphaTransparency_t* pAlphaTransparency
);
Parameters
[out] pAlphaTransparency
If the method succeeds, specifies a pointer to an alpha transparency object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetAlphaTransparency() Gets the AlphaTransparency property.
This property is optional. Valid values: kMaxValueTransparent
- means the maximum Alpha value is transparent kMinValueTransparent
- means the minimum Alpha value is transparent Succeeds if all
of the following are true: - pAlphaTransparency is a valid pointer
If this method fails, pAlphaTransparency not be changed. This
method will return the following codes: AAFRESULT_SUCCESS - succeeded.
(This is the only code indicating success.) AAFRESULT_NULL_PARAM
- pAlphaTransparency is NULL.
pAlphaTransparency: Alpha Transparency value..
See Also
IAAFDigitalImageDescriptor::GetCompression
The GetCompression method getCompression() Gets the kind of compression and format of compression information of the video essence data.
Syntax
HRESULT GetCompression(
aafUID_t* pCompression
);
Parameters
[out] pCompression
If the method succeeds, specifies a pointer to a compression object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetCompression() Gets the kind of compression and format of compression
information of the video essence data. This property is optional.
If there is no compression, the null AUID is returned. Succeeds
if all of the following are true: - the pCompression pointer
is valid. If this method fails nothing will be written to *pCompression.
This method will return the following codes: AAFRESULT_SUCCESS
- succeeded. (This is the only code indicating success.) AAFRESULT_NULL_PARAM
- pComporession arg is NULL.
pCompression: format of compression information..
See Also
IAAFDigitalImageDescriptor::GetDisplayView
The GetDisplayView method getDisplayView() Gets the dimension of display view.
Syntax
HRESULT GetDisplayView(
aafUInt32* pDisplayHeight,
aafUInt32* pDisplayWidth,
aafInt32* pDisplayXOffset,
aafInt32* pDisplayYOffset
);
Parameters
[out] pDisplayHeight
If the method succeeds, specifies a pointer to a display height object.
[out] pDisplayWidth
If the method succeeds, specifies a pointer to a display width object.
[out] pDisplayXOffset
If the method succeeds, specifies a pointer to a displayXOffset object.
[out] pDisplayYOffset
If the method succeeds, specifies a pointer to a displayYOffset object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetDisplayView() Gets the dimension of display view. Typically
this includes the active picture area, but excludes leading blank
video lines and any VITC lines. The offset is specified relative
to the rectangle specified by Set/GetStoredView(). Note that
The specified display rectangle may exist outside the SampledView
or even the StoredView. Succeeds if all of the following are
true: - pDisplayHeight, pDisplayWidth, pDisplayXOffset and pDisplayYOffset
are valid pointers. If this method fails, *pDisplayHeight, *pDisplayWidth,
*pDisplayXOffset, and *pDisplayYOffset will not be changed.
This method will return the following codes: AAFRESULT_SUCCESS
- succeeded. (This is the only code indicating success.) AAFRESULT_NULL_PARAM
- any of pDisplayHeight, pDisplayWidth, pDisplayXOffset, or
pDisplayYOffset are NULL.
pDisplayHeight: Number of pixels in horizontal dimension of display
view. Optional..
pDisplayWidth: Number of pixels from the top-left corner of the
display view. Optional..
pDisplayXOffset: Number pixels from the top-left corner of the
display view. Optional..
See Also
IAAFDigitalImageDescriptor::GetFrameLayout
The GetFrameLayout method getFrameLayout() Gets the frame layout.
Syntax
HRESULT GetFrameLayout(
aafFrameLayout_t* pFrameLayout
);
Parameters
[out] pFrameLayout
If the method succeeds, specifies a pointer to a frame layout object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetFrameLayout() Gets the frame layout. The frame layout describes
whether all data for a complete sample is in one frame or is
split into more than one field. Values are: kNoLayout - Default;
not a valid value. kFullFrame - Each frame contains a full sample
in progressive scan lines. kSeparateFields - Each sample consists
of two fields, which when interlaced produce a full sample.
kOneField - Each sample consists of two interlaced fields, but
only one field is stored in the data stream. kMixedFields - Similar
to FullFrame, except the two fields may have been sampled at
different times. Succeeds if all of the following are true: -
pFrameLayout is a valid pointer If this method fails, *pFrameLayout
will not be changed. This method will return the following codes:
AAFRESULT_SUCCESS - succeeded. (This is the only code indicating
success.) AAFRESULT_NULL_PARAM - pFrameLayout is NULL.
pFrameLayout: layout of the frame.
See Also
IAAFDigitalImageDescriptor::GetGamma
The GetGamma method getGamma() Gets the Gamma property.
Syntax
HRESULT GetGamma(
aafRational_t* pGamma
);
Parameters
[out] pGamma
If the method succeeds, specifies a pointer to a gamma object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetGamma() Gets the Gamma property. Specifies the expected output
gamma setting on the video display device. Succeeds if all of
the following are true: - pGamma is a valid pointer If this method
fails, pGamma will not be changed. This method will return the
following codes: AAFRESULT_SUCCESS - succeeded. (This is the
only code indicating success.) AAFRESULT_NULL_PARAM - pGamma
is NULL.
pGamma: Optional..
See Also
IAAFDigitalImageDescriptor::GetImageAlignmentFactor
The GetImageAlignmentFactor method getImageAlignmentFactor() Gets the ImageAlignmentFactor property.
Syntax
HRESULT GetImageAlignmentFactor(
aafInt32* pImageAlignmentFactor
);
Parameters
[out] pImageAlignmentFactor
If the method succeeds, specifies a pointer to an image alignment factor object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetImageAlignmentFactor() Gets the ImageAlignmentFactor property.
Specifies the alignment when storing the digital essence. For
example, a value of 16 means that the image is stored on 16-byte
boundaries. The starting point for a field will always be a multiple
of 16 bytes. If the field does not end on a 16-byte boundary,
it is padded out to the next 16-byte boundary. Succeeds if all
of the following are true: - pImageAlignmentFactor is a valid
pointer If this method fails, pImageAlignmentFactor will not
be changed. This method will return the following codes: AAFRESULT_SUCCESS
- succeeded. (This is the only code indicating success.) AAFRESULT_NULL_PARAM
- pImageAlignmentFactor is NULL.
pImageAlignmentFactor: Optional..
See Also
IAAFDigitalImageDescriptor::GetImageAspectRatio
The GetImageAspectRatio method getImageAspectRatio() Gets the Image Aspect Ratio property.
Syntax
HRESULT GetImageAspectRatio(
aafRational_t* pImageAspectRatio
);
Parameters
[out] pImageAspectRatio
If the method succeeds, specifies a pointer to an image aspect ratio object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetImageAspectRatio() Gets the Image Aspect Ratio property.
This ratio describes the ratio between the horizontal size and
the vertical size in the intended final image. Succeeds if all
of the following are true: - pImageAspectRatio is a valid pointer
If this method fails, *pImageAspectRatio will not be changed.
This method will return the following codes: AAFRESULT_SUCCESS
- succeeded. (This is the only code indicating success.) AAFRESULT_NULL_PARAM
- pImageAspectRatio is NULL.
pImageAspectRatio: Ratio between horizontal and vertical size.
See Also
IAAFDigitalImageDescriptor::GetSampledView
The GetSampledView method getSampledView() Gets the dimensions of sampled view.
Syntax
HRESULT GetSampledView(
aafUInt32* pSampledHeight,
aafUInt32* pSampledWidth,
aafInt32* pSampledXOffset,
aafInt32* pSampledYOffset
);
Parameters
[out] pSampledHeight
If the method succeeds, specifies a pointer to a sampled height object.
[out] pSampledWidth
If the method succeeds, specifies a pointer to a sampled width object.
[out] pSampledXOffset
If the method succeeds, specifies a pointer to a sampledXOffset object.
[out] pSampledYOffset
If the method succeeds, specifies a pointer to a sampledYOffset object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetSampledView() Gets the dimensions of sampled view. Typically
this includes any VITC lines as well as the active picture area,
but excludes leading blank video lines. The offset is specified
relative to the rectangle specified by Set/GetStoredView(). Succeeds
if all of the following are true: - pSampledHeight, pSampledWidth,
pSampledXOffset and pSampledYOffset are valid pointers If any
of the input parameters are NULL, the property will not be returned.
If this method fails, *pSampledHeight, *pSampledWidth, *pSampledXOffset,
and *pSampledYOffset will not be changed. This method will return
the following codes: AAFRESULT_SUCCESS - succeeded. (This is
the only code indicating success.) AAFRESULT_NULL_PARAM - any
of pSampledHeight, pSampledWidth, pSampledXOffset, or pSampledYOffset
are NULL.
pSampledHeight: Number of pixels in horizontal dimension of sampled
view..
pSampledWidth: Number of pixels from top left corner of sampled
view. Optional..
pSampledXOffset: Number of pixels from top left corner of sampled
view. Optional..
See Also
IAAFDigitalImageDescriptor::GetStoredView
The GetStoredView method getStoredView() Gets the dimension of the stored view.
Syntax
HRESULT GetStoredView(
aafUInt32* pStoredHeight,
aafUInt32* pStoredWidth
);
Parameters
[out] pStoredHeight
If the method succeeds, specifies a pointer to a stored height object.
[out] pStoredWidth
If the method succeeds, specifies a pointer to a stored width object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetStoredView() Gets the dimension of the stored view. Typically
this includes leading blank video lines, any VITC lines, as well
as the active picture area. Succeeds if all of the following
are true: - pStoredHieght and pStoredWidth are valid pointers.
If this method fails, the *pStoredHieght and *pStoredWidth will
not be changed. This method will return the following codes:
AAFRESULT_SUCCESS - succeeded. (This is the only code indicating
success.) AAFRESULT_NULL_PARAM - either pStoredHeight or pStoredWidth
is NULL.
pStoredHeight: Number of pixels in horizontal dimension of stored
view..
See Also
IAAFDigitalImageDescriptor::GetVideoLineMap
The GetVideoLineMap method getVideoLineMap() Gets the VideoLineMap property.
Syntax
HRESULT GetVideoLineMap(
aafUInt32 numberElements,
aafInt32* pVideoLineMap
);
Parameters
[in] numberElements
Specifies numberelements.
[out] pVideoLineMap
If the method succeeds, specifies a pointer to a video line map object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetVideoLineMap() Gets the VideoLineMap property. The video line
map specifies the scan line in the analog source that corresponds
to the beginning of each digitized field. For single-field video,
there is 1 value in the array. For interleaved video, there are
2 values in the array. The values are written to the array specified
by pVideoLineMap, which is of size numberElements. The required
size may be found by calling GetVideoLineMapSize(). Succeeds
if all of the following are true: - pVideoLineMap is a valid
pointer. - numberElements indicates the array is large enough
to hold the data. If this method fails, videoLineMap 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.
numberElements: Array to hold the Video Line Map information.
See Also
IAAFDigitalImageDescriptor::GetVideoLineMapSize
The GetVideoLineMapSize method getVideoLineMapSize() Get the number of elements in the VideoLineMap property array.
Syntax
HRESULT GetVideoLineMapSize(
aafUInt32* pNumberElements
);
Parameters
[out] pNumberElements
If the method succeeds, specifies a pointer to a number elements object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetVideoLineMapSize() Get the number of elements in the VideoLineMap
property array. Succeeds if all of the following are true: -
pNumberElements is a valid pointer If this method fails, *pNumberElements
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.
pNumberElements: The number of elements in the array.
See Also
IAAFDigitalImageDescriptor::SetAlphaTransparency
The SetAlphaTransparency method setAlphaTransparency() Sets the AlphaTransparency property.
Syntax
HRESULT SetAlphaTransparency(
aafAlphaTransparency_t AlphaTransparency
);
Parameters
[in] AlphaTransparency
Specifies alpha transparency.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetAlphaTransparency() Sets the AlphaTransparency property.
This property is optional. Valid values: kMaxValueTransparent
- means the maximum Alpha value is transparent kMinValueTransparent
- means the minimum Alpha value is transparent Succeeds if all
of the following are true: - AlphaTransparency is a valid value.
If this method fails, the AlphaTransparency property will not
be changed. This method will return the following codes: AAFRESULT_SUCCESS
- succeeded. (This is the only code indicating success.) AAFRESULT_ILLEGAL_VALUE
- AlphaTransparency is not a valid value.
AlphaTransparency: Alpha Transparency value..
See Also
IAAFDigitalImageDescriptor::SetCompression
The SetCompression method .
Syntax
HRESULT SetCompression(
aafUID_t* pCodecID
);
Parameters
[in] pCodecID
Pointer to a codecID object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFDigitalImageDescriptor
************************ The IAAFDigitalImageDescriptor interface
is implemented by objects which describe video content data formatted
either using RGBA or luminance/chrominance formatting. The geometry
properties accessed by Set/GetStoredView(), Set/GetSampledView(),
and Set/GetDisplayView() describe the dimensions and meaning
of the stored pixels in the image. The geometry describes the
pixels of an uncompressed image. Consequently, the geometry properties
are independent of the compression and subsampling. Three separate
geometries - stored, sampled, and display views - are used to
define a set of different views on uncompressed digital data.
All views are constrained to rectangular regions, which means
that storage and sampling has to be rectangular. The relationships
among the views can be shown by the following rectangles, representing
areas of a video image: ------------------ | | | Stored View
| | | -------------- ------------------ -------- | | | | Sample
| Analog Video | | Sampled View | Process | Source | | | | Information
| | -------------- | | | | | | | | | | | Display View | | |
| | | | | | | | -------------- | | | | | | | ------------------
-------- | | -------------- The stored view is the entire data
region corresponding to a single uncompressed frame or field
of the image, and is defined by its horizontal and vertical dimension
properties. The stored view may include data that is not derived
from, and would not usually be translated back to, analog data.
The sampled view is defined to be the rectangular dimensions
in view. sampled image.
See Also
IAAFDigitalImageDescriptor::SetDisplayView
The SetDisplayView method setDisplayView() Sets the dimension of display view.
Syntax
HRESULT SetDisplayView(
aafUInt32 DisplayHeight,
aafUInt32 DisplayWidth,
aafInt32 DisplayXOffset,
aafInt32 DisplayYOffset
);
Parameters
[in] DisplayHeight
Specifies display height.
[in] DisplayWidth
Specifies display width.
[in] DisplayXOffset
Specifies displayXOffset.
[in] DisplayYOffset
Specifies displayYOffset.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetDisplayView() Sets the dimension of display view. Typically
this includes the active picture area, but excludes leading blank
video lines and any VITC lines. The offset is specified relative
to the rectangle specified by Set/GetStoredView(). The following
properties are optional: DisplayHeight - The default value is
the storedHeight. Use storedHeight to select the default. DisplayWidth
- The default value is the storedWidth. Use storedWidth to select
the default. DisplayXOffset - The default value is 0. Use a value
of 0 to select the default. DisplayYOffset - The default value
is 0. Use a value of 0 to select the default. Note that The specified
display rectangle may exist outside the SampledView or even the
StoredView. If this method fails the DisplayHeight, DisplayWidth,
DisplayXOffset and DisplayYOffset properties will not be changed.
This method will return the following codes: AAFRESULT_SUCCESS
- succeeded. (This is the only code indicating success.) AAFRESULT_ILLEGAL_VALUE
- The area specified by DisplayHeight and DisplayXOffset is
outside the StoredView, or the area specified by DisplayWidth
and DisplayYOffset is outside the StoredView.
DisplayHeight: Number of pixels in horizontal dimension of display
view. Optional..
DisplayWidth: Number of pixels from the top-left corner of the
display view. Optional..
DisplayXOffset: Number pixels from the top-left corner of the
display view. Optional..
See Also
IAAFDigitalImageDescriptor::SetFrameLayout
The SetFrameLayout method setFrameLayout() Sets the frame layout.
Syntax
HRESULT SetFrameLayout(
aafFrameLayout_t FrameLayout
);
Parameters
[in] FrameLayout
Specifies frame layout.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetFrameLayout() Sets the frame layout. The frame layout describes
whether all data for a complete sample is in one frame or is
split into more than/ one field. Values are: kNoLayout - Default;
not a valid value. kFullFrame - Each frame contains a full sample
in progressive scan lines. kSeparateFields - Each sample consists
of two fields, which when interlaced produce a full sample.
kOneField - Each sample consists of two interlaced fields, but
only one field is stored in the data stream. kMixedFields - Similar
to FullFrame, except the two fields may have been sampled at
different times. Succeeds if all of the following are true: -
frameLayout is a valid value If this method fails, the Frame
Layout property will not be changed. This method will return
the following codes: AAFRESULT_SUCCESS - succeeded. (This is
the only code indicating success.) AAFRESULT_ILLEGAL_VALUE -
FrameLayout is not a valid value.
FrameLayout: layout of the frame.
See Also
IAAFDigitalImageDescriptor::SetGamma
The SetGamma method setGamma() Sets the Gamma property.
Syntax
HRESULT SetGamma(
aafRational_t Gamma
);
Parameters
[in] Gamma
Specifies gamma.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetGamma() Sets the Gamma property. Specifies the expected output
gamma setting on the video display device. Succeeds if all of
the following are true: - If this method fails, the Gamma property
will not be changed. This method will return the following codes:
AAFRESULT_SUCCESS - succeeded. (This is the only code indicating
success.)
Gamma: Optional.
See Also
IAAFDigitalImageDescriptor::SetImageAlignmentFactor
The SetImageAlignmentFactor method setImageAlignmentFactor() Sets the ImageAlignmentFactor property.
Syntax
HRESULT SetImageAlignmentFactor(
aafInt32 ImageAlignmentFactor
);
Parameters
[in] ImageAlignmentFactor
Specifies image alignment factor.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetImageAlignmentFactor() Sets the ImageAlignmentFactor property.
Specifies the alignment when storing the digital essence. For
example, a value of 16 means that the image is stored on 16-byte
boundaries. The starting point for a field will always be a multiple
of 16 bytes. If the field does not end on a 16-byte boundary,
it is padded out to the next 16-byte boundary. Succeeds if all
of the following are true: If this method fails, the ImageAlignmentFactor
property will not be changed. This method will return the following
codes: AAFRESULT_SUCCESS - succeeded. (This is the only code
indicating success.)
ImageAlignmentFactor: Optional..
See Also
IAAFDigitalImageDescriptor::SetImageAspectRatio
The SetImageAspectRatio method setImageAspectRatio() Sets the Image Aspect Ratio property.
Syntax
HRESULT SetImageAspectRatio(
aafRational_t ImageAspectRatio
);
Parameters
[in] ImageAspectRatio
Specifies image aspect ratio.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetImageAspectRatio() Sets the Image Aspect Ratio property.
This ratio describes the ratio between the horizontal size and
the vertical size in the intended final image. Succeeds if all
of the following are true: - If this method fails, the Image
Access Ratio property will not be changed. This method will return
the following codes: AAFRESULT_SUCCESS - succeeded. (This is
the only code indicating success.)
ImageAspectRatio: Ratio between horizontal and vertical size.
See Also
IAAFDigitalImageDescriptor::SetSampledView
The SetSampledView method setSampledView() Sets the dimensions of sampled view.
Syntax
HRESULT SetSampledView(
aafUInt32 SampledHeight,
aafUInt32 SampledWidth,
aafInt32 SampledXOffset,
aafInt32 SampledYOffset
);
Parameters
[in] SampledHeight
Specifies sampled height.
[in] SampledWidth
Specifies sampled width.
[in] SampledXOffset
Specifies sampledXOffset.
[in] SampledYOffset
Specifies sampledYOffset.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetSampledView() Sets the dimensions of sampled view. Typically
this includes any VITC lines as well as the active picture area,
but excludes leading blank video lines. The offset is specified
relative to the rectangle specified by Set/GetStoredView(). The
following properties are optional: SampledXOffset - The default
value is 0. Use a value of 0 to select the default. SampledYOffset
- The default value is 0. Use a value of 0 to select the default.
Succeeds if all of the following are true: - The given dimensions
exist within the StoredView. If this method fails, the SampledXOffset
and SampledYOffset properties will not be changed. This method
will return the following codes: AAFRESULT_SUCCESS - succeeded.
(This is the only code indicating success.) AAFRESULT_ILLEGAL_VALUE
- The area specified by SampledHeight and SampledXOffset is
outside the StoredView, or the area specified by SampledWidth
and SampledYOffset is outside the StoredView.
SampledHeight: Number of pixels in horizontal dimension of sampled
view..
SampledWidth: Number of pixels from top left corner of sampled
view. Optional..
SampledXOffset: Number of pixels from top left corner of sampled
view. Optional..
See Also
IAAFDigitalImageDescriptor::SetStoredView
The SetStoredView method setStoredView() Sets the dimension of the stored view.
Syntax
HRESULT SetStoredView(
aafUInt32 StoredHeight,
aafUInt32 StoredWidth
);
Parameters
[in] StoredHeight
Specifies stored height.
[in] StoredWidth
Specifies stored width.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetStoredView() Sets the dimension of the stored view. Typically
this includes leading blank video lines, any VITC lines, as well
as the active picture area. If this method fails the Stored Height
and Stored Width properties will not be changed. This method
will return the following codes: AAFRESULT_SUCCESS - succeeded.
(This is the only code indicating success.)
StoredHeight: Number of pixels in horizontal dimension of stored
view..
See Also
IAAFDigitalImageDescriptor::SetVideoLineMap
The SetVideoLineMap method setVideoLineMap() Sets the VideoLineMap property.
Syntax
HRESULT SetVideoLineMap(
aafUInt32 numberElements,
aafInt32* pVideoLineMap
);
Parameters
[in] numberElements
Specifies numberelements.
[in] pVideoLineMap
Pointer to a video line map object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetVideoLineMap() Sets the VideoLineMap property. The video line
map specifies the scan line in the analog source that corresponds
to the beginning of each digitized field. For single-field video,
there is 1 value in the array. For interleaved video, there are
2 values in the array. Succeeds if all of the following are true:
- pVideoLineMap is a valid pointer If this method fails, the
Video Line Map 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 -
pVideoLineMap is NULL.
numberElements: Array to hold the Video Line Map information.
See Also
IAAFEdgecode Interface
In addition to the methods inherited from IUnknown, the IAAFEdgecode interface exposes the following methods.
Create
GetEdgecode
The AAFEdgecode object implements the IAAFEdgecode interface and also implements the following:
IAAFEdgecode::Create
The Create method ************************ Interface IAAFEdgecode ************************ c-11d2-8411-00600832acb8 Create() This function creates a new edgecode clip with the given property values.
Syntax
HRESULT Create(
aafLength_t length,
aafEdgecode_t edgecode
);
Parameters
[in] length
Specifies length.
[in] edgecode
Specifies edgecode.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFEdgecode ************************
c-11d2-8411-00600832acb8 Create() This function creates a new
edgecode clip with the given property values. The edgecode value
is represented with an aafEdgecode_t struct consisting of startFrame,
filmKind, and codeFormat.
length: Edgecode Value.
See Also
IAAFEdgecode::GetEdgecode
The GetEdgecode method getEdgecode() This set of functions returns the required property values for the object identified by XXX.
Syntax
HRESULT GetEdgecode(
aafEdgecode_t* edgecode
);
Parameters
[out] edgecode
Specifies edgecode.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetEdgecode() This set of functions returns the required property
values for the object identified by XXX.
edgecode: Edgecode.
See Also
IAAFEndian Interface
In addition to the methods inherited from IUnknown, the IAAFEndian interface exposes the following methods.
GetNativeByteOrder
GetStoredByteOrder
IAAFEndian::GetNativeByteOrder
The GetNativeByteOrder method getNativeByteOrder() Returns the native "Endian-ness" of the platform on which this is running.
Syntax
HRESULT GetNativeByteOrder(
eAAFByteOrder_t* pOrder
);
Parameters
[out] pOrder
If the method succeeds, specifies a pointer to an order object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetNativeByteOrder() Returns the native "Endian-ness" of the
platform on which this is running. Succeeds if all of the following
are true: - the pOrder pointer is valid. If this method fails
nothing is written to *pOrder. 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_NULL_PARAM - pOrder is null.
pOrder: Pointer to place where byte order is to be put.
See Also
IAAFEndian::GetStoredByteOrder
The GetStoredByteOrder method ************************ Interface IAAFEndian ************************ This interface is used to allow the user to determine the byte order of this object.
Syntax
HRESULT GetStoredByteOrder(
eAAFByteOrder_t* pOrder
);
Parameters
[out] pOrder
If the method succeeds, specifies a pointer to an order object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFEndian ************************
This interface is used to allow the user to determine the byte
order of this object. Note that the byte order of the object
stored in the AAF file may be different from the native byte
order of this machine. Note also that both pieces of information
are available here. Byte order of newly created AAF files is
set upon creation of that file. It is set to the byte order of
the creating machine. 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 - insufficient
system memory is available to perform the operation. AAFRESULT_NOT_INITIALIZED
- This object has not yet had Initialize() called on it through
this object's primary interface. Note that IAAFEndian is not
a primary interface for a concrete class, so it is not appropriate
for the Initialize() method to exist in this interface. The Initialize()
method is available through the concrete object's primary interface.
1-11D2-841B-00600832ACB8 GetStoredByteOrder() Returns the "Endian-ness"
in which the current object was or will be stored. If this is
a transient object (i.e., one which has not been persisted) then
it will return the native byte order of the platform on which
this is running. Succeeds if all of the following are true: -
the pOrder pointer is valid. If this method fails nothing is
written to *pOrder. 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_NULL_PARAM
- pOrder is null.
pOrder: Pointer to place where byte order is to be put.
See Also
IAAFEssenceAccess Interface
In addition to the methods inherited from IUnknown, the IAAFEssenceAccess interface exposes the following methods.
CompleteWrite
GetCodecID
GetCodecName
GetEmptyFileFormat
GetFileFormat
GetFileFormatParameterList
GetLargestSampleSize
GetSampleCount
GetSampleFrameSize
PutFileFormat
ReadFractionalSample
ReadSamples
Seek
SetEssenceCodecFlavour
SetTransformParameters
WriteFractionalSample
WriteSamples
IAAFEssenceAccess::CompleteWrite
The CompleteWrite method comm This will be required in order to send private data to the codec.
Syntax
HRESULT CompleteWrite();
Parameters
This method takes no parameters.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
comm This will be required in order to send private data to the
codec. comm The name will be truncated to fit within "buflen"
bytes. /****/ CompleteWrite() Handle any format related writing
at the end and adjust mob lengths. comm Must be called before
releasing a write essence access. Standard errors (see top of
file). AAFRESULT_STREAM_FULL - The essence can not be written
because of a fault such as a disk full error in the underlying
operating system.
See Also
IAAFEssenceAccess::GetCodecID
The GetCodecID method comm No other call uses this name, so it may be fully descriptive, esp.
Syntax
HRESULT GetCodecID(
aafCodecID_t* codecID
);
Parameters
[out] codecID
Specifies codecID.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
comm No other call uses this name, so it may be fully descriptive,
esp. of limitations. comm The name will be truncated to fit within
"buflen" bytes. comm Possible Errors:nl Standard errors (see
top of file).nl AAFRESULT_CODEC_INVALID - The given codec ID
is not loaded. AAFRESULT_SMALLBUF - The buffer is not large enough
to hold the data /****/ GetCodecID() Returns the codec ID being
used to handle the specified essence.
codecID: Returns the current codec ID.
See Also
IAAFEssenceAccess::GetCodecName
The GetCodecName method /****/ GetCodecName() Returns the full name of the given codec expanded for human consumption.
Syntax
HRESULT GetCodecName(
aafUInt32 namelen,
aafCharacter* name
);
Parameters
[in] namelen
Specifies namelen.
[out] name
Specifies name.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ GetCodecName() Returns the full name of the given codec
expanded for human consumption.
namelen: The buffer to fill.
See Also
IAAFEssenceAccess::GetEmptyFileFormat
The GetEmptyFileFormat method /****/ GetEmptyFileFormat() Returns an empty AAFEssenceFormat object.
Syntax
HRESULT GetEmptyFileFormat(
IAAFEssenceFormat** ops
);
Parameters
[out] ops
Specifies ops.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ GetEmptyFileFormat() Returns an empty AAFEssenceFormat
object. This is the factory method for AAFEssenceFormat.
ops: An ampty AAFEssenceFormat object.
See Also
IAAFEssenceAccess::GetFileFormat
The GetFileFormat method comm Useful only on reading, you can't seek aound while writing essence.
Syntax
HRESULT GetFileFormat(
IAAFEssenceFormat* opsTemplate,
IAAFEssenceFormat** opsResult
);
Parameters
[in] opsTemplate
Specifies opstemplate.
[out] opsResult
Specifies opsresult.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
comm Useful only on reading, you can't seek aound while writing
essence. comm An audio frame is one sample across all channels.
AAFRESULT_BADSAMPLEOFFSET -- Hit the end of the essence (like
EOF) while reading. /****/ GetFileFormat() Given an AAFEssenceFormat,
read the essence parameters inside and set the values from the
file format.
opsTemplate: Another AAFEssenceFormat with values set.
See Also
IAAFEssenceAccess::GetFileFormatParameterList
The GetFileFormatParameterList method /****/ GetFileFormatParameterList() Returns an AAFEssenceFormat containing a list of all parameters supported by the current codec.
Syntax
HRESULT GetFileFormatParameterList(
IAAFEssenceFormat** ops
);
Parameters
[out] ops
Specifies ops.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ GetFileFormatParameterList() Returns an AAFEssenceFormat
containing a list of all parameters supported by the current
codec.
ops: An ampty AAFEssenceFormat object.
See Also
IAAFEssenceAccess::GetLargestSampleSize
The GetLargestSampleSize method comm Writes fractional samples of essence to the stream.
Syntax
HRESULT GetLargestSampleSize(
aafUID_t dataDef,
aafLength_t* maxSize
);
Parameters
[in] dataDef
Specifies datadef.
[out] maxSize
Specifies maxsize.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
comm Writes fractional samples of essence to the stream. When
enough bytes have been written to constitute one sample, then
the number of samples will be incremented by one. This function
is useful in low-memory situations. comm Possible Errors: Standard
errors (see top of file). AAFRESULT_STREAM_FULL -- The essence
can not be written because of a fault such as a disk full error
in the underlying operating system.) /****/ GetLargestSampleSize()
Returns the size in bytes of the largest sample for a given essence
type.
dataDef: the largest sample size.
See Also
IAAFEssenceAccess::GetSampleCount
The GetSampleCount method comm This is the format expected on writes and produced on reads.
Syntax
HRESULT GetSampleCount(
aafUID_t dataDef,
aafLength_t* result
);
Parameters
[in] dataDef
Specifies datadef.
[out] result
Specifies result.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
comm This is the format expected on writes and produced on reads.
comm On writes, the data will be written in this format, except
where a software codec may be used. On reads, the data will be
translated to this format. comm The order of the parameters does
matter, as transformations will be applied in that order to get
from the on-disk format to the in-memory format. /****/ GetSampleCount()
Returns the number of samples of the given essence type on the
given essence stream.
dataDef: find out how many samples are present.
See Also
IAAFEssenceAccess::GetSampleFrameSize
The GetSampleFrameSize method comm For uncompressed data, or the output of the software codec, the sample size will propably be a constant.
Syntax
HRESULT GetSampleFrameSize(
aafUID_t dataDef,
aafPosition_t frameNum,
aafLength_t* frameSize
);
Parameters
[in] dataDef
Specifies datadef.
[in] frameNum
Specifies framenum.
[out] frameSize
Specifies framesize.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
comm For uncompressed data, or the output of the software codec,
the sample size will propably be a constant. comm The essence
type parameter exists to support codecs with multiple interleaved
essence types. Add illegal media kind error. /****/ GetSampleFrameSize()
Returns the size in bytes of the given sample for a given essence
type.
dataDef: for this [1-based] sample frame number.
frameNum: How big is the sample frame.
See Also
IAAFEssenceAccess::PutFileFormat
The PutFileFormat method /****/ PutFileFormat() Given an AAFEssenceFormat, read the essence parameters inside and change the file format.
Syntax
HRESULT PutFileFormat(
IAAFEssenceFormat* ops
);
Parameters
[in] ops
Specifies ops.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ PutFileFormat() Given an AAFEssenceFormat, read the essence
parameters inside and change the file format.
ops: An AAFEssenceFormat with one or more parameter/value pairs.
See Also
IAAFEssenceAccess::ReadFractionalSample
The ReadFractionalSample method comm This call will only return a single channel of essence from an interleaved stream.
Syntax
HRESULT ReadFractionalSample(
aafUInt32 nBytes,
aafDataBuffer_t buffer,
aafUInt32* bytesRead
);
Parameters
[in] nBytes
Integer containing the bytes.
[out] buffer
Specifies buffer.
[out] bytesRead
Specifies bytesread.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
comm This call will only return a single channel of essence from
an interleaved stream. comm A video sample is a frame. Buflen
is in bytes, and should be large enough to hold the samples after
the requested transforms have been applied. comm Possible Errors:
Standard errors (see top of file). AAFRESULT_END_OF_DATA -- Hit
the end of the essence (like EOF) while reading. AAFRESULT_SMALLBUF
-- Buffer too small for samples. /****/ ReadFractionalSample()
Reads fractional samples from a file.
nBytes: transfer into this buffer.
buffer: The number of bytes actually transferred.
See Also
IAAFEssenceAccess::ReadSamples
The ReadSamples method comm A video sample is one frame.
Syntax
HRESULT ReadSamples(
aafUInt32 nSamples,
aafUInt32 buflen,
aafDataBuffer_t buffer,
aafUInt32* samplesRead,
aafUInt32* bytesRead
);
Parameters
[in] nSamples
Integer containing the samples.
[in] buflen
Specifies buflen.
[out] buffer
Specifies buffer.
[out] samplesRead
Specifies samplesread.
[out] bytesRead
Specifies bytesread.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
comm A video sample is one frame. essence type /****/ ReadSamples()
Read a given number of samples from an opened essence stream.
nSamples: into a buffer of this size.
buflen: The transfer buffer.
buffer: The number of samples actually read.
samplesRead: The number of bytes actually read.
See Also
IAAFEssenceAccess::Seek
The Seek method comm This function allows reading video frames in pieces, for low-memory situations.
Syntax
HRESULT Seek(
aafPosition_t sampleFrameNum
);
Parameters
[in] sampleFrameNum
Specifies sampleframe num.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
comm This function allows reading video frames in pieces, for
low-memory situations. comm The buffer must be large enough to
hold the specified number of bytes. comm Possible Errors: Standard
errors (see top of file). AAFRESULT_END_OF_ESSENCE -- Hit the
end of the essence (like EOF) while reading. AAFRESULT_SMALLBUF
-- Buffer too small for samples. /****/ Seek() The seek function
for essence.
sampleFrameNum: A 0-based offset in units of the sample rate
to seek to..
See Also
IAAFEssenceAccess::SetEssenceCodecFlavour
The SetEssenceCodecFlavour method ************************ Interface IAAFEssenceAccess ************************ AAFEssenceAccess is an interace which provides streaming access over multiple channels of essence data.
Syntax
HRESULT SetEssenceCodecFlavour(
aafUID_t flavour
);
Parameters
[in] flavour
Specifies flavour.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFEssenceAccess ************************
AAFEssenceAccess is an interace which provides streaming access
over multiple channels of essence data. This interface deals
with essence data which is in an uncompressed form, and handles
compression or decompression of the data if required. You may
need to QueryInterface for an AAFEssenceAccess interface in order
to do non-read write operations such as seek. For access to data
in raw form, call QueryInterface() on this interface which gives
access to raw I/O methods. You should call the CreateMultiEssence
or OpenMultiEssence calls on AAFMasterMob in order to get an
interface pointer to AAFEssenceAccess, as there is no public
create or open method in the interface. A number of errors can
be returned from most method calls, These are: AAFRESULT_NOMEMORY
-- The system ran out of memory processing the method AAFRESULT_NULL_PARAM
-- A NULL parameter was passed in which was required. 8-11D2-bfaa-006097116212
SetEssenceCodecFlavour() Sets which flavour of the codec ID is
to be used.
flavour: The particular flavour.
See Also
IAAFEssenceAccess::SetTransformParameters
The SetTransformParameters method comm For uncompressed data, or the output of the software codec, the sample size will propably be a constant.
Syntax
HRESULT SetTransformParameters(
IAAFEssenceFormat* op
);
Parameters
[in] op
Specifies op.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
comm For uncompressed data, or the output of the software codec,
the sample size will propably be a constant. comm The essence
type parameter exists to support codecs with multiple interleaved
essence types. comm Possible Errors: Standard errors (see top
of file). AAFRESULT_NULL_PARAM -- A return parameter was NULL.
AAFRESULT_BADSAMPLEOFFSET -- The supplied sample offset is out
of range /****/ SetTransformParameters() Sets a series of format
objects which will be used to describe the in-memory format.
op: A set of transforms to apply to the essence if required.
See Also
IAAFEssenceAccess::WriteFractionalSample
The WriteFractionalSample method a single video frame is ONE sample.
Syntax
HRESULT WriteFractionalSample(
aafUInt32 nBytes,
aafDataBuffer_t buffer,
aafUInt32* bytesWritten
);
Parameters
[in] nBytes
Integer containing the bytes.
[in] buffer
Specifies buffer.
[out] bytesWritten
Specifies byteswritten.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
A single video frame is ONE sample. Buflen must be large enough
to hold the total sample size. comm Possible Errors: Standard
errors (see top of file). AAFRESULT_SINGLE_CHANNEL_OP -- Tried
to write to an interleaved stream. AAFRESULT_BADDATAADDRESS --
The buffer must not be a NULL pointer. /****/ WriteFractionalSample()
Writes partual samples of essence to a stream.
nBytes: from a buffer.
buffer: Returns the number of bytes actualy written.
See Also
IAAFEssenceAccess::WriteSamples
The WriteSamples method comm An example of a flavour would be a number of standard starting JPEG tables.
Syntax
HRESULT WriteSamples(
aafUInt32 nSamples,
aafDataBuffer_t buffer,
aafUInt32 buflen
);
Parameters
[in] nSamples
Integer containing the samples.
[in] buffer
Specifies buffer.
[in] buflen
Specifies buflen.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
comm An example of a flavour would be a number of standard starting
JPEG tables. /****/ WriteSamples() Writes data to a single-channel
essence stream.
nSamples: from a buffer.
buffer: of this size.
See Also
IAAFEssenceData Interface
In addition to the methods inherited from IUnknown, the IAAFEssenceData interface exposes the following methods.
GetFileMob
GetFileMobID
GetPosition
GetSize
Read
SetFileMob
SetPosition
Write
IAAFEssenceData::GetFileMob
The GetFileMob method /****/ GetFileMob() Associates a weak reference to the given file mob with the essence data.
Syntax
HRESULT GetFileMob(
IAAFSourceMob** ppFileMob
);
Parameters
[in] ppFileMob
Pointer to a variable containing a pointer to a file mob object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ GetFileMob() Associates a weak reference to the given
file mob with the essence data. Succeeds if all of the following
are true: - the ppFileMob pointer is valid and a weak reference
to the associated file mob can be resolved. If this method fails
no state will be 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_NULL_PARAM - ppFileMob is null.
ppFileMob: reference to a file mob.
See Also
IAAFEssenceData::GetFileMobID
The GetFileMobID method /****/ GetFileMobID() Return the mob id used to find the file mob associated with this essence.
Syntax
HRESULT GetFileMobID(
aafUID_t* pFileMobID
);
Parameters
[out] pFileMobID
If the method succeeds, specifies a pointer to a file mobID object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ GetFileMobID() Return the mob id used to find the file
mob associated with this essence. The file mob must exist in
the same file as this essence data.
pFileMobID: the file mob id associated with essence.
See Also
IAAFEssenceData::GetPosition
The GetPosition method /****/ GetPosition() Get the absolute position within the essence data.
Syntax
HRESULT GetPosition(
aafPosition_t* pOffset
);
Parameters
[out] pOffset
If the method succeeds, specifies a pointer to an offset object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ GetPosition() Get the absolute position within the essence
data.
pOffset: offset from beginning of essence.
See Also
IAAFEssenceData::GetSize
The GetSize method /****/ GetSize() Return the total size of the essence data.
Syntax
HRESULT GetSize(
aafLength_t* pSize
);
Parameters
[out] pSize
If the method succeeds, specifies a pointer to a size object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ GetSize() Return the total size of the essence data.
pSize: size of essence data.
See Also
IAAFEssenceData::Read
The Read method /****/ Read() Read pre-interleaved data from a essence stream.
Syntax
HRESULT Read(
aafUInt32 bytes,
aafDataBuffer_t buffer,
aafUInt32* bytesRead
);
Parameters
[in] bytes
Specifies bytes.
[out] buffer
Specifies buffer.
[out] bytesRead
Specifies bytesread.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ Read() Read pre-interleaved data from a essence stream.
bytes: here is the buffer.
See Also
IAAFEssenceData::SetFileMob
The SetFileMob method /****/ SetFileMob() Associates a weak reference to the given file mob with the essence data.
Syntax
HRESULT SetFileMob(
IAAFSourceMob* pFileMob
);
Parameters
[in] pFileMob
Pointer to a file mob object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ SetFileMob() Associates a weak reference to the given
file mob with the essence data. Succeeds if all of the following
are true: - the pFileMob pointer is valid and points to a file
mob (contains a file descriptor). If this method fails no state
will be 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_NULL_PARAM
- pFileMob is null.
pFileMob: reference to a file mob.
See Also
IAAFEssenceData::SetPosition
The SetPosition method /****/ SetPosition() Seek to absolute position within the essence data.
Syntax
HRESULT SetPosition(
aafPosition_t offset
);
Parameters
[in] offset
Specifies offset.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ SetPosition() Seek to absolute position within the essence
data.
offset: offset from beginning of essence.
See Also
IAAFEssenceData::Write
The Write method ************************ Interface IAAFEssenceData ************************ The IAAFEssenceData interface is used to modify AAFEssenceData objects, which contain the actual essence data (ex.
Syntax
HRESULT Write(
aafUInt32 bytes,
aafDataBuffer_t buffer,
aafUInt32* bytesWritten
);
Parameters
[in] bytes
Specifies bytes.
[out] buffer
Specifies buffer.
[out] bytesWritten
Specifies byteswritten.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFEssenceData ************************
The IAAFEssenceData interface is used to modify AAFEssenceData
objects, which contain the actual essence data (ex. WAVE) when
it is contained within an AAF file. Normally the client application
would access the essence through the IAAFEssenceAccess interface,
which handles the work of finding and (de)compressing the data.
However, in rare cases direct access to the data is required,
so this interface is exposed. 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_NULL_PARAM
- One of the passed in pointers is NULL. AAFRESULT_NOMEMORY
- insufficient system memory is available to perform the operation.
6-11d2-bf9d-00104bc9156d /****/ Write() Write pre-interleaved
data to a essence stream.
bytes: here is the buffer.
See Also
IAAFEssenceDescriptor Interface
In addition to the methods inherited from IUnknown, the IAAFEssenceDescriptor interface exposes the following methods.
AppendLocator
EnumAAFAllLocators
GetNumLocators
PrependLocator
IAAFEssenceDescriptor::AppendLocator
The AppendLocator method appendLocator() Append another locator to this essence descriptor.
Syntax
HRESULT AppendLocator(
IAAFLocator* pLocator
);
Parameters
[in] pLocator
Pointer to a locator object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
AppendLocator() Append another locator to this essence descriptor.
Use this function to add a locator to be scanned last when searching
for the essence (a secondary location for the essence). Succeeds
if all of the following are true: - the pLocator pointer is valid.
If this method fails no state will be 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_NULL_PARAM - pLocator
is null.
pLocator: Locator to append.
See Also
IAAFEssenceDescriptor::EnumAAFAllLocators
The EnumAAFAllLocators method enumAAFAllLocators() Returns an enumerator to the locators.
Syntax
HRESULT EnumAAFAllLocators(
IEnumAAFLocators** ppEnum
);
Parameters
[out] ppEnum
If the method succeeds, specifies a pointer to a variable containing a pointer to an enum object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
EnumAAFAllLocators() Returns an enumerator to the locators.
The number of locators may be zero if the essence is in the current
file. Succeeds if all of the following are true: - the ppEnum
pointer is valid. If this method fails nothing will be written
to *ppEnum. 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_NULL_PARAM
- ppEnum is null.
ppEnum: An enumerator to the locators on this essence descriptor.
See Also
IAAFEssenceDescriptor::GetNumLocators
The GetNumLocators method .
Syntax
HRESULT GetNumLocators(
aafInt32* pCount
);
Parameters
[out] pCount
If the method succeeds, specifies a pointer to a count object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFEssenceDescriptor ************************
The IAAFEssenceDescriptor interface is implemented by objects
which describe the format of the content data associated with
a File Source mob or of the media associated with a Physical
Source mob. 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 - insufficient
system memory is available to perform the operation. AAFRESULT_NOT_INITIALIZED
- This object has not yet had Initialize() called on it through
this object's primary interface. Note that IAAFEssenceDescriptor
is a primary interface for an abstract class, so it is not appropriate
for the Initialize() method to exist in this interface. The Initialize()
method is available through the concrete object's primary interface.
c-11D2-bfA4-006097116212 GetNumLocators() Return the number of
locators attached to this essence descriptor. The number of locators
may be zero if the essence is in the current file. Succeeds if
all of the following are true: - the pCount pointer is valid.
If this method fails nothing is written to *pCount. 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_NULL_PARAM -
pCount is null.
pCount: Returns the number of locators.
See Also
IAAFEssenceDescriptor::PrependLocator
The PrependLocator method prependLocator() Prepend another locator to this essence descriptor.
Syntax
HRESULT PrependLocator(
IAAFLocator* pLocator
);
Parameters
[in] pLocator
Pointer to a locator object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
PrependLocator() Prepend another locator to this essence descriptor.
Use this function to add a locator to be scanned first when searching
for the essence (a new primary location for the essence). Succeeds
if all of the following are true: - the pLocator pointer is valid.
If this method fails no state will be 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_NULL_PARAM - pLocator
is null.
pLocator: Locator to append.
See Also
IAAFEssenceFormat Interface
In addition to the methods inherited from IUnknown, the IAAFEssenceFormat interface exposes the following methods.
AddFormatSpecifier
GetFormatSpecifier
GetIndexedFormatSpecifier
NumFormatSpecifiers
IAAFEssenceFormat::AddFormatSpecifier
The AddFormatSpecifier method .
Syntax
HRESULT AddFormatSpecifier(
aafUID_t essenceFormatCode,
aafInt32 valueSize,
aafDataBuffer_t value
);
Parameters
[in] essenceFormatCode
Specifies essenceformat code.
[in] valueSize
Specifies valuesize.
[in] value
Specifies value.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFEssenceFormat ************************
The AAFEssenceFormat class represents a collection of parameters
(such as image height/width, audio sample width) which describes
a piece of essence. Each parameter is specified by an AUID, and
contains a variable length piece of data. When creating a piece
of essence, you should call AddFormatSpecifier() for each required
or known parameter, and the codec will supply defaults for other
optional parameters. 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 - insufficient
system memory is available to perform the operation. AAFRESULT_NOT_INITIALIZED
- This object has not yet had Initialize() called on it through
this object's primary interface. C-11d2-8088-006008143E6F AddFormatSpecifier()
Appends a format specifier to the AAFEssenceFormat. If essenceFormatCode
has already been added, then this call the value, otherwise the
value is appended.
essenceFormatCode: Size of preallocated buffer.
valueSize: Value data.
See Also
IAAFEssenceFormat::GetFormatSpecifier
The GetFormatSpecifier method comm The value data is passed in as a void * through the "value" argument.
Syntax
HRESULT GetFormatSpecifier(
aafUID_t essenceFormatCode,
aafInt32 valueSize,
aafDataBuffer_t value,
aafInt32* bytesRead
);
Parameters
[in] essenceFormatCode
Specifies essenceformat code.
[in] valueSize
Specifies valuesize.
[out] value
Specifies value.
[out] bytesRead
Specifies bytesread.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
comm The value data is passed in as a void * through the "value"
argument. The size of the value must be passed through the valueSize
argument. /****/ GetFormatSpecifier() The data value is returned
in a preallocated buffer of size valueSize.
essenceFormatCode: Size of preallocated buffer.
valueSize: Preallocated buffer to hold value.
value: Number of actual bytes read.
See Also
IAAFEssenceFormat::GetIndexedFormatSpecifier
The GetIndexedFormatSpecifier method /****/ GetIndexedFormatSpecifier() The data value is returned in a preallocated buffer of size valueSize.
Syntax
HRESULT GetIndexedFormatSpecifier(
aafInt32 index,
aafUID_t* essenceFormatCode,
aafInt32 valueSize,
aafDataBuffer_t value,
aafInt32* bytesRead
);
Parameters
[in] index
Specifies index.
[out] essenceFormatCode
Specifies essenceformat code.
[in] valueSize
Specifies valuesize.
[out] value
Specifies value.
[out] bytesRead
Specifies bytesread.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ GetIndexedFormatSpecifier() The data value is returned
in a preallocated buffer of size valueSize.
index: From aaddefuids.h.
essenceFormatCode: Size of preallocated buffer.
valueSize: Preallocated buffer to hold value.
value: Number of actual bytes read.
See Also
IAAFEssenceFormat::NumFormatSpecifiers
The NumFormatSpecifiers method comm The actual number of bytes read is returned in bytesRead.
Syntax
HRESULT NumFormatSpecifiers(
aafInt32* numSpecifiers
);
Parameters
[out] numSpecifiers
Specifies numspecifiers.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
comm The actual number of bytes read is returned in bytesRead.
If the buffer is not big enough to return the entire value, an
error is returned. /****/ NumFormatSpecifiers() The data value
is returned in a preallocated buffer of size valueSize.
numSpecifiers: The number of specifiers present..
See Also
IAAFEssenceGroup Interface
In addition to the methods inherited from IUnknown, the IAAFEssenceGroup interface exposes the following methods.
AppendChoice
GetIndexedChoice
GetNumChoices
GetStillFrame
SetStillFrame
The AAFEssenceGroup object implements the IAAFEssenceGroup interface and also implements the following:
IAAFEssenceGroup::AppendChoice
The AppendChoice method This method will return the following codes.
Syntax
HRESULT AppendChoice(
IAAFSourceClip* pChoice
);
Parameters
[in] pChoice
Pointer to a choice object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
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_NULL_PARAM
- ppStillFrame is null. AAFRESULT_NOT_INITIALIZED - This object
has not yet had Initialize() called on it.) /****/ AppendChoice()
Append another choice to this AAFEssenceGroup. Succeeds if all
of the following are true: - the pChoice pointer is valid. If
this method fails no state will be 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_NULL_PARAM - pChoice
is null.
pChoice: Source clip to add as a choice .
See Also
IAAFEssenceGroup::GetIndexedChoice
The GetIndexedChoice method /****/ GetIndexedChoice() Given an index, returns the corresponding source clip choice.
Syntax
HRESULT GetIndexedChoice(
aafUInt32 index,
IAAFSourceClip** ppChoice
);
Parameters
[in] index
Specifies index.
[out] ppChoice
If the method succeeds, specifies a pointer to a variable containing a pointer to a choice object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ GetIndexedChoice() Given an index, returns the corresponding
source clip choice. Succeeds if all of the following are true:
- the ppChoice pointer is valid. If this method fails nothing
will be written to *ppChoice. 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_MISSING_INDEX - The given index value is
not present. AAFRESULT_NULL_PARAM - ppChoice arg is NULL.
index: The representation at that index.
See Also
IAAFEssenceGroup::GetNumChoices
The GetNumChoices method /****/ GetNumChoices() Return the number of choices attached to this AAFEssenceGroup.
Syntax
HRESULT GetNumChoices(
aafUInt32* pCount
);
Parameters
[out] pCount
If the method succeeds, specifies a pointer to a count object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ GetNumChoices() Return the number of choices attached
to this AAFEssenceGroup., excepting the still frame. Succeeds
if all of the following are true: - the pCount pointer is valid.
If this method fails nothing is written to *pCount. 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_NULL_PARAM -
pCount is null.
pCount: The number of representations contained within..
See Also
IAAFEssenceGroup::GetStillFrame
The GetStillFrame method This method will return the following codes.
Syntax
HRESULT GetStillFrame(
IAAFSourceClip** ppStillFrame
);
Parameters
[out] ppStillFrame
If the method succeeds, specifies a pointer to a variable containing a pointer to a still frame object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
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_NULL_PARAM
- pStillFrame is null. AAFRESULT_NOT_INITIALIZED - This object
has not yet had Initialize() called on it.) /****/ GetStillFrame()
Gets the still frame property on a essence group.
ppStillFrame: Still Frame source clip .
See Also
IAAFEssenceGroup::SetStillFrame
The SetStillFrame method .
Syntax
HRESULT SetStillFrame(
IAAFSourceClip* pStillFrame
);
Parameters
[in] pStillFrame
Pointer to a still frame object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFEssenceGroup ************************
This interface provides access to the IAAFEssenceGroup interface,
which contains multiple representations of the same media within
a MasterMob. The IAAFEssenceAccess methods allow specifying parameters
such as "best quality", or "lowest frame rate" for and follow
the correct path through the EssenceGroup in order to find the
media which matches the criteria. 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
- insufficient system memory is available to perform the operation.
e-11D2-bfa4-006097116212 /****/ SetStillFrame() sets the still
frame property on a essence group to be the source clip passed
as the stillFrame argument.
pStillFrame: Still Frame source clip .
See Also
IAAFEssenceMultiAccess Interface
In addition to the methods inherited from IUnknown, the IAAFEssenceMultiAccess interface exposes the following methods.
ReadMultiSamples
WriteMultiSamples
IAAFEssenceMultiAccess::ReadMultiSamples
The ReadMultiSamples method comm arrayElemCount is the number of elementss in the array of transfer operations.
Syntax
HRESULT ReadMultiSamples(
aafUInt16 elemCount,
aafmMultiXfer_t* xferArray,
aafmMultiResult_t* resultArray
);
Parameters
[in] elemCount
Specifies elemcount.
[in] xferArray
Specifies xferarray.
[out] resultArray
Specifies resultarray.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
comm arrayElemCount is the number of elementss in the array of
transfer operations. xferArray points to an array of transfer
parameters. All fields in this array except for bytesXferred
must be set up before doing the transfer. Some of the fields
in the xferArray structure are status results like bytesXferred
and samplesXferred. /****/ ReadMultiSamples() Reads one or more
channels from an interleaved data stream.
elemCount: referencing this array.
xferArray: putting results into this array. The multiXfer_t structure
has the following fields, which specify one channel of data:
essenceDef[IN] -- The essence type definition physical[IN] -
The physical input-output channel numSamples[IN] -- The number
of samples to transfer buflen[IN] -- The size of the buffer buffer[IN]
-- The buffer for this The multiResult_t structure has the following
fields, which return result for one channel of data: bytesXfered[OUT]
-- The total number of bytes transferred samplesXfered[OUT] --
The total number of samples transferred comm arrayElemCount is
the size of the array or transfer operations. xferArray points
to an array of transfer parameters. All fields in this array
except for bytesXferred must be set up before doing the transfer.
Some of the fields in the xferArray structure are status results
like bytesXferred and samplesXferred. comm Possible Errors: Standard
errors (see top of file). AAFRESULT_END_OF_ESSENCE -- Hit the
end of the essence (like EOF) while reading.
See Also
IAAFEssenceMultiAccess::WriteMultiSamples
The WriteMultiSamples method ************************ Interface IAAFEssenceMultiAccess ************************ AAFEssenceMultiAccess is an interace which provides streaming access over essence data.
Syntax
HRESULT WriteMultiSamples(
aafUInt16 arrayElemCount,
aafmMultiXfer_t* xferArray,
aafmMultiResult_t* resultArray
);
Parameters
[in] arrayElemCount
Specifies arrayelem count.
[in] xferArray
Specifies xferarray.
[out] resultArray
Specifies resultarray.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFEssenceMultiAccess ************************
AAFEssenceMultiAccess is an interace which provides streaming
access over essence data. This interfaces deals with essence
data which is in an uncompressed form, and handles compression
or decompression of the data if required. You should call the
CreateMultiEssence or OpenMultiEssence calls on AAFMasterMob
in order to get an interface pointer to AAFEssenceAccess, as
there is no public create or open method in the interface. Objects
implementing this interface also implement AAFEssenceAccess for
operations other than read and write. A number of errors can
be returned from most method calls, These are: AAFRESULT_NOMEMORY
-- The system ran out of memory processing the method AAFRESULT_NULL_PARAM
-- A NULL parameter was passed in which was required. 5-11d3-80AD-006008143E6F
/****/ WriteMultiSamples() Writes multiple channels worth of
sample data to an interleaved data stream in the natural order
for the CODEC. The multiXfer_t structure has the following fields,
which specify one channel of data: essenceDef[IN] -- The essence
type definition physical[IN] - The physical input-output channel
numSamples[IN] -- The number of samples to transfer buflen[IN]
-- The size of the buffer buffer[IN] -- The buffer for this The
multiResult_t structure has the following fields, which return
result for one channel of data: bytesXfered[OUT] -- The total
number of bytes transferred samplesXfered[OUT] -- The total number
of samples transferred
arrayElemCount: referencing this array.
xferArray: putting results into this array.
See Also
IAAFEssenceRawAccess Interface
In addition to the methods inherited from IUnknown, the IAAFEssenceRawAccess interface exposes the following methods.
AddSampleIndexEntry
ReadRawData
WriteRawData
IAAFEssenceRawAccess::AddSampleIndexEntry
The AddSampleIndexEntry method ************************ Interface IAAFEssenceRawAccess ************************ AAFEssenceRawAccess is an interace which provides streaming access over raw essence data.
Syntax
HRESULT AddSampleIndexEntry(
aafPosition_t frameOffset
);
Parameters
[in] frameOffset
Specifies frameoffset.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFEssenceRawAccess ************************
AAFEssenceRawAccess is an interace which provides streaming access
over raw essence data. You should call the CreateRawEssence or
OpenRawEssence calls on AAFMasterMob in order to get an interface
pointer to AAFEssenceAccess, as there is no public create or
open method in the interface. Objects implementing this interface
also implement AAFEssenceAccess for operations other than read
and write. A number of errors can be returned from most method
calls, These are: AAFRESULT_NOMEMORY -- The system ran out of
memory processing the method AAFRESULT_NULL_PARAM -- A NULL parameter
was passed in which was required. 5-11d3-80AD-006008143E6F /****/
AddSampleIndexEntry() Adds the byte offset to the end of the
sample index table (if any). For formats with fixed sample sizes
(without a sample offset table), this method will return AAFRESULT_SUCCESS.
frameOffset: add a frame offset to it's frame index.
See Also
IAAFEssenceRawAccess::ReadRawData
The ReadRawData method comm A single video frame is ONE sample.
Syntax
HRESULT ReadRawData(
aafUInt32 nSamples,
aafUInt32 buflen,
aafDataBuffer_t buffer,
aafUInt32* samplesRead,
aafUInt32* bytesRead
);
Parameters
[in] nSamples
Integer containing the samples.
[in] buflen
Specifies buflen.
[out] buffer
Specifies buffer.
[out] samplesRead
Specifies samplesread.
[out] bytesRead
Specifies bytesread.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
comm A single video frame is ONE sample. comm Buflen must be
large enough to hold nSamples * the maximum sample size. comm
Possible Errors: Standard errors (see top of file). AAFRESULT_BADDATAADDRESS
-- The buffer must not be a NULL pointer. /****/ ReadRawData()
Read pre-interleaved data from a essence stream.
nSamples: to a buffer of this size.
buflen: here is the buffer. comm A single video frame is ONE
sample. comm Buflen must be large enough to hold nSamples * the
maximum sample size. comm Possible Errors: Standard errors (see
top of file). AAFRESULT_BADDATAADDRESS -- The buffer must not
be a NULL pointer.
See Also
IAAFEssenceRawAccess::WriteRawData
The WriteRawData method comm This function should NOT be called when essence is passed to reference implementation in an uncompressed format.
Syntax
HRESULT WriteRawData(
aafUInt32 nSamples,
aafDataBuffer_t buffer,
aafUInt32 sampleSize
);
Parameters
[in] nSamples
Integer containing the samples.
[in] buffer
Specifies buffer.
[in] sampleSize
Specifies samplesize.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
comm This function should NOT be called when essence is passed
to reference implementation in an uncompressed format. comm Possible
Errors:nl Standard errors (see top of file).nl AAFRESULT_INVALID_OP_CODEC
-- This kind of essence doesn't have a frame indexnl AAFRESULT_MEDIA_OPENMODE
-- The essence is open for read-only. /****/ WriteRawData() Writes
pre-interleaved data to a essence stream.
nSamples: to a buffer.
buffer: of this size.
See Also
IAAFEvent Interface
In addition to the methods inherited from IUnknown, the IAAFEvent interface exposes the following methods.
GetComment
GetCommentBufLen
GetPosition
SetComment
SetPosition
The AAFEvent object implements the IAAFEvent interface and also implements the following:
IAAFEvent::GetComment
The GetComment method getComment() Gets specifies the purpose of the event.
Syntax
HRESULT GetComment(
wchar_t* pComment,
aafUInt32 bufSize
);
Parameters
[out] pComment
If the method succeeds, specifies a pointer to a comment object.
[in] bufSize
Specifies bufsize.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetComment() Gets specifies the purpose of the event. Writes
the Comment property, with a trailing null character, into the
pComment buffer. The buffer is allocated by the caller. The size
of the buffer is given by bufSize. If the Comment property has
not yet been set, a zero-length string will be written (that
is, only the trailing null character). Caller may call GetCommentBufLen()
to determine the required buffer size. If this method fails nothing
will be written to *pComment. Succeeds if: - The pComment pointer
is valid. - bufSize indicates that the buffer is large enough
to hold Comment. 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_NULL_PARAM
- pComment arg is NULL. AAFRESULT_SMALL_BUF - bufSize indicates
that the allocated buffer is not large enough to hold Comment.
pComment: size of *pComment buffer in bytes.
See Also
IAAFEvent::GetCommentBufLen
The GetCommentBufLen method getCommentBufLen() Returns size of buffer (in bytes) required for GetComment().
Syntax
HRESULT GetCommentBufLen(
aafUInt32* pBufSize
);
Parameters
[out] pBufSize
If the method succeeds, specifies a pointer to a buf size object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetCommentBufLen() Returns size of buffer (in bytes) required
for GetComment(). Succeeds if: - The pBufSize pointer is valid.
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_NULL_PARAM
- pBufSize arg is NULL.
pBufSize: size of required buffer, in bytes.
See Also
IAAFEvent::GetPosition
The GetPosition method .
Syntax
HRESULT GetPosition(
aafPosition_t* pPosition
);
Parameters
[out] pPosition
If the method succeeds, specifies a pointer to a position object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFEvent ************************
The IAAFEvent interface is implemented by objects which represent
a text comment, a trigger, or an area in the image that has an
associated interactive action. 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
- insufficient system memory is available to perform the operation.
AAFRESULT_NOT_INITIALIZED - This object has not yet had Initialize()
called on it through this object's primary interface. Note that
IAAFMobSlot is a primary interface for an abstract class, so
it is not appropriate for the Initialize() method to exist in
this interface. The Initialize() method is available through
the concrete object's primary interface. 5-11d2-bf9d-00104bc9156d
GetPosition() This method will return the Position of this event.
Succeeds if all of the following are true: - the pPosition pointer
is valid. 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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pPosition arg is NULL.
pPosition: Position property value.
See Also
IAAFEvent::SetComment
The SetComment method setComment() Sets specifies the purpose of the event.
Syntax
HRESULT SetComment(
wchar_t* pComment
);
Parameters
[in] pComment
Pointer to a comment object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetComment() Sets specifies the purpose of the event. Set the
Comment property to the value specified in pComment. A copy is
made of the data so the caller retains ownership of the *pComment
buffer and is responsible for de-allocating it. There is no pre-set
limit to the length of the name, other than available system
memory or disk space. Succeeds if all of the following are true:
- the pComment pointer is valid. If this method fails the Comment
property will not be 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_NULL_PARAM - pComment arg is NULL.
pComment: buffer from which Comment is to be read.
See Also
IAAFEvent::SetPosition
The SetPosition method setPosition() This method will set the Position of this event.
Syntax
HRESULT SetPosition(
aafPosition_t Position
);
Parameters
[in] Position
Specifies position.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetPosition() This method will set the Position of this event.
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
- This object has not yet had Initialize() called on it.
Position: Position property value.
See Also
IAAFEventMobSlot Interface
In addition to the methods inherited from IUnknown, the IAAFEventMobSlot interface exposes the following methods.
GetEditRate
SetEditRate
The AAFEventMobSlot object implements the IAAFEventMobSlot interface and also implements the following:
IAAFEventMobSlot::GetEditRate
The GetEditRate method ************************ Interface IAAFEventMobSlot ************************ An EventMobSlot, as all MobSlots, has a concrete segment, which is a concrete Event or a Sequence of ordered Events.
Syntax
HRESULT GetEditRate(
aafRational_t* pEditRate
);
Parameters
[out] pEditRate
If the method succeeds, specifies a pointer to an edit rate object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFEventMobSlot ************************
An EventMobSlot, as all MobSlots, has a concrete segment, which
is a concrete Event or a Sequence of ordered Events. If it has
a sequence of events, all events shall have the same concrete
Event. 5-11d2-bf9d-00104bc9156d GetEditRate() This method will
get the edit rate for this mob slot. Succeeds if all of the following
are true: - the pEditRate pointer is valid. 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 - This
object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pEditRate arg is NULL.
pEditRate: Edit rate property value.
See Also
IAAFEventMobSlot::SetEditRate
The SetEditRate method setEditRate() This method will get set edit rate for this mob slot.
Syntax
HRESULT SetEditRate(
aafRational_t* pEditRate
);
Parameters
[in] pEditRate
Pointer to an edit rate object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetEditRate() This method will get set edit rate for this mob
slot. Succeeds if all of the following are true: - the pEditRate
pointer is valid. 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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pEditRate arg is NULL.
pEditRate: Edit rate property value.
See Also
IAAFFile Interface
In addition to the methods inherited from IUnknown, the IAAFFile interface exposes the following methods.
Close
GetHeader
GetRevision
Revert
Save
SaveAs
IAAFFile::Close
The Close method ************************ Interface IAAFFile ************************ This interface is used with an object representing an AAF file.
Syntax
HRESULT Close();
Parameters
This method takes no parameters.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFFile ************************
This interface is used with an object representing an AAF file.
An object supporting IAAFFile may be in one of the following
states: 1) Open for Reading with AAFFileOpenExistingRead. This
file object is associated with a filesystem file from which information
is only to be read. 2) Open for Modification with AAFFileOpenExistingModify
or AAFFileOpenNewModify. This file object is associated with
a filesystem file, potentially containing data which is to be
modified. 3) Open as a Transient File with AAFFileOpenTransient.
This file object is not associated with any filesystem file,
but it may still be used to contain AAF objects. 4) Closed.
This file object is neither transient nor is it associated with
any filesystem entities. When created and Initialize()d, objects
implementing this interface are initially in the Closed state.
In general an IAAFFile-implementing object may not be transitioned
directly from one Open state to another; it must first be put
through the Closed state. The exception is a Transient file,
which may be transitioned directly from Transient to Open for
Modification via the SaveAs() method. Any filesystem file can
be opened for reading by multiple IAAFFile-supporting objects.
It is not recommended to Close an IAAFFile-implementing object
which contains objects to which outstanding references are held
in client code. Nevertheless, even if that is done, the Close()
method will succeed and all referenced objects will be put into
a Detached state in which may cause any methods on such objects
to fail with the error status of AAFRESULT_NOT_IN_FILE. The Revert
feature allows any unsaved changes to be discarded. The state
of this object and all contained objects will return to that
when it was last saved or opened, whichever is most recent.
Note that Revert will only succeed if this object was opened
as files are never considered Revertable. values:
See Also
IAAFFile::GetHeader
The GetHeader method getHeader() Returns the IAAFHeader-supporting object associated with this file.
Syntax
HRESULT GetHeader(
IAAFHeader** ppHeader
);
Parameters
[out] ppHeader
If the method succeeds, specifies a pointer to a variable containing a pointer to a header object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetHeader() Returns the IAAFHeader-supporting object associated
with this file. If this object has never been associated with
a file, a new empty IAAFHeader-supporting object will be created
and returned. The returned header is AddRef()ed before it is
returned. Note that the header is automatically created when
the file object is created. Succeeds if: - This object has already
been Initialize()d. - the given header pointer is valid. - this
object contains a header. 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 - This object has not yet
had Initialize() called on it. AAFRESULT_NULL_PARAM - the header
pointer arg is NULL. AAFRESULT_NO_HEADER - this object contains
no header.
ppHeader: Set to header of the current file.
See Also
IAAFFile::GetRevision
The GetRevision method getRevision() Get the revision of the current AAF file, and returns it in pRev.
Syntax
HRESULT GetRevision(
aafFileRev_t* pRev
);
Parameters
[out] pRev
If the method succeeds, specifies a pointer to a rev object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetRevision() Get the revision of the current AAF file, and returns
it in pRev. Succeeds if: - This object has already been Initialize()d.
- the given revision pointer is valid. 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 - This object
has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- the revision pointer arg is NULL.
pRev: Revision of the current file.
See Also
IAAFFile::Revert
The Revert method .
Syntax
HRESULT Revert();
Parameters
This method takes no parameters.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
Revert() If this IAAFFile-supporting object is associated with
a filesystem file for reading or modification, all unsaved changes
made to the contents of this object are discarded and the contents
are brought back to reflect the state of the filesystem file.
This will only work if this file was opened as revertable and
is not a transient file. Any changes to essence are not revertable.
NOTE Stub only. Implementation not yet added. This method will
succeed only if all of the following are true: - This object
has already been Initialize()d. - This object is currently associated
with a filesystem file for reading or modification. - Any unsaved
changes do not involve unrevertable essence changes. - This object
is revertable and is not transient. 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 - This object
has not yet had Initialize() called on it. AAFRESULT_NOT_OPEN
- This object is not associated with an open filesystem file.
AAFRESULT_WRONG_OPENMODE - This object is not open for reading
or modification. AAFRESULT_MEDIA_NOT_REVERTABLE - This object
is revertable and changes were made to essence which do not allow
this object to be reverted. AAFRESULT_NOT_REVERTABLE - This object
is not revertable.
See Also
IAAFFile::Save
The Save method save() If this IAAFFile-supporting object is associated with a filesystem file for writing or modification, all unsaved changes made to the contents of this object are saved to that filesystem file.
Syntax
HRESULT Save();
Parameters
This method takes no parameters.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
Save() If this IAAFFile-supporting object is associated with
a filesystem file for writing or modification, all unsaved changes
made to the contents of this object are saved to that filesystem
file. This method will succeed only if all of the following are
true: - This object has already been Initialize()d. - This object
is currently associated with a filesystem file for writing or
modification. - Sufficient space remains in the filesystem for
the data to be written. Note: This method guarantees that upon
return, the filesystem file will always be left in a consistent
and valid state. 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
- This object has not yet had Initialize() called on it. AAFRESULT_NOT_OPEN
- This object is not associated with an open filesystem file.
AAFRESULT_WRONG_OPENMODE - This object is not open for writing
or modification. AAFRESULT_INSUFFICIENT_SPACE - There is insufficient
space in the filesystem to save the contents of this object.
See Also
IAAFFile::SaveAs
The SaveAs method saveAs() Saves this IAAFFile-supporting object into a newly-created filesystem file.
Syntax
HRESULT SaveAs(
aafCharacter* pFileName,
aafUInt32 modeFlags
);
Parameters
[in] pFileName
Pointer to a file name object.
[in] modeFlags
Specifies modeflags.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SaveAs() Saves this IAAFFile-supporting object into a newly-created
filesystem file. This object will then be associated with the
new filesystem file. If the old file was opened as Revertable,
any unsaved changes will not be saved to old file before it is
closed. If the old file was not opened as revertable, all unsaved
changes to that old file will be saved before it is closed.
In either case, the old file will be closed, and all changes
will be saved to the new file. Note: This method guarantees that
upon return, both the old and the new filesystem files will always
be left in a consistent and valid state. Does the following:
- Creates a new file in the filesystem with the given name. -
Opens the filesystem file for reading and writing. - Associates
this object with that filesystem file. - Copies the contents
of this object into the new file. - Closes the old filesystem
file. - This AAFFile object then can be used to refer to all
AAF objects contained within the file. NOTE Stub only. Implementation
not yet added. Succeeds if: - This object has already been Initialize()d.
- This object is currently open. - The pFileName argument is
valid. - Only valid flags have been specified. - A valid combination
of flags has been specified. - The named file does not exist
in the filesystem. - The named filesystem file is readable. -
The named filesystem file is writable. - There is sufficient
space in the filesystem to create and write the file. 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
- This object has not yet had Initialize() called on it. AAFRESULT_NOT_OPEN
- This object is not open. AAFRESULT_NULL_PARAM - pFileName pointer
argument is NULL. AAFRESULT_BAD_FLAGS - one or more illegal flags
were specified. AAFRESULT_FILE_EXISTS
See Also
IAAFFileDescriptor Interface
In addition to the methods inherited from IUnknown, the IAAFFileDescriptor interface exposes the following methods.
GetContainerFormat
GetIsInContainer
GetLength
GetSampleRate
SetContainerFormat
SetIsInContainer
SetLength
SetSampleRate
The AAFFileDescriptor object implements the IAAFFileDescriptor interface and also implements the following:
IAAFFileDescriptor::GetContainerFormat
The GetContainerFormat method getContainerFormat() // Optional.
Syntax
HRESULT GetContainerFormat(
aafUID_t* pFormat
);
Parameters
[out] pFormat
If the method succeeds, specifies a pointer to a format object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetContainerFormat() // Optional. Identifies the file format.
Succeeds if all of the following are true: - the pFormat pointer
is valid. If this method fails nothing will be written to *pFormat.
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_NULL_PARAM
- pFormat arg is NULL.
pFormat: Identifies the file format.
See Also
IAAFFileDescriptor::GetIsInContainer
The GetIsInContainer method getIsInContainer() // Places TRUE into *pIsAAF if this is AAF-wrapped essence.
Syntax
HRESULT GetIsInContainer(
aafBool* pIsAAF
);
Parameters
[out] pIsAAF
If the method succeeds, specifies a pointer to an isAAF object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetIsInContainer() // Places TRUE into *pIsAAF if this is AAF-wrapped
essence. Places FALSE into *pIsAAF if the essence is in an external
non-AAF file. Succeeds if all of the following are true: - the
pIsAAF pointer is valid. If this method fails nothing will be
written to *pIsAAF. 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_NULL_PARAM
- pIsAAF arg is NULL.
pIsAAF: is this AAF or raw media.
See Also
IAAFFileDescriptor::GetLength
The GetLength method getLength() // Gets the length of the essence in samples [not edit units].
Syntax
HRESULT GetLength(
aafLength_t* pLength
);
Parameters
[out] pLength
If the method succeeds, specifies a pointer to a length object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetLength() // Gets the length of the essence in samples [not
edit units]. Succeeds if all of the following are true: - the
pLength pointer is valid. If this method fails nothing will be
written to *pLength. 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_NULL_PARAM
- pLength arg is NULL.
pLength: returns length of the essence in samples.
See Also
IAAFFileDescriptor::GetSampleRate
The GetSampleRate method getSampleRate() Gets sample rate of the essence as opposed to the edit rate.
Syntax
HRESULT GetSampleRate(
aafRational_t* pRate
);
Parameters
[out] pRate
If the method succeeds, specifies a pointer to a rate object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetSampleRate() Gets sample rate of the essence as opposed to
the edit rate. and writes it into the *pRate argument. Succeeds
if all of the following are true: - the pRate pointer is valid.
If this method fails nothing will be written to *pRate. 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_NULL_PARAM -
pRate arg is NULL.
pRate: sample rate of the essence.
See Also
IAAFFileDescriptor::SetContainerFormat
The SetContainerFormat method setContainerFormat() Identifies the file format.
Syntax
HRESULT SetContainerFormat(
aafUID_t* pFormat
);
Parameters
[in] pFormat
Pointer to a format object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetContainerFormat() Identifies the file format. The container
format is an optional property. Succeeds if all of the following
are true: - the pFormat pointer is valid. If this method fails
the container format property will not be 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_NULL_PARAM -
pFormat arg is NULL.
pFormat: file format.
See Also
IAAFFileDescriptor::SetIsInContainer
The SetIsInContainer method setIsInContainer() // Set to TRUE if this is AAF-wrapped essence FALSE if the essence is in an external non-AAF file.
Syntax
HRESULT SetIsInContainer(
aafBool isAAF
);
Parameters
[in] isAAF
Specifies isAAF.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetIsInContainer() // Set to TRUE if this is AAF-wrapped essence
FALSE if the essence is in an external non-AAF file. Always succeeds.
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.)
isAAF: is this AAF or raw essence.
See Also
IAAFFileDescriptor::SetLength
The SetLength method .
Syntax
HRESULT SetLength(
aafLength_t length
);
Parameters
[in] length
Specifies length.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFFileDescriptor ************************
The IAAFFileDescriptor interface is implemented by objects which
describe the format of the content data associated with a File
Source mob or the media associated with a Physical Source mob.
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 - insufficient system memory is available
to perform the operation. AAFRESULT_NOT_INITIALIZED - This object
has not yet had Initialize() called on it through this object's
primary interface. Note that IAAFFileDescriptor is a primary
interface for an abstract class, so it is not appropriate for
the Initialize() method to exist in this interface. The Initialize()
method is available through the concrete object's primary interface.
e-11D2-bfa4-006097116212 SetLength() // Sets the length of the
essence in samples [not edit units]. Always succeeds. 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.)
length: length of the essence in samples.
See Also
IAAFFileDescriptor::SetSampleRate
The SetSampleRate method setSampleRate() Sets sample rate of the essence as opposed to the edit rate.
Syntax
HRESULT SetSampleRate(
aafRational_t* pRate
);
Parameters
[in] pRate
Pointer to a rate object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetSampleRate() Sets sample rate of the essence as opposed to
the edit rate. Succeeds if all of the following are true: - the
pRate pointer is valid. If this method fails the sample rate
property will not be 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_NULL_PARAM - pRate arg is NULL.
pRate: sample rate of the essence.
See Also
IAAFFiller Interface
In addition to the methods inherited from IUnknown, the IAAFFiller interface exposes the following methods.
Initialize
The AAFFiller object implements the IAAFFiller interface and also implements the following:
IAAFFiller::Initialize
The Initialize method ************************ Interface IAAFFiller ************************ The IAAFFiller interface is supported by objects which serve as placeholders for an unknown values for the component duration.
Syntax
HRESULT Initialize(
aafUID_t* pDataDef,
aafLength_t length
);
Parameters
[in] pDataDef
Pointer to a data def object.
[in] length
Specifies length.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFFiller ************************
The IAAFFiller interface is supported by objects which serve
as placeholders for an unknown values for the component duration.
Typically, a Filler object is used in a Sequence to allow positioning
of a Segment whem not all of the preceding material has been
specified. If a Filler object is played, applications can choose
any appropiate blank media to play. 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
- insufficient system memory is available to perform the operation.
c-11d2-8411-00600832acb8 Initialize() This function will create
a new filler object with the given property values. Length is
specified in units of the edit rate of the containing timeline
mob slot. Succeeds if all of the following are true: - this object
has not yet been initialized. - the pDataDef pointer is valid.
- the length is valid. 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_ALREADY_INITIALIZED - Initialize() has already
been called on this object. AAFRESULT_NULL_PARAM - pDataDef argument
is NULL.
pDataDef: Length Property Value. AAFRESULT_BAD_LENGTH - length
is negative.)
See Also
IAAFFilmDescriptor Interface
In addition to the methods inherited from IUnknown, the IAAFFilmDescriptor interface exposes the following methods.
GetFilmAspectRatio
GetFilmFormat
GetFilmManufacturer
GetFilmManufacturerBufLen
GetFilmModel
GetFilmModelBufLen
GetFrameRate
GetPerfPerFrame
SetFilmAspectRatio
SetFilmFormat
SetFilmManufacturer
SetFilmModel
SetFrameRate
SetPerfPerFrame
The AAFFilmDescriptor object implements the IAAFFilmDescriptor interface and also implements the following:
IAAFFilmDescriptor::GetFilmAspectRatio
The GetFilmAspectRatio method /****/ GetFilmAspectRatio() Get the image aspect ratio.
Syntax
HRESULT GetFilmAspectRatio(
aafRational_t* pAspectRatio
);
Parameters
[out] pAspectRatio
If the method succeeds, specifies a pointer to an aspect ratio object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ GetFilmAspectRatio() Get the image aspect ratio. This
method succeeds if all of the following are true: - the pAspectRatio
pointer is valid. 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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pAspectRatio arg is NULL.
pAspectRatio: Film Aspect Ratio.
See Also
IAAFFilmDescriptor::GetFilmFormat
The GetFilmFormat method /****/ GetFilmFormat() Gets the film format.
Syntax
HRESULT GetFilmFormat(
aafFilmType_t* pFilmFormat
);
Parameters
[out] pFilmFormat
If the method succeeds, specifies a pointer to a film format object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ GetFilmFormat() Gets the film format. Valid values include
kFt35MM, kFt16MM, kFt8MM, and kFt65MM. This method succeeds if
all of the following are true: - the pFilmFormat pointer is valid.
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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pFilmFormat arg is NULL.
pFilmFormat: pointer to the filmFormat.
See Also
IAAFFilmDescriptor::GetFilmManufacturer
The GetFilmManufacturer method /****/ GetFilmManufacturer() Writes the film manufacturer name, with a trailing null character, into the pManufacturer buffer.
Syntax
HRESULT GetFilmManufacturer(
aafCharacter* pManufacturer,
aafInt32 bufSize
);
Parameters
[in] pManufacturer
Pointer to a manufacturer object.
[in] bufSize
Specifies bufsize.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ GetFilmManufacturer() Writes the film manufacturer name,
with a trailing null character, into the pManufacturer buffer.
The buffer is allocated by the caller. The size of the buffer
is given by bufSize. If the property name has not yet been set,
a zero-length string will be written (that is, only the trailing
null character). Caller may call GetFilmManufacturerBufLen()
to determine the required buffer size. Succeeds if all of the
following are true: - the pManufacturer pointer is valid. - bufSize
indicates the buffer is large enough to hold the name. If this
method fails nothing will be written to *pname. 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_NULL_PARAM - pManufacturer
arg is NULL. AAFRESULT_SMALLBUF - bufSize indicates the buffer
is too small to hold the string.
pManufacturer: length of the buffer to hold manufacturer Name.
See Also
IAAFFilmDescriptor::GetFilmManufacturerBufLen
The GetFilmManufacturerBufLen method getFilmManufacturerBufLen() Returns the length of buffer required for the GetFilmManufacturer() method.
Syntax
HRESULT GetFilmManufacturerBufLen(
aafInt32* pLen
);
Parameters
[out] pLen
If the method succeeds, specifies a pointer to a len object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetFilmManufacturerBufLen() Returns the length of buffer required
for the GetFilmManufacturer() method. The value is placed into
the location specified by pLen, and will include space required
for the trailing null character. Succeeds if all of the following
are true: - the pLen pointer is valid. If this method fails nothing
will be written to *pLen. 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_NULL_PARAM - pLen arg is NULL.
pLen: Film manufacturer name length.
See Also
IAAFFilmDescriptor::GetFilmModel
The GetFilmModel method /****/ GetFilmModel() Writes the foptional model or brand of the film stock, with a trailing null character, into the pName buffer.
Syntax
HRESULT GetFilmModel(
aafCharacter* pName,
aafInt32 bufSize
);
Parameters
[in] pName
Pointer to a name object.
[in] bufSize
Specifies bufsize.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ GetFilmModel() Writes the foptional model or brand of
the film stock, with a trailing null character, into the pName
buffer. The buffer is allocated by the caller. The size of the
buffer is given by bufSize. If the property name has not yet
been set, a zero-length string will be written (that is, only
the trailing null character). Caller may call GetFilmManufacturerBufLen()
to determine the required buffer size. Succeeds if all of the
following are true: - the pName pointer is valid. - bufSize indicates
the buffer is large enough to hold the name. If this method fails
nothing will be written to *pname. 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_NULL_PARAM - pName arg is
NULL. AAFRESULT_SMALLBUF - bufSize indicates the buffer is too
small to hold the string.
pName: length of the buffer to hold manufacturer Name.
See Also
IAAFFilmDescriptor::GetFilmModelBufLen
The GetFilmModelBufLen method getFilmModelBufLen() Returns the length of buffer required for the GetFilmModel() method.
Syntax
HRESULT GetFilmModelBufLen(
aafInt32* pLen
);
Parameters
[out] pLen
If the method succeeds, specifies a pointer to a len object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetFilmModelBufLen() Returns the length of buffer required for
the GetFilmModel() method. The value is placed into the location
specified by pLen, and will include space required for the trailing
null character. Succeeds if all of the following are true: -
the pLen pointer is valid. If this method fails nothing will
be written to *pLen. 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_NULL_PARAM
- pLen arg is NULL.
pLen: Film manufacturer name length.
See Also
IAAFFilmDescriptor::GetFrameRate
The GetFrameRate method /****/ GetFrameRate() Get the frame rate of the film.
Syntax
HRESULT GetFrameRate(
aafUInt32* pRate
);
Parameters
[out] pRate
If the method succeeds, specifies a pointer to a rate object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ GetFrameRate() Get the frame rate of the film. This method
succeeds if all of the following are true: - the pRate pointer
is valid. 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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pRate parameter is NULL.
pRate: Frame Rate.
See Also
IAAFFilmDescriptor::GetPerfPerFrame
The GetPerfPerFrame method /****/ GetPerfPerFrame() Get the number of perforations per frame.
Syntax
HRESULT GetPerfPerFrame(
aafUInt8* pPerfPerFrame
);
Parameters
[out] pPerfPerFrame
If the method succeeds, specifies a pointer to a perf per frame object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ GetPerfPerFrame() Get the number of perforations per frame.
This method succeeds if all of the following are true: - the
pPerfPerFrame pointer is valid. 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 - This object has not yet
had Initialize() called on it. AAFRESULT_NULL_PARAM - pPerfPerFrame
parameter is NULL.
pPerfPerFrame: Perforations per frame.
See Also
IAAFFilmDescriptor::SetFilmAspectRatio
The SetFilmAspectRatio method /****/ SetFilmAspectRatio() Set the image aspect ratio.
Syntax
HRESULT SetFilmAspectRatio(
aafRational_t aspectRatio
);
Parameters
[in] aspectRatio
Specifies aspectratio.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ SetFilmAspectRatio() Set the image aspect ratio. 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
- This object has not yet had Initialize() called on it.
aspectRatio: Film Aspect Ratio.
See Also
IAAFFilmDescriptor::SetFilmFormat
The SetFilmFormat method /****/ SetFilmFormat() Sets the film format of the film.
Syntax
HRESULT SetFilmFormat(
aafFilmType_t filmFormat
);
Parameters
[in] filmFormat
Specifies filmformat.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ SetFilmFormat() Sets the film format of the film. Valid
values include kFt35MM, kFt16MM, kFt8MM, and kFt65MM. This method
succeeds if all of the following are true: - formFactor represents
a valid format. 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
- This object has not yet had Initialize() called on it. AAFRESULT_BAD_TYPE
- filmFormat is invalid.
filmFormat: Film Format.
See Also
IAAFFilmDescriptor::SetFilmManufacturer
The SetFilmManufacturer method ************************ Interface IAAFFilmDescriptor ************************ The IAAFFilmDescriptor interface is implemented by objects which describe film essence.
Syntax
HRESULT SetFilmManufacturer(
aafCharacter* pName
);
Parameters
[in] pName
Pointer to a name object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFFilmDescriptor ************************
The IAAFFilmDescriptor interface is implemented by objects which
describe film essence. A FilmDescriptor object shall be the EssenceDescription
of a physical Source Mob. 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 - insufficient
system memory is available to perform the operation. e-11D2-bfa4-006097116212
access Public Members /****/ SetFilmManufacturer() This method
sets the manufacturer name property on a film descriptor to the
value specified in pName. A copy is made of the data so the caller
retains ownership of the *pName buffer and is responsible for
de-allocating it. Succeeds if all of the following are true:
- the pName pointer is valid. If this method fails no state will
be 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_NULL_PARAM
- pName arg is NULL.
pName: Film manufacturer name.
See Also
IAAFFilmDescriptor::SetFilmModel
The SetFilmModel method /****/ SetFilmModel() This method sets the model or brand of the film stock to the value specified in pName.
Syntax
HRESULT SetFilmModel(
aafCharacter* pName
);
Parameters
[in] pName
Pointer to a name object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ SetFilmModel() This method sets the model or brand of
the film stock to the value specified in pName. A copy is made
of the data so the caller retains ownership of the *pName buffer
and is responsible for de-allocating it. Succeeds if all of the
following are true: - the pName pointer is valid. If this method
fails no state will be 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_NULL_PARAM - pName arg is NULL.
pName: Film model name.
See Also
IAAFFilmDescriptor::SetFrameRate
The SetFrameRate method /****/ SetFrameRate() Set the frame rate of the film.
Syntax
HRESULT SetFrameRate(
aafUInt32 rate
);
Parameters
[in] rate
Specifies rate.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ SetFrameRate() Set the frame rate of the film. 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
- This object has not yet had Initialize() called on it.
rate: Frame Rate.
See Also
IAAFFilmDescriptor::SetPerfPerFrame
The SetPerfPerFrame method /****/ SetPerfPerFrame() Set the number of perforations per frame.
Syntax
HRESULT SetPerfPerFrame(
aafUInt8 perfPerFrame
);
Parameters
[in] perfPerFrame
Specifies perfper frame.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
/****/ SetPerfPerFrame() Set the number of perforations per frame.
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
- This object has not yet had Initialize() called on it.
perfPerFrame: Perforations per frame.
See Also
IAAFFindSourceInfo Interface
In addition to the methods inherited from IUnknown, the IAAFFindSourceInfo interface exposes the following methods.
GetEditRate
GetLength
GetMob
GetSourceReference
IAAFFindSourceInfo::GetEditRate
The GetEditRate method getEditRate() This method will get the edit rate for this result.
Syntax
HRESULT GetEditRate(
aafRational_t* pEditRate
);
Parameters
[out] pEditRate
If the method succeeds, specifies a pointer to an edit rate object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetEditRate() This method will get the edit rate for this result.
Succeeds if all of the following are true: - the pEditRate pointer
is valid. 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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pEditRate arg is NULL.
pEditRate: Edit rate property value.
See Also
IAAFFindSourceInfo::GetLength
The GetLength method getLength() Gets the of this component.
Syntax
HRESULT GetLength(
[retval][out] aafLength_t
);
Parameters
aafLength_t
Specifies aaflength_t.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetLength() Gets the of this component. This function returns
the duration in edit units of the result. Succeeds if all of
the following are true: - the pLength pointer is valid. - the
optional length property is present for this object. This method
deals with an optional property, which will only be present for
time-varying media. If this method fails nothing will be written
to *pLength. 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_NULL_PARAM
- pLength arg is NULL. AAFRESULT_BAD_PROP - the optional length
property is not present for this object.
aafLength_t: Length of this component.
See Also
IAAFFindSourceInfo::GetMob
The GetMob method ************************ Interface IAAFFindSourceInfo ************************ * Stub only.
Syntax
HRESULT GetMob(
IAAFMob** ppMob
);
Parameters
[out] ppMob
If the method succeeds, specifies a pointer to a variable containing a pointer to a mob object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFFindSourceInfo ************************
* Stub only. Implementation not yet added * 3-11d2-8035-006008143E6F
GetMob() // This function returns the mob found by the function
which generated this IAAFFindSourceInfo as a result. Succeeds
if all of the following are true: - the ppMob pointer is valid.
If this method fails nothing will be written to *ppMob. 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_NULLOBJECT -
There is no valid mob referenced AAFRESULT_NULL_PARAM - ppMob
arg is NULL.
ppMob: The final media object referenced.
See Also
IAAFFindSourceInfo::GetSourceReference
The GetSourceReference method getSourceReference() // This function returns the source reference found by the function which generated this IAAFFindSourceInfo as a result.
Syntax
HRESULT GetSourceReference(
aafSourceRef_t* pSourceRef
);
Parameters
[out] pSourceRef
If the method succeeds, specifies a pointer to a source ref object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetSourceReference() // This function returns the source reference
found by the function which generated this IAAFFindSourceInfo
as a result. Note: the 3 properties that make up the "source
reference" are sourceID, sourceTrackID, and startTime. Succeeds
if all of the following are true: - This object has already been
Initialize()d. - the pSourceRef pointer is valid. If this method
fails nothing will be written to *pSourceRef. 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 - This
object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pSourceRef arg is NULL.
pSourceRef: Source Reference.
See Also
IAAFGPITrigger Interface
In addition to the methods inherited from IUnknown, the IAAFGPITrigger interface exposes the following methods.
GetActiveState
SetActiveState
The AAFGPITrigger object implements the IAAFGPITrigger interface and also implements the following:
IAAFGPITrigger::GetActiveState
The GetActiveState method .
Syntax
HRESULT GetActiveState(
aafBool* pActiveState
);
Parameters
[out] pActiveState
If the method succeeds, specifies a pointer to an active state object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFGPITrigger ************************
The IAAFGPITrigger interface is implemented by objects which
represent an trigger action that should be taken when its position
in time is reached. 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 - insufficient
system memory is available to perform the operation. AAFRESULT_NOT_INITIALIZED
- This object has not yet had Initialize() called on it through
this object's primary interface. Note that IAAFMobSlot is a
primary interface for an abstract class, so it is not appropriate
for the Initialize() method to exist in this interface. The Initialize()
method is available through the concrete object's primary interface.
5-11d2-bf9d-00104bc9156d GetActiveState() Sets *pActiveState
to AAFTrue it the event is on otherwise sets it to AAFFalse.
Succeeds if: - The pActiveState pointer is valid. 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_NULL_PARAM -
The pActiveState pointer is NULL.
pActiveState: pointer to the result.
See Also
IAAFGPITrigger::SetActiveState
The SetActiveState method setActiveState() Set to AAFTrue to turn the trigger on or AAFFalse to turn the trigger off.
Syntax
HRESULT SetActiveState(
aafBool ActiveState
);
Parameters
[in] ActiveState
Specifies active state.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetActiveState() Set to AAFTrue to turn the trigger on or AAFFalse
to turn the trigger off. 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.)
ActiveState: the active state of the trigger.
See Also
IAAFHeader Interface
In addition to the methods inherited from IUnknown, the IAAFHeader interface exposes the following methods.
AppendEssenceData
AppendIdentification
AppendMob
EnumAAFAllMobs
EnumAAFIdents
EnumEssenceData
GetDictionary
GetFileRevision
GetIdentificationByGen
GetLastIdentification
GetLastModified
GetNumEssenceData
GetNumIdents
GetNumMobs
GetRefImplVersion
IsEssenceDataPresent
LookupMob
IAAFHeader::AppendEssenceData
The AppendEssenceData method appendEssenceData() Appends the given essence data object to the header.
Syntax
HRESULT AppendEssenceData(
IAAFEssenceData* pEssenceData
);
Parameters
[in] pEssenceData
Pointer to an essence data object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
AppendEssenceData() Appends the given essence data object to
the header. NOTE Stub only. Implementation not yet added. Succeeds
if all of the following are true: - the pEssenceData pointer
is valid. If this method fails no state will be 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_DUPLICATE_MOBID
- The given mob has already been added. The validation is done
by comparing mobIDs, which should be unique. AAFRESULT_NULL_PARAM
- pEssenceData is null.
pEssenceData: Essence data object to append.
See Also
IAAFHeader::AppendIdentification
The AppendIdentification method appendIdentification() Appends the given Identification class to the header.
Syntax
HRESULT AppendIdentification(
IAAFIdentification* pIdent
);
Parameters
[in] pIdent
Pointer to an ident object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
AppendIdentification() Appends the given Identification class
to the header. This method does not attempt to identify duplicate
identifications, so it will succeed even if an identical identification
has already been appended. Succeeds if all of the following are
true: - the pIdent pointer is valid. If this method fails no
state will be 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_NULL_PARAM - pIdent is null.
pIdent: Identification to append.
See Also
IAAFHeader::AppendMob
The AppendMob method appendMob() Appends the given mob to the header.
Syntax
HRESULT AppendMob(
IAAFMob* pMob
);
Parameters
[in] pMob
Pointer to a mob object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
AppendMob() Appends the given mob to the header. If the given
mob is already contained this method will do nothing and will
return success. Succeeds if all of the following are true: -
the pMob pointer is valid. - the given mob is not already part
of this collection. If this method fails no state will be 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_NULL_PARAM
- pMob is null. AAFRESULT_DUPLICATE_MOBID - the given mob is
already contained.
pMob: Mob to add header.
See Also
IAAFHeader::EnumAAFAllMobs
The EnumAAFAllMobs method enumAAFAllMobs() Places an enumerator for mobs that apply to the criteria into the *ppEnum argument.
Syntax
HRESULT EnumAAFAllMobs(
aafSearchCrit_t* pSearchCriteria,
IEnumAAFMobs** ppEnum
);
Parameters
[in] pSearchCriteria
Pointer to a search criteria object.
[out] ppEnum
If the method succeeds, specifies a pointer to a variable containing a pointer to an enum object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
EnumAAFAllMobs() Places an enumerator for mobs that apply to
the criteria into the *ppEnum argument. If pSearchCriteria is
null, all mobs are returned. The searchTag field of pSearchCriteria,
and exactly ONE of the fields in the union (tags.mobID, tags.name,
etc. ) must be set. Only one search criterion may be specified.
The returned enumerator is AddRef()ed before it is returned.
Succeeds if all of the following are true: - the ppEnum pointer
is valid. If this method fails nothing will be written to *ppEnum.
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_NULL_PARAM
- ppEnum is null.
pSearchCriteria: Mob Enumeration.
See Also
IAAFHeader::EnumAAFIdents
The EnumAAFIdents method enumAAFIdents() Places an enumerator for all Identifications criteria intothe *ppEnum argument.
Syntax
HRESULT EnumAAFIdents(
IEnumAAFIdentifications** ppEnum
);
Parameters
[out] ppEnum
If the method succeeds, specifies a pointer to a variable containing a pointer to an enum object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
EnumAAFIdents() Places an enumerator for all Identifications
criteria intothe *ppEnum argument. The returned enumerator is
AddRef()ed before it is returned. NOTE Stub only. Implementation
not yet added. Succeeds if all of the following are true: - the
ppEnum pointer is valid. If this method fails nothing will be
written to *ppEnum. 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_NULL_PARAM
- ppEnum is null.
ppEnum: Indentification Enumeration.
See Also
IAAFHeader::EnumEssenceData
The EnumEssenceData method enumEssenceData() Places an enumerator for essence that applies to the criteria into the *ppEnum argument.
Syntax
HRESULT EnumEssenceData(
IEnumAAFEssenceData** ppEnum
);
Parameters
[out] ppEnum
If the method succeeds, specifies a pointer to a variable containing a pointer to an enum object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
EnumEssenceData() Places an enumerator for essence that applies
to the criteria into the *ppEnum argument. The returned enumerator
is AddRef()ed before it is returned. Succeeds if all of the following
are true: - the pMediaCriteria pointer is valid. - the ppEnum
pointer is valid. If this method fails nothing will be written
to *ppEnum. 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_NULL_PARAM
- either pMediaCriteria or ppEnum is null.
ppEnum: Essence Enumeration.
See Also
IAAFHeader::GetDictionary
The GetDictionary method getDictionary() Places the dictionary that contains all types of aaf definition objects into the *ppDictionary argument.
Syntax
HRESULT GetDictionary(
IAAFDictionary** ppDictionary
);
Parameters
[out] ppDictionary
If the method succeeds, specifies a pointer to a variable containing a pointer to a dictionary object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetDictionary() Places the dictionary that contains all types
of aaf definition objects into the *ppDictionary argument. The
returned dictionary is AddRef()ed before it is returned. Note
that the dictionary is automatically created when the header
object is created. NOTE Stub only. Implementation not yet added.
Succeeds if all of the following are true: - the ppDictionary
pointer is valid. If this method fails no state will be 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_NULL_PARAM
- ppDictionary is null.
ppDictionary: The AAF Dictionary.
See Also
IAAFHeader::GetFileRevision
The GetFileRevision method getFileRevision() Return the File Revision property.
Syntax
HRESULT GetFileRevision(
aafVersionType_t* pRevision
);
Parameters
[out] pRevision
If the method succeeds, specifies a pointer to a revision object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetFileRevision() Return the File Revision property. NOTE Stub
only. Implementation not yet added. Succeeds if all of the following
are true: - the pRevision pointer is valid. If this method fails
nothing is written to *pRevision. 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_NULL_PARAM - pRevision is
null.
pRevision: The File Version.
See Also
IAAFHeader::GetIdentificationByGen
The GetIdentificationByGen method getIdentificationByGen() Places the Identification that matches the given generation into the *ppIdentification argument.
Syntax
HRESULT GetIdentificationByGen(
aafUID_t* pGeneration,
IAAFIdentification** ppIdentification
);
Parameters
[in] pGeneration
Pointer to a generation object.
[out] ppIdentification
If the method succeeds, specifies a pointer to a variable containing a pointer to an identification object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetIdentificationByGen() Places the Identification that matches
the given generation into the *ppIdentification argument. The
returned identification is AddRef()ed before it is returned.
NOTE Stub only. Implementation not yet added. Succeeds if all
of the following are true: - the pGeneration pointer is valid.
- the ppIdentification pointer is valid. If this method fails
no state will be 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_NULL_PARAM - either pGeneration or ppIdentification
is null.
pGeneration: Indentification Object.
See Also
IAAFHeader::GetLastIdentification
The GetLastIdentification method getLastIdentification() // Places the identification of the last entity that modified the file into the *ppIdentification argument.
Syntax
HRESULT GetLastIdentification(
IAAFIdentification** ppIdentification
);
Parameters
[out] ppIdentification
If the method succeeds, specifies a pointer to a variable containing a pointer to an identification object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetLastIdentification() // Places the identification of the last
entity that modified the file into the *ppIdentification argument.
The returned identification is AddRef()ed before it is returned.
Succeeds if all of the following are true: - the ppIdentification
pointer is valid. If this method fails no state will be 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_NULL_PARAM
- ppIdentification is null.
ppIdentification: Indentification Object.
See Also
IAAFHeader::GetLastModified
The GetLastModified method getLastModified() Return the Last Modified property.
Syntax
HRESULT GetLastModified(
aafTimeStamp_t* pTimeStamp
);
Parameters
[out] pTimeStamp
If the method succeeds, specifies a pointer to a time stamp object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetLastModified() Return the Last Modified property. NOTE Stub
only. Implementation not yet added. Succeeds if all of the following
are true: - the pTimeStamp pointer is valid. If this method fails
nothing is written to *pTimeStamp. 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_NULL_PARAM - pTimeStamp is
null.
pTimeStamp: The modification date-time stamp.
See Also
IAAFHeader::GetNumEssenceData
The GetNumEssenceData method getNumEssenceData() Writes the total number of essence data into the *pNumEssenceData argument.
Syntax
HRESULT GetNumEssenceData(
aafUInt32* pNumEssenceData
);
Parameters
[out] pNumEssenceData
If the method succeeds, specifies a pointer to a num essence data object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetNumEssenceData() Writes the total number of essence data into
the *pNumEssenceData argument. Succeeds if all of the following
are true: - the pNumEssenceData pointer is valid. If this method
fails nothing will be written to *pNumEssenceData. 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_NULL_PARAM -
pNumEssenceData is null.
pNumEssenceData: Total number of essence data.
See Also
IAAFHeader::GetNumIdents
The GetNumIdents method getNumIdents() Writes the number of identification objects into the *pNumIdents argument.
Syntax
HRESULT GetNumIdents(
aafUInt32* pNumIdents
);
Parameters
[out] pNumIdents
If the method succeeds, specifies a pointer to a num idents object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetNumIdents() Writes the number of identification objects into
the *pNumIdents argument. NOTE Stub only. Implementation not
yet added. Succeeds if all of the following are true: - the pNumIdents
pointer is valid. If this method fails nothing will be written
to *pNumIdents. 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_NULL_PARAM
- pNumIdents is null.
pNumIdents: Total number of identification objects.
See Also
IAAFHeader::GetNumMobs
The GetNumMobs method getNumMobs() Writes the number of matches for the given mob kind into the *pNumMobs argument.
Syntax
HRESULT GetNumMobs(
aafMobKind_t mobKind,
aafNumSlots_t* pNumMobs
);
Parameters
[in] mobKind
Specifies mobkind.
[out] pNumMobs
If the method succeeds, specifies a pointer to a num mobs object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetNumMobs() Writes the number of matches for the given mob kind
into the *pNumMobs argument. Succeeds if all of the following
are true: - the pNumMobs pointer is valid. If this method fails
nothing will be written to *pNumMobs. 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_NULL_PARAM - pNumMobs is
null.
mobKind: Total number of mobs of kind mobKind.
See Also
IAAFHeader::GetRefImplVersion
The GetRefImplVersion method getRefImplVersion() Return the version of the Reference Implementation currently running on this machine, which implements these interfaces.
Syntax
HRESULT GetRefImplVersion(
aafProductVersion_t* pVersion
);
Parameters
[out] pVersion
If the method succeeds, specifies a pointer to a version object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetRefImplVersion() Return the version of the Reference Implementation
currently running on this machine, which implements these interfaces.
Succeeds if all of the following are true: - the pVersion pointer
is valid. If this method fails nothing is written to *pVersion.
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_NULL_PARAM
- pVersion is null.
pVersion: The Reference Implementation Version.
See Also
IAAFHeader::IsEssenceDataPresent
The IsEssenceDataPresent method isEssenceDataPresent() // Succeeds if all of the following are true: - the pFileMobID pointer is valid.
Syntax
HRESULT IsEssenceDataPresent(
aafUID_t* pFileMobID,
aafFileFormat_t fmt,
aafBool* pResult
);
Parameters
[in] pFileMobID
Pointer to a file mobID object.
[in] fmt
Specifies fmt.
[out] pResult
If the method succeeds, specifies a pointer to a result object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
IsEssenceDataPresent() // Succeeds if all of the following are
true: - the pFileMobID pointer is valid. - the pResult pointer
is valid. If this method fails no state will be 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_NULL_PARAM -
either pFileMobID or pResult is null.
pFileMobID: The Essence File Format.
fmt: True if the essence is found.
See Also
IAAFHeader::LookupMob
The LookupMob method ************************ Interface IAAFHeader ************************ The IAAFHeader interface provides file-wide information and indexes.
Syntax
HRESULT LookupMob(
aafUID_t* pMobID,
IAAFMob** ppMob
);
Parameters
[in] pMobID
Pointer to a mobID object.
[out] ppMob
If the method succeeds, specifies a pointer to a variable containing a pointer to a mob object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFHeader ************************
The IAAFHeader interface provides file-wide information and indexes.
Each AAF file has one and only one instance of an object which
supports IAAFHeader. When an IAAFHeader-supporting object is
created, the contained dictionary object is automatically created.
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 - insufficient system memory is available
to perform the operation. D-11D2-BF78-00104BC9156D LookupMob()
Looks up the Mob that matches the given mob id and puts it into
the ppMob argument. The returned mob interface is AddRef()ed
before it is returned. Succeeds if all of the following are true:
- the pMobID pointer is valid. - the ppMob pointer is valid.
If this method fails nothing will be written to *ppMob. 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_NULL_PARAM -
either pMobID or ppMob is null AAFRESULT_MOB_NOT_FOUND - the
requested mob wasn't found.
pMobID: Matching Mob.
See Also
IAAFHTMLClip Interface
In addition to the methods inherited from IUnknown, the IAAFHTMLClip interface exposes the following methods.
GetBeginAnchor
GetBeginAnchorBufLen
GetEndAnchor
GetEndAnchorBufLen
SetBeginAnchor
SetEndAnchor
The AAFHTMLClip object implements the IAAFHTMLClip interface and also implements the following:
IAAFHTMLClip::GetBeginAnchor
The GetBeginAnchor method ************************ Interface IAAFHTMLClip ************************ An HTMLClip is a reference to HTML text essence.
Syntax
HRESULT GetBeginAnchor(
aafCharacter* pName,
aafInt32 bufSize
);
Parameters
[in] pName
Pointer to a name object.
[in] bufSize
Specifies bufsize.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFHTMLClip ************************
An HTMLClip is a reference to HTML text essence. Typically an
HTMLClip is in a StaticMobSlot and defines a section of HTML
text that is associated with the essence data in a parallel TimelineMobSlot.
The duration, accessed through IAAFComponent, defines the extent
of the association with the parallel Mob Slot. 5-11d2-bf9d-00104bc9156d
GetBeginAnchor() Writes the begin anchor name, with a trailing
null character, into the pName buffer. The buffer is allocated
by the caller. The size of the buffer is given by bufSize. If
the property name has not yet been set, a zero-length string
will be written (that is, only the trailing null character).
Caller may call GetBeginAnchorBufLen() to determine the required
buffer size. Succeeds if all of the following are true: - the
pname pointer is valid. - bufSize indicates the buffer is large
enough to hold the name. If this method fails nothing will be
written to *pName. 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_NULL_PARAM
- pname arg is NULL. AAFRESULT_SMALLBUF - bufSize indicates the
buffer is too small to hold the string.
pName: length of the buffer to hold Begin Anchor Name.
See Also
IAAFHTMLClip::GetBeginAnchorBufLen
The GetBeginAnchorBufLen method getBeginAnchorBufLen() Returns the length of buffer required for the GetBeginAnchor() method.
Syntax
HRESULT GetBeginAnchorBufLen(
aafUInt32* pLen
);
Parameters
[out] pLen
If the method succeeds, specifies a pointer to a len object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetBeginAnchorBufLen() Returns the length of buffer required
for the GetBeginAnchor() method. The value is placed into the
location specified by pLen. The value will include space required
for the trailing null character. Succeeds if all of the following
are true: - the pLen pointer is valid. If this method fails nothing
will be written to *pLen. 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_NULL_PARAM - pLen arg is NULL.
pLen: Length in bytes.
See Also
IAAFHTMLClip::GetEndAnchor
The GetEndAnchor method getEndAnchor() Writes the End anchor name, with a trailing null character, into the pName buffer.
Syntax
HRESULT GetEndAnchor(
aafCharacter* pName,
aafInt32 bufSize
);
Parameters
[in] pName
Pointer to a name object.
[in] bufSize
Specifies bufsize.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetEndAnchor() Writes the End anchor name, with a trailing null
character, into the pName buffer. The buffer is allocated by
the caller. The size of the buffer is given by bufSize. If the
property name has not yet been set, a zero-length string will
be written (that is, only the trailing null character). Caller
may call GetEndAnchorBufLen() to determine the required buffer
size. Succeeds if all of the following are true: - the pname
pointer is valid. - bufSize indicates the buffer is large enough
to hold the name. If this method fails nothing will be written
to *pName. 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_NULL_PARAM
- pname arg is NULL. AAFRESULT_SMALLBUF - bufSize indicates the
buffer is too small to hold the string.
pName: length of the buffer to hold End Anchor Name.
See Also
IAAFHTMLClip::GetEndAnchorBufLen
The GetEndAnchorBufLen method getEndAnchorBufLen() Returns the length of buffer required for the GetEndAnchor() method.
Syntax
HRESULT GetEndAnchorBufLen(
aafUInt32* pLen
);
Parameters
[out] pLen
If the method succeeds, specifies a pointer to a len object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetEndAnchorBufLen() Returns the length of buffer required for
the GetEndAnchor() method. The value is placed into the location
specified by pLen. The value will include space required for
the trailing null character. Succeeds if all of the following
are true: - the pLen pointer is valid. If this method fails nothing
will be written to *pLen. 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_NULL_PARAM - pLen arg is NULL.
pLen: Length in bytes.
See Also
IAAFHTMLClip::SetBeginAnchor
The SetBeginAnchor method setBeginAnchor() This method sets the Begin Anchor property on a HTML clip to the value specified in pName.
Syntax
HRESULT SetBeginAnchor(
aafCharacter* pName
);
Parameters
[in] pName
Pointer to a name object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetBeginAnchor() This method sets the Begin Anchor property on
a HTML clip to the value specified in pName. A copy is made of
the data so the caller retains ownership of the *pName buffer
and is responsible for de-allocating it. Succeeds if all of the
following are true: - the pName pointer is valid. If this method
fails no state will be 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_NULL_PARAM - pName arg is NULL.
pName: Specifies the HTML tag that defines the start of the text.
See Also
IAAFHTMLClip::SetEndAnchor
The SetEndAnchor method setEndAnchor() This method sets the End Anchor property on a HTML clip to the value specified in pName.
Syntax
HRESULT SetEndAnchor(
aafCharacter* pName
);
Parameters
[in] pName
Pointer to a name object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetEndAnchor() This method sets the End Anchor property on a
HTML clip to the value specified in pName. A copy is made of
the data so the caller retains ownership of the *pName buffer
and is responsible for de-allocating it. Succeeds if all of the
following are true: - the pName pointer is valid. If this method
fails no state will be 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_NULL_PARAM - pName arg is NULL.
pName: Specifies the HTML tag that defines the end of the text.
See Also
IAAFIdentification Interface
In addition to the methods inherited from IUnknown, the IAAFIdentification interface exposes the following methods.
GetCompanyName
GetCompanyNameBufLen
GetDate
GetGeneration
GetPlatform
GetPlatformBufLen
GetProductID
GetProductName
GetProductNameBufLen
GetProductVersion
GetProductVersionString
GetProductVersionStringBufLen
GetRefImplVersion
Initialize
SetCompanyName
SetProductID
SetProductName
SetProductVersion
SetProductVersionString
IAAFIdentification::GetCompanyName
The GetCompanyName method getCompanyName() Gets the Company Name string property.
Syntax
HRESULT GetCompanyName(
wchar_t* pCompanyName,
aafUInt32 bufSize
);
Parameters
[out] pCompanyName
If the method succeeds, specifies a pointer to a company name object.
[in] bufSize
Specifies bufsize.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetCompanyName() Gets the Company Name string property. Writes
the CompanyName property, with a trailing null character, into
the pCompanyName buffer. The buffer is allocated by the caller.
The size of the buffer is given by bufSize. If the CompanyName
property has not yet been set, a zero-length string will be written
(that is, only the trailing null character). Caller may call
GetCompanyNameBufLen() to determine the required buffer size.
If this method fails nothing will be written to *pCompanyName.
Succeeds if: - The pCompanyName pointer is valid. - bufSize indicates
that the buffer is large enough to hold CompanyName. 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_NULL_PARAM -
pCompanyName arg is NULL. AAFRESULT_SMALL_BUF - bufSize indicates
that the allocated buffer is not large enough to hold CompanyName.
pCompanyName: size of *pCompanyName buffer in bytes.
See Also
IAAFIdentification::GetCompanyNameBufLen
The GetCompanyNameBufLen method getCompanyNameBufLen() Returns size of buffer (in bytes) required for GetCompanyName().
Syntax
HRESULT GetCompanyNameBufLen(
aafUInt32* pBufSize
);
Parameters
[out] pBufSize
If the method succeeds, specifies a pointer to a buf size object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetCompanyNameBufLen() Returns size of buffer (in bytes) required
for GetCompanyName(). Succeeds if: - The pBufSize pointer is
valid. 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_NULL_PARAM
- pBufSize arg is NULL.
pBufSize: size of required buffer, in bytes.
See Also
IAAFIdentification::GetDate
The GetDate method getDate() Writes the Date-time Stamp property into the caller-allocated aafTimeStamp_t specified by the pTimeStamp argument.
Syntax
HRESULT GetDate(
aafTimeStamp_t* pTimestamp
);
Parameters
[out] pTimestamp
If the method succeeds, specifies a pointer to a timestamp object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetDate() Writes the Date-time Stamp property into the caller-allocated
aafTimeStamp_t specified by the pTimeStamp argument. The date-time
stamp recorded in this object corresponds to the time that this
file was created or modified upon the occasion that this object
was added to the file. NOTE Stub only. Implementation not yet
added. Note: This is a read-only property. Succeeds if all of
the following are true: - the pTimeStamp pointer is valid. If
this method fails nothing will be written to *pTimeStamp. 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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pTimeStamp arg is NULL.
pTimestamp: The date-time stamp.
See Also
IAAFIdentification::GetGeneration
The GetGeneration method getGeneration() Obtains the generation of this AAF file, which was generated at the time this identification object was created.
Syntax
HRESULT GetGeneration(
aafUID_t* pGeneration
);
Parameters
[out] pGeneration
If the method succeeds, specifies a pointer to a generation object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetGeneration() Obtains the generation of this AAF file, which
was generated at the time this identification object was created.
If a file was opened for modification by many applications in
its lifetime, then there will be multiple Identification objects.
This is written into the caller-allocated aafUID_t specified
by the pGeneration argument. NOTE Stub only. Implementation not
yet added. Note: This is a read-only property. Succeeds if all
of the following are true: - the pGeneration pointer is valid.
If this method fails nothing will be written to *pGeneration.
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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pGeneration arg is NULL.
pGeneration: The unique generation.
See Also
IAAFIdentification::GetPlatform
The GetPlatform method getPlatform() Gets the Platform string property.
Syntax
HRESULT GetPlatform(
wchar_t* pPlatform,
aafUInt32 bufSize
);
Parameters
[out] pPlatform
If the method succeeds, specifies a pointer to a platform object.
[in] bufSize
Specifies bufsize.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetPlatform() Gets the Platform string property. This information
is provided only to allow diagnostic printing of platform information
to be read by humans. The format of the strings is not guaranteed
to remain the same for a given platform. Having said that, the
possible values currently returned are: - "Win32" for Intel/Win32
platforms - "MacOS" for MacOS platforms - "Unknown" for unknown
platforms Writes the Platform property, with a trailing null
character, into the pPlatform buffer. The buffer is allocated
by the caller. The size of the buffer is given by bufSize. If
the Platform property has not yet been set, a zero-length string
will be written (that is, only the trailing null character).
Caller may call GetPlatformBufLen() to determine the required
buffer size. If this method fails nothing will be written to
*pPlatform. Succeeds if: - The pPlatform pointer is valid. -
bufSize indicates that the buffer is large enough to hold Platform.
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_NULL_PARAM
- pPlatform arg is NULL. AAFRESULT_SMALL_BUF - bufSize indicates
that the allocated buffer is not large enough to hold Platform.
pPlatform: size of *pPlatform buffer in bytes.
See Also
IAAFIdentification::GetPlatformBufLen
The GetPlatformBufLen method getPlatformBufLen() Returns size of buffer (in bytes) required for GetPlatform().
Syntax
HRESULT GetPlatformBufLen(
aafUInt32* pBufSize
);
Parameters
[out] pBufSize
If the method succeeds, specifies a pointer to a buf size object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetPlatformBufLen() Returns size of buffer (in bytes) required
for GetPlatform(). Succeeds if: - The pBufSize pointer is valid.
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_NULL_PARAM
- pBufSize arg is NULL.
pBufSize: size of required buffer, in bytes.
See Also
IAAFIdentification::GetProductID
The GetProductID method getProductID() Obtains the Product ID, which is the identification number assigned to the application and vendor of the application which attached this object to the AAF file.
Syntax
HRESULT GetProductID(
aafUID_t* pProductID
);
Parameters
[out] pProductID
If the method succeeds, specifies a pointer to a productID object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetProductID() Obtains the Product ID, which is the identification
number assigned to the application and vendor of the application
which attached this object to the AAF file. This ID is written
into the caller-allocated aafUID_t specified by the pProductID
argument. NOTE Stub only. Implementation not yet added. Succeeds
if all of the following are true: - the pProductID pointer is
valid. If this method fails nothing will be written to *pProductID.
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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pProductID arg is NULL.
pProductID: The Product ID.
See Also
IAAFIdentification::GetProductName
The GetProductName method getProductName() Gets the Product Name string property.
Syntax
HRESULT GetProductName(
wchar_t* pProductName,
aafUInt32 bufSize
);
Parameters
[out] pProductName
If the method succeeds, specifies a pointer to a product name object.
[in] bufSize
Specifies bufsize.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetProductName() Gets the Product Name string property. Writes
the ProductName property, with a trailing null character, into
the pProductName buffer. The buffer is allocated by the caller.
The size of the buffer is given by bufSize. If the ProductName
property has not yet been set, a zero-length string will be written
(that is, only the trailing null character). Caller may call
GetProductNameBufLen() to determine the required buffer size.
If this method fails nothing will be written to *pProductName.
Succeeds if: - The pProductName pointer is valid. - bufSize indicates
that the buffer is large enough to hold ProductName. 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_NULL_PARAM -
pProductName arg is NULL. AAFRESULT_SMALL_BUF - bufSize indicates
that the allocated buffer is not large enough to hold ProductName.
pProductName: size of *pProductName buffer in bytes.
See Also
IAAFIdentification::GetProductNameBufLen
The GetProductNameBufLen method getProductNameBufLen() Returns size of buffer (in bytes) required for GetProductName().
Syntax
HRESULT GetProductNameBufLen(
aafUInt32* pBufSize
);
Parameters
[out] pBufSize
If the method succeeds, specifies a pointer to a buf size object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetProductNameBufLen() Returns size of buffer (in bytes) required
for GetProductName(). Succeeds if: - The pBufSize pointer is
valid. 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_NULL_PARAM
- pBufSize arg is NULL.
pBufSize: size of required buffer, in bytes.
See Also
IAAFIdentification::GetProductVersion
The GetProductVersion method getProductVersion() Gets the Product Version property associated with this identification object and places it into *pVersion.
Syntax
HRESULT GetProductVersion(
aafProductVersion_t* pVersion
);
Parameters
[out] pVersion
If the method succeeds, specifies a pointer to a version object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetProductVersion() Gets the Product Version property associated
with this identification object and places it into *pVersion.
NOTE Stub only. Implementation not yet added. Succeeds if all
of the following are true: - the pVersion pointer is valid.
If this method fails, nothing will be written to *pVersion.
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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pVersion arg is NULL.
pVersion: The Product Version.
See Also
IAAFIdentification::GetProductVersionString
The GetProductVersionString method getProductVersionString() Gets the Product Version string property.
Syntax
HRESULT GetProductVersionString(
wchar_t* pProductVersionString,
aafUInt32 bufSize
);
Parameters
[out] pProductVersionString
If the method succeeds, specifies a pointer to a product version string object.
[in] bufSize
Specifies bufsize.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetProductVersionString() Gets the Product Version string property.
Writes the ProductVersionString property, with a trailing null
character, into the pProductVersionString buffer. The buffer
is allocated by the caller. The size of the buffer is given by
bufSize. If the ProductVersionString property has not yet been
set, a zero-length string will be written (that is, only the
trailing null character). Caller may call GetProductVersionStringBufLen()
to determine the required buffer size. If this method fails nothing
will be written to *pProductVersionString. Succeeds if: - The
pProductVersionString pointer is valid. - bufSize indicates that
the buffer is large enough to hold ProductVersionString. 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_NULL_PARAM -
pProductVersionString arg is NULL. AAFRESULT_SMALL_BUF - bufSize
indicates that the allocated buffer is not large enough to hold
ProductVersionString.
pProductVersionString: size of *pProductVersionString buffer
in bytes.
See Also
IAAFIdentification::GetProductVersionStringBufLen
The GetProductVersionStringBufLen method getProductVersionStringBufLen() Returns size of buffer (in bytes) required for GetProductVersionString().
Syntax
HRESULT GetProductVersionStringBufLen(
aafUInt32* pBufSize
);
Parameters
[out] pBufSize
If the method succeeds, specifies a pointer to a buf size object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetProductVersionStringBufLen() Returns size of buffer (in bytes)
required for GetProductVersionString(). Succeeds if: - The pBufSize
pointer is valid. 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_NULL_PARAM
- pBufSize arg is NULL.
pBufSize: size of required buffer, in bytes.
See Also
IAAFIdentification::GetRefImplVersion
The GetRefImplVersion method .
Syntax
HRESULT GetRefImplVersion(
aafProductVersion_t* pVersion
);
Parameters
[out] pVersion
If the method succeeds, specifies a pointer to a version object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetRefImplVersion() Obtains the version of the Reference Implementation
which created this identification object and writes it into the
caller-allocated aafProductVersion_t specified by the pVersion
argument. NOTE Stub only. Implementation not yet added. Note:
This is a read-only property. Succeeds if all of the following
are true: - the pVersion pointer is valid. If this method fails
nothing will be written to *pVersion. 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 - This object
has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pVersion arg is NULL.
pVersion: The Reference Implementation Version.
See Also
IAAFIdentification::Initialize
The Initialize method ************************ Interface IAAFIdentification ************************ The IAAFIdentification interface provides information about an applications that either created or modified the AAF file.
Syntax
HRESULT Initialize();
Parameters
This method takes no parameters.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFIdentification ************************
The IAAFIdentification interface provides information about an
applications that either created or modified the AAF file. If
a file was opened for modification by many applications in its
lifetime, then there will be multiple Identification objects.
These are kept in an ordered array, with the first entry being
the file creator, and the last entry being the last application
to modify the file. The identification object is useful for technical
support when diagnosing problem AAF files, as it tells which
applications (and versions) have touched the file. If a file
has been modified by multiple applications, then the date and
productID fields can be used to tell which changes to the file
were made by a particular application. 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
- insufficient system memory is available to perform the operation.
D-11D2-BF78-00104BC9156D Initialize() Initializes a newly allocated,
empty IAAFIdentification-supporting object. This method must
be called after allocation, and before any other method can be
called. Succeeds if: - Initialize() has not yet been called on
this object. 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_ALREADY_INITIALIZED
- Initialize() has already been called on this object.
See Also
IAAFIdentification::SetCompanyName
The SetCompanyName method setCompanyName() Sets the Company Name string property.
Syntax
HRESULT SetCompanyName(
wchar_t* pCompanyName
);
Parameters
[in] pCompanyName
Pointer to a company name object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetCompanyName() Sets the Company Name string property. Set the
CompanyName property to the value specified in pCompanyName.
A copy is made of the data so the caller retains ownership of
the *pCompanyName buffer and is responsible for de-allocating
it. There is no pre-set limit to the length of the name, other
than available system memory or disk space. Succeeds if all of
the following are true: - the pCompanyName pointer is valid.
If this method fails the CompanyName property will not be 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_NULL_PARAM
- pCompanyName arg is NULL.
pCompanyName: buffer from which CompanyName is to be read.
See Also
IAAFIdentification::SetProductID
The SetProductID method setProductID() Set the Product ID property to the value specified in pProductID.
Syntax
HRESULT SetProductID(
aafUID_t* pProductID
);
Parameters
[in] pProductID
Pointer to a productID object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetProductID() Set the Product ID property to the value specified
in pProductID. A copy is made of the data so the caller retains
ownership of the *pProductID aafUID_t and is responsible for
de-allocating it. NOTE Stub only. Implementation not yet added.
Succeeds if all of the following are true: - the pProductID pointer
is valid. If this method fails the Product ID property will not
be 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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pProductID arg is NULL.
pProductID: The Product ID.
See Also
IAAFIdentification::SetProductName
The SetProductName method setProductName() Sets the Product Name string property.
Syntax
HRESULT SetProductName(
wchar_t* pProductName
);
Parameters
[in] pProductName
Pointer to a product name object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetProductName() Sets the Product Name string property. Set the
ProductName property to the value specified in pProductName.
A copy is made of the data so the caller retains ownership of
the *pProductName buffer and is responsible for de-allocating
it. There is no pre-set limit to the length of the name, other
than available system memory or disk space. Succeeds if all of
the following are true: - the pProductName pointer is valid.
If this method fails the ProductName property will not be 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_NULL_PARAM
- pProductName arg is NULL.
pProductName: buffer from which ProductName is to be read.
See Also
IAAFIdentification::SetProductVersion
The SetProductVersion method setProductVersion() Set the Product Version property to the value specified in pVersion.
Syntax
HRESULT SetProductVersion(
aafProductVersion_t* pVersion
);
Parameters
[in] pVersion
Pointer to a version object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetProductVersion() Set the Product Version property to the value
specified in pVersion. A copy is made of the data so the caller
retains ownership of the *pVersion struct and is responsible
for de-allocating it. NOTE Stub only. Implementation not yet
added. Succeeds if all of the following are true: - the pVersion
pointer is valid. If this method fails the Product Version property
will not be 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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pVersion arg is NULL.
pVersion: The Product Version.
See Also
IAAFIdentification::SetProductVersionString
The SetProductVersionString method setProductVersionString() Sets the Product Version string property.
Syntax
HRESULT SetProductVersionString(
wchar_t* pProductVersionString
);
Parameters
[in] pProductVersionString
Pointer to a product version string object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetProductVersionString() Sets the Product Version string property.
Set the ProductVersionString property to the value specified
in pProductVersionString. A copy is made of the data so the caller
retains ownership of the *pProductVersionString buffer and is
responsible for de-allocating it. There is no pre-set limit to
the length of the name, other than available system memory or
disk space. Succeeds if all of the following are true: - the
pProductVersionString pointer is valid. If this method fails
the ProductVersionString property will not be 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_NULL_PARAM -
pProductVersionString arg is NULL.
pProductVersionString: buffer from which ProductVersionString
is to be read.
See Also
IAAFIntraFrameMarker Interface
In addition to the methods inherited from IUnknown, the IAAFIntraFrameMarker interface exposes the following methods.
GetHotSpotMatte
GetHotSpotRect
SetHotSpotMatte
SetHotSpotRect
The AAFIntraFrameMarker object implements the IAAFIntraFrameMarker interface and also implements the following:
IAAFIntraFrameMarker::GetHotSpotMatte
The GetHotSpotMatte method getHotSpotMatte() This method will get the HotSpotMatte for this comment marker and place an interface for it into the **ppResult argument.
Syntax
HRESULT GetHotSpotMatte(
IAAFSourceClip** ppResult
);
Parameters
[out] ppResult
If the method succeeds, specifies a pointer to a variable containing a pointer to a result object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
GetHotSpotMatte() This method will get the HotSpotMatte for this
comment marker and place an interface for it into the **ppResult
argument. Succeeds if all of the following are true: - the pResult
pointer is valid. If this method fails nothing will be written
to *pResult. 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_NULL_PARAM
- pResult arg is NULL.
ppResult: HotSpotMatte property value.
See Also
IAAFIntraFrameMarker::GetHotSpotRect
The GetHotSpotRect method .
Syntax
HRESULT GetHotSpotRect(
aafRect_t* pHotSpotRect
);
Parameters
[out] pHotSpotRect
If the method succeeds, specifies a pointer to a hot spot rect object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
************************ Interface IAAFIntraFrameMarker ************************
The IAAFIntraFrameMarker interface is implemented by objects
which represent an area in an image that can cause an action
if a user specifies it during composition playback (typically
by clicking in the specified area). 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
- insufficient system memory is available to perform the operation.
AAFRESULT_NOT_INITIALIZED - This object has not yet had Initialize()
called on it through this object's primary interface. Note that
IAAFMobSlot is a primary interface for an abstract class, so
it is not appropriate for the Initialize() method to exist in
this interface. The Initialize() method is available through
the concrete object's primary interface. 5-11d2-bf9d-00104bc9156d
GetHotSpotRect() This method will get the hot spot rect property.
Succeeds if all of the following are true: - the pHotSpotRect
pointer is valid. 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
- This object has not yet had Initialize() called on it. AAFRESULT_NULL_PARAM
- pHotSpotRect arg is NULL.
pHotSpotRect: HotSpotRect property value.
See Also
IAAFIntraFrameMarker::SetHotSpotMatte
The SetHotSpotMatte method setHotSpotMatte() This method will set the HotSpotMatte for this comment marker.
Syntax
HRESULT SetHotSpotMatte(
IAAFSourceClip* pHotSpotMatte
);
Parameters
[in] pHotSpotMatte
Pointer to a hot spot matte object.
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
SetHotSpotMatte() This method will set the HotSpotMatte for this
comment marker. If this method fails no state will be changed.
This metho