| AAX SDK 2.8.0 Avid Audio Extensions Development Kit

- Welcome
- Manual
- Classes
- Files
- Lists
- Support

- Class List
- Class Index
- Class Hierarchy
- Class Members

Loading...
Searching...
No Matches
List of all members | Classes | Public Member Functions
AAX_ISessionDocument Class Referenceabstract

`#include <AAX_ISessionDocument.h>`

Inheritance diagram for AAX_ISessionDocument:
[legend]

## Description

Interface representing information in a host session document.

This interface wraps the versioned interfaces defined in AAX_IACFSessionDocument.h and provides additional convenience functions providing session data back in the expected format.

See also
  AAX_ISessionDocumentClient

## Classes
class | TempoMap

## Public Member Functions
virtual | ~AAX_ISessionDocument ()=default
virtual bool | Valid () const =0
| Check whether this session document is valid.
virtual std::unique_ptr< TempoMap const > | GetTempoMap ()=0
| Get a copy of the document's tempo map.
virtual AAX_Result | GetDocumentData (AAX_DocumentData_UID const &inDataType, IACFUnknown **outData)=0

## Constructor & Destructor Documentation

## ◆ ~AAX_ISessionDocument()

virtual AAX_ISessionDocument::~AAX_ISessionDocument | ( |  | ) |
| virtual default

## Member Function Documentation

## ◆ Valid()

virtual bool AAX_ISessionDocument::Valid | ( |  | ) | const
| pure virtual

Check whether this session document is valid.

Implemented in AAX_VSessionDocument.

## ◆ GetTempoMap()

virtual std::unique_ptr< TempoMap const > AAX_ISessionDocument::GetTempoMap | ( |  | ) |
| pure virtual

Get a copy of the document's tempo map.

Returns
  A TempoMap interface representing a copy of the current tempo map.
  `nullptr` if the host does not support tempo map data or if an error occurred.

Implemented in AAX_VSessionDocument.

## ◆ GetDocumentData()

virtual AAX_Result AAX_ISessionDocument::GetDocumentData | ( | AAX_DocumentData_UID const & | inDataType,
|  | IACFUnknown ** | outData
| ) |  |
| pure virtual

Get document data of a generic type

Similar to `QueryInterface()` but uses a data type identifier rather than a true IID

The provided interface has already had a reference added, so be careful not to add an additional reference:

ACFPtr<MyType> ptr;
IACFUnknown * docDataPtr{nullptr};
if (AAX_SUCCESS == doc->GetDocumentData(dataUID, &docDataPtr) && docDataPtr) {
ptr.attach(std::static_cast<MyType*>(docDataPtr)); // attach does not AddRef
}
AAX_SUCCESS
@ AAX_SUCCESS
Definition: AAX_Errors.h:49
IACFUnknown
COM compatible IUnknown C++ interface.
Definition: AAX_ACFInterface.doxygen:265

Parameters

  [in] | inDataType | The type of the document data requested
  [out] | outData | An interface providing the requested data, or `nullptr` if the host does not support or cannot provide the requested data type. The reference count has been incremented on this object on behalf of the caller, so the caller must not add an additional reference count and must decrement the reference count on this object to release it. For information about which interface to expect for each requested data type, see the documentation for that data type.

Implemented in AAX_VSessionDocument.

The documentation for this class was generated from the following file:

- AAX_ISessionDocument.h