The IAAFIdentification interface provides information about an application that either created or modified the AAF file. More...
Public Member Functions | |
HRESULT | Initialize ([in] aafCharacter_constptr companyName,[in] aafCharacter_constptr productName,[in] aafCharacter_constptr productVersionString,[in] aafUID_constref productID) |
Initializes a newly allocated IAAFIdentification-supporting object. | |
HRESULT | GetCompanyName ([out, string, size_is(bufSize)] aafCharacter *pCompanyName,[in] aafUInt32 bufSize) |
Gets the Company Name string property. | |
HRESULT | GetCompanyNameBufLen ([out] aafUInt32 *pBufSize) |
Returns size of buffer (in bytes) required for GetCompanyName(). | |
HRESULT | GetProductName ([out, string, size_is(bufSize)] aafCharacter *pProductName,[in] aafUInt32 bufSize) |
Gets the Product Name string property. | |
HRESULT | GetProductNameBufLen ([out] aafUInt32 *pBufSize) |
Returns size of buffer (in bytes) required for GetProductName(). | |
HRESULT | GetProductVersionString ([out, string, size_is(bufSize)] aafCharacter *pProductVersionString,[in] aafUInt32 bufSize) |
Gets the Product Version string property. | |
HRESULT | GetProductVersionStringBufLen ([out] aafUInt32 *pBufSize) |
Returns size of buffer (in bytes) required for GetProductVersionString(). | |
HRESULT | GetProductVersion ([out] aafProductVersion_t *pVersion) |
Gets the Product Version property associated with this identification object and places it into *pVersion. | |
HRESULT | SetProductVersion ([in] aafProductVersion_constref version) |
Set the Product Version property to the value specified in pVersion. | |
HRESULT | GetProductID ([out] aafUID_t *pProductID) |
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. | |
HRESULT | GetDate ([out] aafTimeStamp_t *pTimestamp) |
Writes the Date-time Stamp property into the caller-allocated aafTimeStamp_t specified by the pTimeStamp argument. | |
HRESULT | GetRefImplVersion ([out] aafProductVersion_t *pVersion) |
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. | |
HRESULT | GetPlatform ([out, string, size_is(bufSize)] aafCharacter *pPlatform,[in] aafUInt32 bufSize) |
Gets the Platform string property. | |
HRESULT | GetPlatformBufLen ([out] aafUInt32 *pBufSize) |
Returns size of buffer (in bytes) required for GetPlatform(). | |
HRESULT | GetGenerationID ([out] aafUID_t *pGeneration) |
Obtains the generation of this AAF file, which was generated at the time this identification object was created. |
The IAAFIdentification interface provides information about an application 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
HRESULT IAAFIdentification::GetCompanyName | ( | [out, string, size_is(bufSize)] aafCharacter * | pCompanyName, |
[in] aafUInt32 | bufSize | ||
) |
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:
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
AAFRESULT_NULL_PARAM
AAFRESULT_SMALL_BUF
pCompanyName | [out, string, size_is(bufSize)] buffer into which CompanyName is to be written |
bufSize | [in] size of *pCompanyName buffer in bytes |
HRESULT IAAFIdentification::GetCompanyNameBufLen | ( | [out] aafUInt32 * | pBufSize | ) |
Returns size of buffer (in bytes) required for GetCompanyName().
Succeeds if:
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
AAFRESULT_NULL_PARAM
pBufSize | [out] size of required buffer, in bytes |
HRESULT IAAFIdentification::GetDate | ( | [out] aafTimeStamp_t * | pTimestamp | ) |
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: This is a read-only property.
Succeeds if all of the following are true:
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
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pTimestamp | [out] The date-time stamp |
HRESULT IAAFIdentification::GetGenerationID | ( | [out] aafUID_t * | pGeneration | ) |
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: This is a read-only property.
Succeeds if all of the following are true:
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
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pGeneration | [out] The unique generation |
HRESULT IAAFIdentification::GetPlatform | ( | [out, string, size_is(bufSize)] aafCharacter * | pPlatform, |
[in] aafUInt32 | bufSize | ||
) |
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:
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:
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
AAFRESULT_NULL_PARAM
AAFRESULT_SMALL_BUF
pPlatform | [out, string, size_is(bufSize)] buffer into which Platform is to be written |
bufSize | [in] size of *pPlatform buffer in bytes |
HRESULT IAAFIdentification::GetPlatformBufLen | ( | [out] aafUInt32 * | pBufSize | ) |
Returns size of buffer (in bytes) required for GetPlatform().
Succeeds if:
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
AAFRESULT_NULL_PARAM
pBufSize | [out] size of required buffer, in bytes |
HRESULT IAAFIdentification::GetProductID | ( | [out] aafUID_t * | pProductID | ) |
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.
Succeeds if all of the following are true:
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
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pProductID | [out] The Product ID |
HRESULT IAAFIdentification::GetProductName | ( | [out, string, size_is(bufSize)] aafCharacter * | pProductName, |
[in] aafUInt32 | bufSize | ||
) |
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:
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
AAFRESULT_NULL_PARAM
AAFRESULT_SMALL_BUF
pProductName | [out, string, size_is(bufSize)] buffer into which ProductName is to be written |
bufSize | [in] size of *pProductName buffer in bytes |
HRESULT IAAFIdentification::GetProductNameBufLen | ( | [out] aafUInt32 * | pBufSize | ) |
Returns size of buffer (in bytes) required for GetProductName().
Succeeds if:
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
AAFRESULT_NULL_PARAM
pBufSize | [out] size of required buffer, in bytes |
HRESULT IAAFIdentification::GetProductVersion | ( | [out] aafProductVersion_t * | pVersion | ) |
Gets the Product Version property associated with this identification object and places it into *pVersion.
Succeeds if all of the following are true:
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
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pVersion | [out] The Product Version |
HRESULT IAAFIdentification::GetProductVersionString | ( | [out, string, size_is(bufSize)] aafCharacter * | pProductVersionString, |
[in] aafUInt32 | bufSize | ||
) |
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:
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
AAFRESULT_NULL_PARAM
AAFRESULT_SMALL_BUF
pProductVersionString | [out, string, size_is(bufSize)] buffer into which ProductVersionString is to be written |
bufSize | [in] size of *pProductVersionString buffer in bytes |
HRESULT IAAFIdentification::GetProductVersionStringBufLen | ( | [out] aafUInt32 * | pBufSize | ) |
Returns size of buffer (in bytes) required for GetProductVersionString().
Succeeds if:
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
AAFRESULT_NULL_PARAM
pBufSize | [out] size of required buffer, in bytes |
HRESULT IAAFIdentification::GetRefImplVersion | ( | [out] aafProductVersion_t * | pVersion | ) |
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: This is a read-only property.
Succeeds if all of the following are true:
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
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pVersion | [out] The Reference Implementation Version |
HRESULT IAAFIdentification::Initialize | ( | [in] aafCharacter_constptr | companyName, |
[in] aafCharacter_constptr | productName, | ||
[in] aafCharacter_constptr | productVersionString, | ||
[in] aafUID_constref | productID | ||
) |
Initializes a newly allocated IAAFIdentification-supporting object.
This method must be called after allocation, and before any other method can be called.
This method fills in the mandatory properties of the object. The values of the following required properties are set based on the information given in arguments to this method:
The following mandatory properties will be filled in automatically by the reference implementation:
Succeeds if:
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
AAFRESULT_ALREADY_INITIALIZED
AAFRESULT_NULL_PARAM
companyName | [in] company name string |
productName | [in] product name string |
productVersionString | [in] product version string |
productID | [in] product identification |
HRESULT IAAFIdentification::SetProductVersion | ( | [in] aafProductVersion_constref | version | ) |
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.
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
AAFRESULT_NOT_INITIALIZED
version | [in] The Product Version |