| AAX SDK 2.8.0 Avid Audio Extensions Development Kit

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

- File List
- File Members

Loading...
Searching...
No Matches
AAX_IDataBuffer.h
Go to the documentation of this file.
1/*================================================================================================*/
2/*
3 *
4 * Copyright 2023-2024 Avid Technology, Inc.
5 * All rights reserved.
6 *
7 * This file is part of the Avid AAX SDK.
8 *
9 * The AAX SDK is subject to commercial or open-source licensing.
10 *
11 * By using the AAX SDK, you agree to the terms of both the Avid AAX SDK License
12 * Agreement and Avid Privacy Policy.
13 *
14 * AAX SDK License: https://developer.avid.com/aax
15 * Privacy Policy: https://www.avid.com/legal/privacy-policy-statement
16 *
17 * Or: You may also use this code under the terms of the GPL v3 (see
18 * www.gnu.org/licenses).
19 *
20 * THE AAX SDK IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
21 * EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
22 * DISCLAIMED.
23 *
24 */
25
29/*================================================================================================*/
30
31#pragma once
32
33#ifndef AAX_IDataBuffer_H
34#define AAX_IDataBuffer_H
35
36#include "AAX_IACFDataBuffer.h"
37#include "AAX.h"
38#include "CACFUnknown.h"
39#include "AAX_UIDs.h"
40#include "acfextras.h"
41
42
48 class AAX_IDataBuffer : public AAX_IACFDataBuffer
49 , public CACFUnknown
50{
51 public:
52 ACF_DECLARE_STANDARD_UNKNOWN()
53
54 ACFMETHOD(InternalQueryInterface)(const acfIID & riid, void **ppvObjOut) AAX_OVERRIDE
55 {
56 if (riid == IID_IAAXDataBufferV1)
57 {
58 *ppvObjOut = static_cast<IACFUnknown *>(this);
59 ( static_cast<IACFUnknown *>(*ppvObjOut))->AddRef();
60 return ACF_OK;
61 }
62
63 return this->CACFUnknown::InternalQueryInterface(riid, ppvObjOut);
64 }
65
66 // CACFUnknown does not support operator=()
67 AAX_DELETE(AAX_IDataBuffer& operator= (const AAX_IDataBuffer&));
68};
69
70#endif
AAX.h
Various utility definitions for AAX.
AAX_UIDs.h
Unique identifiers for AAX/ACF interfaces.
IID_IAAXDataBufferV1
const acfIID IID_IAAXDataBufferV1
ACF interface ID for AAX_IACFDataBuffer.
Definition: AAX_UIDs.h:243
AAX_IACFDataBuffer.h
_acfUID
Definition: AAX_ACFInterface.doxygen:229
IACFUnknown
COM compatible IUnknown C++ interface.
Definition: AAX_ACFInterface.doxygen:265
IACFUnknown::AddRef
virtual acfUInt32 ACFMETHODCALLTYPE AddRef(void)=0
Increments reference count.
AAX_IACFDataBuffer
Versioned interface for reference counted data buffers.
Definition: AAX_IACFDataBuffer.h:54
AAX_IDataBuffer
Interface for reference counted data buffers.
Definition: AAX_IDataBuffer.h:50
AAX_IDataBuffer::AAX_DELETE
AAX_DELETE(AAX_IDataBuffer &operator=(const AAX_IDataBuffer &))
AAX_IDataBuffer::ACF_DECLARE_STANDARD_UNKNOWN
ACF_DECLARE_STANDARD_UNKNOWN() ACFMETHOD(InternalQueryInterface)(const acfIID &riid
AAX_IDataBuffer::AAX_OVERRIDE
void **ppvObjOut AAX_OVERRIDE
Definition: AAX_IDataBuffer.h:55