AAX SDK  2.4.1
Avid Audio Extensions Development Kit
AAX_IPointerQueue.h
Go to the documentation of this file.
1 /*================================================================================================*/
2 /*
3  * Copyright 2015, 2018 by Avid Technology, Inc.
4  * All rights reserved.
5  *
6  * CONFIDENTIAL: This document contains confidential information. Do not
7  * read or examine this document unless you are an Avid Technology employee
8  * or have signed a non-disclosure agreement with Avid Technology which protects
9  * the confidentiality of this document. DO NOT DISCLOSE ANY INFORMATION
10  * CONTAINED IN THIS DOCUMENT TO ANY THIRD-PARTY WITHOUT THE PRIOR WRITTEN CONSENT
11  * OF Avid Technology, INC.
12  *
13  */
14 
21 /*================================================================================================*/
23 #ifndef AAX_IPOINTERQUEUE_H
24 #define AAX_IPOINTERQUEUE_H
26 
27 // AAX Includes
28 #include "AAX_IContainer.h"
29 
30 
33 template <typename T>
35 {
36 public:
37  virtual ~AAX_IPointerQueue() {}
38 
39 public:
40  typedef T template_type;
41  typedef T* value_type;
42 
43 public: // AAX_IContainer
50  virtual void Clear() = 0;
51 
52 public: // AAX_IPointerQueue
66  virtual value_type Pop() = 0;
73  virtual value_type Peek() const = 0;
74 };
75 
76 
78 #endif /* defined(AAX_IPOINTERQUEUE_H) */
Abstract container interface.
Definition: AAX_IContainer.h:32
EStatus
Definition: AAX_IContainer.h:38
Definition: AAX_IPointerQueue.h:35
virtual value_type Peek() const =0
T * value_type
The type of values stored in this queue.
Definition: AAX_IPointerQueue.h:41
virtual void Clear()=0
virtual value_type Pop()=0
virtual ~AAX_IPointerQueue()
Definition: AAX_IPointerQueue.h:37
virtual AAX_IContainer::EStatus Push(value_type inElem)=0
T template_type
The type used for this template instance.
Definition: AAX_IPointerQueue.h:40