| AAX SDK 2.6.1 Avid Audio Extensions Development Kit

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

- File List
- File Members

Loading...
Searching...
No Matches
AAX_VSessionDocument.h
Go to the documentation of this file.
1/*================================================================================================*/
2/*
3 *
4 * Copyright 2023 Avid Technology, Inc.
5 * All rights reserved.
6 *
7 * CONFIDENTIAL: this document contains confidential information of Avid. Do
8 * not disclose to any third party. Use of the information contained in this
9 * document is subject to an Avid SDK license.
10 *
11 */
12
16/*================================================================================================*/
17
18#pragma once
19#ifndef AAX_VSessionDocument_H
20#define AAX_VSessionDocument_H
21
22#include "AAX_ISessionDocument.h"
23#include "ACFPtr.h"
24
25 class AAX_IACFSessionDocument;
26 class AAX_IDataBufferWrapper;
27
28 class AAX_VSessionDocument : public AAX_ISessionDocument
29{
30 public:
31 explicit AAX_VSessionDocument(IACFUnknown * iUnknown);
32 ~AAX_VSessionDocument() AAX_OVERRIDE;
33
34 class VTempoMap : public AAX_ISessionDocument::TempoMap
35 {
36 public:
37 ~VTempoMap() AAX_OVERRIDE;
38 explicit VTempoMap(IACFUnknown & inDataBuffer);
39 int32_t Size() const AAX_OVERRIDE;
40 AAX_CTempoBreakpoint const * Data() const AAX_OVERRIDE;
41 private:
42 std::unique_ptr<AAX_IDataBufferWrapper const> mDataBuffer;
43 };
44
48 void Clear();
49
50 bool Valid() const AAX_OVERRIDE;
51 std::unique_ptr<AAX_ISessionDocument::TempoMap const> GetTempoMap() AAX_OVERRIDE;
52 AAX_Result GetDocumentData(AAX_DocumentData_UID const & inDataType, IACFUnknown ** outData) AAX_OVERRIDE;
53
54private:
55 ACFPtr<AAX_IACFSessionDocument> mSessionDocumentV1;
56};
57
58#endif // AAX_VSessionDocument_H
AAX_Result
int32_t AAX_Result
Definition: AAX.h:334
AAX_OVERRIDE
#define AAX_OVERRIDE
override keyword macro
Definition: AAX.h:151
AAX_ISessionDocument.h
_acfUID
Definition: AAX_ACFInterface.doxygen:216
IACFUnknown
COM compatible IUnknown C++ interface.
Definition: AAX_ACFInterface.doxygen:252
AAX_IACFSessionDocument
Interface representing information in a host session document.
Definition: AAX_IACFSessionDocument.h:38
AAX_IDataBufferWrapper
Wrapper for an AAX_IDataBuffer.
Definition: AAX_IDataBufferWrapper.h:36
AAX_ISessionDocument
Interface representing information in a host session document.
Definition: AAX_ISessionDocument.h:39
AAX_ISessionDocument::TempoMap
Definition: AAX_ISessionDocument.h:44
AAX_CTempoBreakpoint
Definition: AAX_SessionDocumentTypes.h:32
AAX_VSessionDocument
Definition: AAX_VSessionDocument.h:29
AAX_VSessionDocument::GetDocumentData
AAX_Result GetDocumentData(AAX_DocumentData_UID const &inDataType, IACFUnknown **outData) AAX_OVERRIDE
AAX_VSessionDocument::Clear
void Clear()
Release all interface references.
AAX_VSessionDocument::Valid
bool Valid() const AAX_OVERRIDE
Check whether this session document is valid.
AAX_VSessionDocument::~AAX_VSessionDocument
~AAX_VSessionDocument() AAX_OVERRIDE
AAX_VSessionDocument::AAX_VSessionDocument
AAX_VSessionDocument(IACFUnknown *iUnknown)
AAX_VSessionDocument::GetTempoMap
std::unique_ptr< AAX_ISessionDocument::TempoMap const > GetTempoMap() AAX_OVERRIDE
Get a copy of the document's tempo map.
AAX_VSessionDocument::VTempoMap
Definition: AAX_VSessionDocument.h:35
AAX_VSessionDocument::VTempoMap::~VTempoMap
~VTempoMap() AAX_OVERRIDE