| 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_IACFTask.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
32/*================================================================================================*/
33
34#pragma once
35
36#ifndef AAX_IACFTask_H
37#define AAX_IACFTask_H
38
39#include "AAX.h"
40
41#ifdef __clang__
42#pragma clang diagnostic push
43#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
44#endif
45
46#include "acfunknown.h"
47
48 class AAX_IACFDataBuffer;
49
55 enum class AAX_TaskCompletionStatus : int32_t {
56 None = 0
57 ,Done = 1
58 ,Canceled = 2
59 ,Error = 3
60};
61
69 class AAX_IACFTask : public IACFUnknown
70{
71 public:
72 virtual AAX_Result GetType(AAX_CTypeID * oType) const = 0;
73 virtual AAX_IACFDataBuffer const * GetArgumentOfType(AAX_CTypeID iType) const = 0;
74
75 virtual AAX_Result SetProgress(float iProgress) = 0;
76 virtual float GetProgress() const = 0;
77
78 virtual AAX_Result AddResult(AAX_IACFDataBuffer const * iResult) = 0;
79
91 virtual AAX_Result SetDone(AAX_TaskCompletionStatus iStatus) = 0;
92};
93
94#ifdef __clang__
95#pragma clang diagnostic pop
96#endif
97
98#endif //AAX_IACFTask_H
AAX.h
Various utility definitions for AAX.
AAX_Result
int32_t AAX_Result
Definition: AAX.h:347
AAX_CTypeID
uint32_t AAX_CTypeID
Matches type of OSType used in classic plugins.
Definition: AAX.h:346
AAX_TaskCompletionStatus
AAX_TaskCompletionStatus
Definition: AAX_IACFTask.h:55
AAX_TaskCompletionStatus::Canceled
@ Canceled
AAX_TaskCompletionStatus::None
@ None
AAX_TaskCompletionStatus::Error
@ Error
AAX_TaskCompletionStatus::Done
@ Done
IACFUnknown
COM compatible IUnknown C++ interface.
Definition: AAX_ACFInterface.doxygen:265
AAX_IACFDataBuffer
Versioned interface for reference counted data buffers.
Definition: AAX_IACFDataBuffer.h:54
AAX_IACFTask
Versioned interface for an asynchronous task.
Definition: AAX_IACFTask.h:70
AAX_IACFTask::GetArgumentOfType
virtual AAX_IACFDataBuffer const * GetArgumentOfType(AAX_CTypeID iType) const =0
AAX_IACFTask::GetProgress
virtual float GetProgress() const =0
AAX_IACFTask::AddResult
virtual AAX_Result AddResult(AAX_IACFDataBuffer const *iResult)=0
Attach result data to this task.
AAX_IACFTask::SetDone
virtual AAX_Result SetDone(AAX_TaskCompletionStatus iStatus)=0
Inform the host that the task is completed.
AAX_IACFTask::GetType
virtual AAX_Result GetType(AAX_CTypeID *oType) const =0
AAX_IACFTask::SetProgress
virtual AAX_Result SetProgress(float iProgress)=0