AAFA Developer Support

Main Page | Class List | File List | Class Members | File Members

IAAFMob2 Interface Reference

List of all members.

Detailed Description

The IAAFMob2 interface is implemented by objects that specify a Metadata Object, which can describe a composition, essence, or physical media.

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

AAFRESULT_NOMEMORY

AAFRESULT_NOT_INITIALIZED

Objects that implement IAAFMob2 also implement the following interfaces:

Definition at line 41830 of file AAF.idl.

Public Member Functions

HRESULT GetMobID ([out] aafMobID_t *pMobID)
 This method returns the unique Mob ID associated with this mob.
HRESULT SetMobID ([in, ref] aafMobID_constref mobID)
 /// When a mob is initially created, the Reference Implementation internally creates a mobID for the new mob.
HRESULT SetName ([in, string] aafCharacter_constptr pName)
 Sets the Mob Name string property.
HRESULT GetName ([out, string, size_is(bufSize)] aafCharacter *pName,[in] aafUInt32 bufSize)
 Gets the Mob Name string property.
HRESULT GetNameBufLen ([out] aafUInt32 *pBufSize)
 Returns size of buffer (in bytes) required for GetName().
HRESULT CountSlots ([out] aafNumSlots_t *pNumSlots)
 This method returns the number of slots contained by this mob.
HRESULT AppendSlot ([in] IAAFMobSlot *pSlot)
 Appends the given mob slot to the mob.
HRESULT PrependSlot ([in] IAAFMobSlot *pSlot)
 Prepends the given mob slot to the mob.
HRESULT InsertSlotAt ([in] aafUInt32 index,[in] IAAFMobSlot *pSlot)
 Inserts the given slot into this mob at the given index.
HRESULT RemoveSlotAt ([in] aafUInt32 index)
 Removes the slot at the given index.
HRESULT GetSlotAt ([in] aafUInt32 index,[out, retval] IAAFMobSlot **ppSlot)
 Returns the indexed slot in *ppSlot.
HRESULT GetSlots ([out] IEnumAAFMobSlots **ppEnum)
 return an enumeration for all mob slots.
HRESULT GetModTime ([out] aafTimeStamp_t *pLastModified)
 This method will return the modification time for this mob.
HRESULT SetModTime ([in, ref] aafTimeStamp_constref modTime)
 This method sets the modification time on a mob.
HRESULT GetCreateTime ([out] aafTimeStamp_t *pCreationTime)
 This method will return the creation time for this mob.
HRESULT SetCreateTime ([in, ref] aafTimeStamp_constref createTime)
 This method sets the creation time on a mob.
HRESULT AppendComment ([in, string] aafCharacter *pCategory,[in, string] aafCharacter_constptr pComment)
 Creates a user-defined comment and appends it to the specified Mob.
HRESULT CountComments ([out] aafUInt32 *pNumComments)
 return total number of comments attached to this mob.
HRESULT GetComments ([out] IEnumAAFTaggedValues **ppEnum)
 return the enumeration for all mob comments.
HRESULT RemoveComment ([in] IAAFTaggedValue *pComment)
 /// Removes the given comment from this mob.
HRESULT AppendNewTimelineSlot ([in] aafRational_t editRate,[in] IAAFSegment *pSegment,[in] aafSlotID_t slotID,[in, string] aafCharacter_constptr pSlotName,[in] aafPosition_t origin,[out] IAAFTimelineMobSlot **ppNewSlot)
 This method creates a new timeline mob slot with the given property values and appends it to the input mob.
HRESULT GetMobInfo ([out] aafTimeStamp_t *pLastModified,[out] aafTimeStamp_t *pCreationTime,[out, size_is(bufSize), string] aafCharacter *pName,[in] aafInt32 bufSize)
 This method will get all mob property information is a single call.
HRESULT OffsetToMobTimecode ([in] IAAFSegment *pTcSeg,[in] aafPosition_t *pOffset,[out] aafTimecode_t *pResult)
 This method will determine the timecode at the given offset into the given timecode segment, and will return it in *pResult.
HRESULT LookupSlot ([in] aafSlotID_t slotId,[out] IAAFMobSlot **ppDestSlot)
 The method will find the mob slot for the given slot id.
HRESULT ChangeRef ([in, ref] aafMobID_constref oldMobID,[in, ref] aafMobID_constref newMobID)
 Finds all Source Clips in the specified Mob that refer to the specified old Mob, and changes the references to point to the new Mob.
HRESULT CloneExternal ([in] aafDepend_t resolveDependencies,[in] aafIncMedia_t includeMedia,[in] IAAFFile *pDestFile,[out] IAAFMob **ppDestMob)
 Clones the specified Source Mob, and optionally all dependent Mobs, to an external file, keeping the same MobID.
HRESULT Copy ([in, string] aafCharacter_constptr pDestMobName,[out] IAAFMob **ppDestMob)
HRESULT AppendKLVData ([in] IAAFKLVData *pData)
 Appends a pre-existing KLV Data object to the specified Mob.
HRESULT CountKLVData ([out] aafUInt32 *pNumData)
 return total number of KLV data objects attached to this mob.
HRESULT GetKLVData ([out] IEnumAAFKLVData **ppEnum)
 return the enumeration for all KLV data objects on this mob.
HRESULT RemoveKLVData ([in] IAAFKLVData *pData)
 /// Removes the given KLV data object from this mob.
HRESULT AppendAttribute ([in] aafCharacter_constptr pName,[in] aafCharacter_constptr pValue)
 Append and attribute name/value pair to the attribute list.
HRESULT CountAttributes ([out] aafUInt32 *pNumAttributes)
 Return the number of attributes contained by this mob.
HRESULT GetAttributes ([out] IEnumAAFTaggedValues **ppEnum)
 Return an attribute enumerator for this mob.
HRESULT RemoveAttribute ([in] IAAFTaggedValue *pAttribute)
 Remove an attribute (tagged value).
HRESULT SetUsageCode ([in] aafUID_constref usageCode)
 Set this mob's usage code.
HRESULT GetUsageCode ([out] aafUID_t *pUsageCode)
 Get this mob's usage code.
HRESULT AppendNewStaticSlot ([in] IAAFSegment *pSegment,[in] aafSlotID_t slotID,[in, string] aafCharacter_constptr pSlotName,[out] IAAFStaticMobSlot **ppNewSlot)
 This method creates a new static mob slot with the given property values and appends it to the input mob.
HRESULT AppendNewEventSlot ([in] aafRational_t editRate,[in] IAAFSegment *pSegment,[in] aafSlotID_t slotID,[in, string] aafCharacter_constptr pSlotName,[in] aafPosition_t origin,[out] IAAFEventMobSlot **ppNewSlot)
 This method creates a new event mob slot with the given property values and appends it to the input mob.


Member Function Documentation

HRESULT IAAFMob2::AppendAttribute [in] aafCharacter_constptr  pName,
[in] aafCharacter_constptr  pValue
 

Append and attribute name/value pair to the attribute list.

Parameters:
pName [in] The attribute name.
pValue [in] The attribute value.

HRESULT IAAFMob2::AppendComment [in, string] aafCharacter *  pCategory,
[in, string] aafCharacter_constptr  pComment
 

Creates a user-defined comment and appends it to the specified Mob.

A Mob comment is implemented as a AAFTaggedValue object of type WCharString.

Succeeds if all of the following are true:

  • the pCategory pointer is valid.
  • the pComment 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 pCategory or pComment args is NULL.

Parameters:
pCategory [in,string] Comment heading
pComment [in, string] Comment value

HRESULT IAAFMob2::AppendKLVData [in] IAAFKLVData pData  ) 
 

Appends a pre-existing KLV Data object to the specified Mob.

Succeeds if all of the following are true:

  • the pKLV 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

  • the pData arg is NULL.

Parameters:
pData [in] KLV object

HRESULT IAAFMob2::AppendNewEventSlot [in] aafRational_t  editRate,
[in] IAAFSegment pSegment,
[in] aafSlotID_t  slotID,
[in, string] aafCharacter_constptr  pSlotName,
[in] aafPosition_t  origin,
[out] IAAFEventMobSlot **  ppNewSlot
 

This method creates a new event mob slot with the given property values and appends it to the input mob.

The returned mob slot is AddRef()ed before it is returned.

Succeeds if all of the following are true:

  • the pSegment pointer is valid.
  • the pSlotName pointer is valid.
  • the ppNewSlot 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

  • any of pSegment, pSlotName, or ppNewSlot arguments is null.

Parameters:
editRate [in] Edit rate property value
pSegment [in] Segment to append as slot component
slotID [in] new slot ID
pSlotName [in, string] new slot name
origin [in] The slot origin
ppNewSlot [out] Newly created slot

HRESULT IAAFMob2::AppendNewStaticSlot [in] IAAFSegment pSegment,
[in] aafSlotID_t  slotID,
[in, string] aafCharacter_constptr  pSlotName,
[out] IAAFStaticMobSlot **  ppNewSlot
 

This method creates a new static mob slot with the given property values and appends it to the input mob.

The returned mob slot is AddRef()ed before it is returned.

Succeeds if all of the following are true:

  • the pSegment pointer is valid.
  • the pSlotName pointer is valid.
  • the ppNewSlot 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

  • any of pSegment, pSlotName, or ppNewSlot arguments is null.

Parameters:
pSegment [in] Segment to append as slot component
slotID [in] new slot ID
pSlotName [in, string] new slot name
ppNewSlot [out] Newly created slot

HRESULT IAAFMob2::AppendNewTimelineSlot [in] aafRational_t  editRate,
[in] IAAFSegment pSegment,
[in] aafSlotID_t  slotID,
[in, string] aafCharacter_constptr  pSlotName,
[in] aafPosition_t  origin,
[out] IAAFTimelineMobSlot **  ppNewSlot
 

This method creates a new timeline mob slot with the given property values and appends it to the input mob.

The returned mob slot is AddRef()ed before it is returned.

Succeeds if all of the following are true:

  • the pSegment pointer is valid.
  • the pSlotName pointer is valid.
  • the ppNewSlot 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

  • any of pSegment, pSlotName, or ppNewSlot arguments is null.

Parameters:
editRate [in] Edit rate property value
pSegment [in] Segment to append as slot component
slotID [in] new slot ID
pSlotName [in, string] new slot name
origin [in] The slot origin
ppNewSlot [out] Newly created slot

HRESULT IAAFMob2::AppendSlot [in] IAAFMobSlot pSlot  ) 
 

Appends the given mob slot to the mob.

Succeeds if all of the following are true:

  • the pSlot 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

  • pSlot is null.

Parameters:
pSlot [in] slot to append

HRESULT IAAFMob2::ChangeRef [in, ref] aafMobID_constref  oldMobID,
[in, ref] aafMobID_constref  newMobID
 

Finds all Source Clips in the specified Mob that refer to the specified old Mob, and changes the references to point to the new Mob.

This function traverses through the entire structure of the input Mob looking for Source Clips, and changes the sourceID property on all Source Clips with oldMobID to newMobID.

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.)

Parameters:
oldMobID [in, ref] Old Mob ID reference in source clip
newMobID [in, ref] New Mob ID reference in source clip

HRESULT IAAFMob2::CloneExternal [in] aafDepend_t  resolveDependencies,
[in] aafIncMedia_t  includeMedia,
[in] IAAFFile pDestFile,
[out] IAAFMob **  ppDestMob
 

Clones the specified Source Mob, and optionally all dependent Mobs, to an external file, keeping the same MobID.

A pointer to the newly created destination mob is returned in *ppDestMob.

This function clones the specified Source Mob in the source file into a destination Mob, with the same MobID, in the destination file. If resolveDependencies is kFollowDepend, the function also clones all Mobs referenced by the specified Source Mob. If includeMedia is kIncludeMedia, the function also copies the media data associated with the Source Mob, returns the destination Mob, and clones all private data.

If the media data is not in the file, the function does not attempt to find it in another file and clone it. Both AAF files must be open before you call this function and both must have the same AAF Version number.

The returned mob is AddRef()ed before it is returned.

Succeeds if all of the following are true:

  • the pDestFile pointer is valid.
  • the ppDestMob 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 pDestFile or ppDestMob arguments is NULL.

Parameters:
resolveDependencies [in] Whether to clone dependent mobs
includeMedia [in] Whether to include media data
pDestFile [in] Destination AAF File
ppDestMob [out] Destination Mob

HRESULT IAAFMob2::Copy [in, string] aafCharacter_constptr  pDestMobName,
[out] IAAFMob **  ppDestMob
 

Parameters:
ppDestMob [out] Destination Mob

HRESULT IAAFMob2::CountAttributes [out] aafUInt32 *  pNumAttributes  ) 
 

Return the number of attributes contained by this mob.

Parameters:
pNumAttributes [out] Pointer to attribute count.

HRESULT IAAFMob2::CountComments [out] aafUInt32 *  pNumComments  ) 
 

return total number of comments attached to this mob.

Succeeds if all of the following are true:

  • the pNumComments pointer is valid.

If this method fails nothing will be written to *pNumComments.

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

  • pNumComments arg is NULL.

Parameters:
pNumComments [out] Number of Mob Comments

HRESULT IAAFMob2::CountKLVData [out] aafUInt32 *  pNumData  ) 
 

return total number of KLV data objects attached to this mob.

Succeeds if all of the following are true:

  • the pNumData pointer is valid.

If this method fails nothing will be written to *pNumComments.

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

  • pNumData arg is NULL.

Parameters:
pNumData [out] Number of KLV data objects

HRESULT IAAFMob2::CountSlots [out] aafNumSlots_t *  pNumSlots  ) 
 

This method returns the number of slots contained by this mob.

Succeeds if all of the following are true:

  • the pNumSlots pointer is valid.

If this method fails nothing will be written to *pNumSlots.

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

  • pNumSlots arg is NULL.

Parameters:
pNumSlots [out] Number of slots

HRESULT IAAFMob2::GetAttributes [out] IEnumAAFTaggedValues **  ppEnum  ) 
 

Return an attribute enumerator for this mob.

Parameters:
ppEnum [out] Pointer to the new enumerator object created by this method.

HRESULT IAAFMob2::GetComments [out] IEnumAAFTaggedValues **  ppEnum  ) 
 

return the enumeration for all mob comments.

The returned enumerator is AddRef()ed before it is returned. Mob comments are implemented as AAFTaggedValue of type WCharString. The enumerator is implemented as a EnumAAAFTaggedValues.

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.

Parameters:
ppEnum [out] Mob Comments

HRESULT IAAFMob2::GetCreateTime [out] aafTimeStamp_t *  pCreationTime  ) 
 

This method will return the creation time for this mob.

Succeeds if all of the following are true:

  • the pCreationTime pointer is valid.

If this method fails nothing will be written to *pCreationTime.

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

  • pCreationTime arg is NULL.

Parameters:
pCreationTime [out] Creation Time

HRESULT IAAFMob2::GetKLVData [out] IEnumAAFKLVData **  ppEnum  ) 
 

return the enumeration for all KLV data objects on this mob.

The returned enumerator is AddRef()ed before it is returned. The enumerator is implemented as a EnumAAFKLVData.

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.

Parameters:
ppEnum [out] KLV data objects

HRESULT IAAFMob2::GetMobID [out] aafMobID_t *  pMobID  ) 
 

This method returns the unique Mob ID associated with this mob.

Succeeds if all of the following are true:

  • the pMobID pointer is valid.

If this method fails nothing will be written to *pMobID.

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

  • pMobID arg is NULL.

Parameters:
pMobID [out] The unique media object id

HRESULT IAAFMob2::GetMobInfo [out] aafTimeStamp_t *  pLastModified,
[out] aafTimeStamp_t *  pCreationTime,
[out, size_is(bufSize), string] aafCharacter *  pName,
[in] aafInt32  bufSize
 

This method will get all mob property information is a single call.

Caller may call GetNameBufLen() to determine the required pName buffer size.

Succeeds if all of the following are true:

  • the pLastModified pointer is valid.
  • the pCreationTime pointer is valid.
  • the pName pointer is valid.

If this method fails nothing will be written to *pLastModified, pCreationTime, or *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

  • any of pLastModified, pCreationTime, or pName arguments is NULL.

AAFRESULT_SMALLBUF

  • bufSize indicates the buffer is too small to hold the string.

Parameters:
pLastModified [out] Modified Time
pCreationTime [out] Creation Time
pName [out, size_is(bufSize), string] Mob Name
bufSize [in] size of the supplied buffer.

HRESULT IAAFMob2::GetModTime [out] aafTimeStamp_t *  pLastModified  ) 
 

This method will return the modification time for this mob.

Succeeds if all of the following are true:

  • the pLastModified pointer is valid.

If this method fails nothing will be written to *pLastModified.

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

  • pLastModified arg is NULL.

Parameters:
pLastModified [out] Modified Time

HRESULT IAAFMob2::GetName [out, string, size_is(bufSize)] aafCharacter *  pName,
[in] aafUInt32  bufSize
 

Gets the Mob Name string property.

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.

Parameters:
pName [out, string, size_is(bufSize)] buffer into which Name is to be written
bufSize [in] size of *pName buffer in bytes

HRESULT IAAFMob2::GetNameBufLen [out] aafUInt32 *  pBufSize  ) 
 

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.

Parameters:
pBufSize [out] size of required buffer, in bytes

HRESULT IAAFMob2::GetSlotAt [in] aafUInt32  index,
[out, retval] IAAFMobSlot **  ppSlot
 

Returns the indexed slot in *ppSlot.

Succeeds if all of the following are true:

  • ppSlot is a valid pointer.
  • index is less than the result obtained by CountSlots().

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

  • ppSlot is null.

AAFRESULT_BADINDEX

  • index is not less than the result obtained from CountSlots().

Parameters:
index [in] index of slot to be obtained
ppSlot [out, retval] the returned slot

HRESULT IAAFMob2::GetSlots [out] IEnumAAFMobSlots **  ppEnum  ) 
 

return an enumeration for all mob slots.

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.

Parameters:
ppEnum [out] Mob Slot Enumeration

HRESULT IAAFMob2::GetUsageCode [out] aafUID_t *  pUsageCode  ) 
 

Get this mob's usage code.

Parameters:
pUsageCode [out] Pointer to usage code.

HRESULT IAAFMob2::InsertSlotAt [in] aafUInt32  index,
[in] IAAFMobSlot pSlot
 

Inserts the given slot into this mob at the given index.

All existing slots at the given and higher index will be moved up one index to accommodate.

Succeeds if all of the following are true:

  • the pSlot pointer is valid.
  • index is less than or equal to the result obtained by CountSlots().

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

  • pSlot is null.

AAFRESULT_BADINDEX

  • index is greater than the result obtained from CountSlots().

Parameters:
index [in] index where slot is to be inserted
pSlot [in] slot to insert

HRESULT IAAFMob2::LookupSlot [in] aafSlotID_t  slotId,
[out] IAAFMobSlot **  ppDestSlot
 

The method will find the mob slot for the given slot id.

The returned mob slot is AddRef()ed before it is returned.

Succeeds if all of the following are true:

  • the ppDestSlot pointer is valid.
  • the given slot ID is found.

If this method fails nothing will be written to *ppDestSlot.

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

  • ppDestSlot arg is NULL.

Parameters:
slotId [in] The requested slot id
ppDestSlot [out] The requested slot

HRESULT IAAFMob2::OffsetToMobTimecode [in] IAAFSegment pTcSeg,
[in] aafPosition_t *  pOffset,
[out] aafTimecode_t *  pResult
 

This method will determine the timecode at the given offset into the given timecode segment, and will return it in *pResult.

If pTcSeg is NULL, will search for the slot containing a timecode segment and will use that instead.

Succeeds if all of the following are true:

  • the pTcSeg pointer is valid.
  • the pOffset pointer is valid.
  • the pResult pointer is valid.
  • Timecode track exists.

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

  • either pOffset or pResult argument is NULL.

AAFRESULT_TIMECODE_NOT_FOUND

  • timecode track wasn't found.

Parameters:
pTcSeg [in] Timecode Segment
pOffset [in] Offset into segment in edit units for that segment's mob slot
pResult [out] The resulting timecode

HRESULT IAAFMob2::PrependSlot [in] IAAFMobSlot pSlot  ) 
 

Prepends the given mob slot to the mob.

Succeeds if all of the following are true:

  • the pSlot 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

  • pSlot is null.

Parameters:
pSlot [in] slot to prepend

HRESULT IAAFMob2::RemoveAttribute [in] IAAFTaggedValue pAttribute  ) 
 

Remove an attribute (tagged value).

Parameters:
pAttribute [in] Pointer to the tagged value attribute.

HRESULT IAAFMob2::RemoveComment [in] IAAFTaggedValue pComment  ) 
 

/// Removes the given comment from this mob.

Succeeds if all of the following are true:

  • the pComment pointer is valid.
  • the given comment is present in the mob.

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

  • pComment is null.

AAFRESULT_OBJECT_NOT_FOUND

  • the given comment is not in this mob.

Parameters:
pComment [in] Comment to remove

HRESULT IAAFMob2::RemoveKLVData [in] IAAFKLVData pData  ) 
 

/// Removes the given KLV data object from this mob.

Succeeds if all of the following are true:

  • the pData pointer is valid.
  • the given KLV data object is present in the mob.

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

  • pData is null.

AAFRESULT_OBJECT_NOT_FOUND

  • the given KLV data object is not in this mob.

Parameters:
pData [in] KLV data object to remove

HRESULT IAAFMob2::RemoveSlotAt [in] aafUInt32  index  ) 
 

Removes the slot at the given index.

All existing slots at indices higher than the given index will be moved down one index to accommodate.

Succeeds if all of the following are true:

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_BADINDEX

  • index is not less than the result obtained from CountSlots().

Parameters:
index [in] index of slot to be removed

HRESULT IAAFMob2::SetCreateTime [in, ref] aafTimeStamp_constref  createTime  ) 
 

This method sets the creation time on a mob.

The creation time is initially set to the time that the mob was created. Therefore, this method should be called explicitly to change the creation time.

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.)

Parameters:
createTime [in, ref] New Creation Time

HRESULT IAAFMob2::SetMobID [in, ref] aafMobID_constref  mobID  ) 
 

/// When a mob is initially created, the Reference Implementation internally creates a mobID for the new mob.

This method should be used to change the mob's identity to an explicit mobID.

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.)

Parameters:
mobID [in, ref] New Mob ID

HRESULT IAAFMob2::SetModTime [in, ref] aafTimeStamp_constref  modTime  ) 
 

This method sets the modification time on a mob.

The modification time is initially set to the time that the mob was created. The Reference Implementation does not maintain the modification time every time that a mob has been updated. Therefore, this method should be called explicitly to change the modification time.

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.)

Parameters:
modTime [in, ref] New Modification Time

HRESULT IAAFMob2::SetName [in, string] aafCharacter_constptr  pName  ) 
 

Sets the Mob Name string property.

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.

Parameters:
pName [in, string] buffer from which Name is to be read

HRESULT IAAFMob2::SetUsageCode [in] aafUID_constref  usageCode  ) 
 

Set this mob's usage code.

Parameters:
usageCode [in] The usage code value.


Generated on Thu Feb 17 09:34:19 2005 for AAF COM API by doxygen 1.4.1