Navigation
API > API/Plugins > API/Plugins/ElectraBase > API/Plugins/ElectraBase/Core
Inheritance Hierarchy
- TMediaNoncopyable
- FMediaLockCriticalSection
- TMediaQueueFixedStatic
- TMediaQueueFixedStaticNoLock
References
| Module | ElectraBase |
| Header | /Engine/Plugins/Media/ElectraUtil/Source/ElectraBase/Public/Core/MediaQueue.h |
| Include | #include "Core/MediaQueue.h" |
Syntax
template<typename T, uint32 CAPACITY, typename L>
class TMediaQueueFixedStatic : public FMediaLockCriticalSection
Remarks
Object safe queue class.
Implements by-value methods only to avoid working with references.
Methods like T& Push() T& operatorint32 T& Front()
are dangerous when used in a multi-threaded environment since the elements cannot be protected by an internal mutex. If you are using an external mutex to ensure object safety you may add such functions, but please derive a new class for this!!! (or use the one below)
Variables
| Type | Name | Description | |
|---|---|---|---|
| T * | Elements | ||
| uint8[CAPACITY *sizeof(T)] | FixedElements | ||
| int32 | IdxIn | ||
| int32 | IdxOut | ||
| int32 | NumIn |
Constructors
| Type | Name | Description | |
|---|---|---|---|
TMediaQueueFixedStatic
(
const MyType& rhs |
Not copyable (for now) because of the possible mutex class. |
Destructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| int32 | Capacity () |
||
| void | Clear () |
||
| T | Front () |
||
| bool | IsEmpty () |
||
| bool | IsFull () |
||
| int32 | Num () |
||
| T | Pop () |
||
| void | Push
(
const T& element |
||
| void | PushFront
(
const T& element |
Operators
Typedefs
| Name | Description |
|---|---|
| ElementType | |
| MyType |