|
CPN
Computational Process Networks
|
#include <CPNThresholdQueue.h>
Inheritance diagram for CPN::ThresholdQueue::TQImpl:
Collaboration diagram for CPN::ThresholdQueue::TQImpl:Public Types | |
| typedef ThresholdQueueBase::ulong | ulong |
Public Member Functions | |
| TQImpl (unsigned length, unsigned maxthres, unsigned numchan) | |
| TQImpl (const ThresholdQueueAttr &attr) | |
| TQImpl * | Grow (unsigned queueLen, unsigned maxThresh, bool copy) |
| void | Reset (void) |
| void * | GetRawEnqueuePtr (ulong enqueueThresh, ulong chan=0) const |
| void | Enqueue (ulong count) |
| const void * | GetRawDequeuePtr (ulong dequeueThresh, ulong chan=0) const |
| void | Dequeue (ulong count) |
| ulong | Count (void) const |
| ulong | Freespace (void) const |
| bool | Empty (void) const |
| bool | Full (void) const |
| ulong | QueueLength (void) const |
| ulong | MaxThreshold (void) const |
| ulong | NumChannels (void) const |
| ulong | ChannelStride (void) const |
| ulong | ElementsEnqueued (void) const |
| ulong | ElementsDequeued (void) const |
| void | Grow (ulong queueLen, ulong maxThresh) |
Protected Member Functions | |
| void | AllocateBuf (ulong queueLen, ulong maxThresh, ulong numChans, bool useMBS) |
Protected Attributes | |
| ulong | elementSize |
| ulong | head |
| ulong | tail |
| ulong | queueLength |
| ulong | maxThreshold |
| ulong | numChannels |
| ulong | channelStride |
| ulong | chanOffset |
| ulong | baseOffset |
| ulong | elementsEnqueued |
| ulong | elementsDequeued |
| void * | base |
| MirrorBufferSet * | mbs |
The actual queue implementation.
Definition at line 79 of file CPNThresholdQueue.h.
Definition at line 81 of file CPNThresholdQueue.h.
| CPN::ThresholdQueue::TQImpl::TQImpl | ( | unsigned | length, |
| unsigned | maxthres, | ||
| unsigned | numchan | ||
| ) |
Definition at line 206 of file CPNThresholdQueue.cc.
| CPN::ThresholdQueue::TQImpl::TQImpl | ( | const ThresholdQueueAttr & | attr | ) |
Definition at line 211 of file CPNThresholdQueue.cc.
|
protectedinherited |
Definition at line 71 of file ThresholdQueueBase.cc.
References ThresholdQueueBase::base, ThresholdQueueBase::baseOffset, MirrorBufferSet::BufferSize(), ThresholdQueueBase::channelStride, ThresholdQueueBase::chanOffset, ThresholdQueueBase::elementSize, ThresholdQueueBase::maxThreshold, ThresholdQueueBase::mbs, MINIMUM_ALIGNMENT, MirrorBufferSet::MirrorSize(), ThresholdQueueBase::numChannels, ThresholdQueueBase::queueLength, ThresholdQueueBase::Reset(), and MirrorBufferSet::Supported().
Referenced by ThresholdQueueBase::Grow(), and ThresholdQueueBase::ThresholdQueueBase().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineinherited |
Definition at line 114 of file ThresholdQueueBase.h.
References ThresholdQueueBase::channelStride.
Referenced by CPN::ThresholdQueue::UnlockedDequeueChannelStride(), and CPN::ThresholdQueue::UnlockedEnqueueChannelStride().
Here is the caller graph for this function:
|
inherited |
Definition at line 217 of file ThresholdQueueBase.cc.
References ThresholdQueueBase::head, ThresholdQueueBase::queueLength, and ThresholdQueueBase::tail.
Referenced by ThresholdQueueBase::Empty(), CPN::RemoteQueue::EnqueuePacket(), ThresholdQueueBase::Freespace(), ThresholdQueueBase::GetRawDequeuePtr(), Grow(), ThresholdQueueBase::Grow(), CPN::RemoteQueue::InternalCheckStatus(), CPN::ThresholdQueue::InternalEnqueue(), CPN::RemoteQueue::ReadBlockPacket(), CPN::RemoteQueue::SendDequeuePacket(), CPN::RemoteQueue::SendEnqueuePacket(), CPN::ThresholdQueue::UnlockedCount(), CPN::RemoteQueue::UnlockedCount(), and CPN::RemoteQueue::WriteBlockPacket().
Here is the caller graph for this function:
|
inherited |
Definition at line 205 of file ThresholdQueueBase.cc.
References ThresholdQueueBase::elementsDequeued, ThresholdQueueBase::head, and ThresholdQueueBase::queueLength.
Referenced by Grow(), ThresholdQueueBase::Grow(), CPN::ThresholdQueue::InternalDequeue(), and CPN::ThresholdQueue::InternalEnqueue().
Here is the caller graph for this function:
|
inlineinherited |
Definition at line 118 of file ThresholdQueueBase.h.
References ThresholdQueueBase::elementsDequeued.
Referenced by Grow(), ThresholdQueueBase::Grow(), and CPN::ThresholdQueue::UnlockedNumDequeued().
Here is the caller graph for this function:
|
inlineinherited |
Definition at line 117 of file ThresholdQueueBase.h.
References ThresholdQueueBase::elementsEnqueued.
Referenced by Grow(), ThresholdQueueBase::Grow(), and CPN::ThresholdQueue::UnlockedNumEnqueued().
Here is the caller graph for this function:
|
inlineinherited |
Definition at line 107 of file ThresholdQueueBase.h.
References ThresholdQueueBase::Count().
Referenced by CPN::RemoteQueue::InternalCheckStatus(), CPN::ThresholdQueue::UnlockedEmpty(), and CPN::RemoteQueue::UnlockedEmpty().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 162 of file ThresholdQueueBase.cc.
References ThresholdQueueBase::base, ThresholdQueueBase::channelStride, ThresholdQueueBase::elementsEnqueued, ThresholdQueueBase::elementSize, ThresholdQueueBase::maxThreshold, ThresholdQueueBase::mbs, ThresholdQueueBase::numChannels, ThresholdQueueBase::queueLength, and ThresholdQueueBase::tail.
Referenced by ThresholdQueueBase::Grow(), and CPN::ThresholdQueue::InternalEnqueue().
Here is the caller graph for this function:
|
inherited |
Definition at line 229 of file ThresholdQueueBase.cc.
References ThresholdQueueBase::Count(), and ThresholdQueueBase::queueLength.
Referenced by CPN::RemoteQueue::EnqueuePacket(), ThresholdQueueBase::Full(), ThresholdQueueBase::GetRawEnqueuePtr(), CPN::RemoteQueue::InternalCheckStatus(), and CPN::ThresholdQueue::UnlockedFreespace().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineinherited |
Definition at line 108 of file ThresholdQueueBase.h.
References ThresholdQueueBase::Freespace().
Referenced by CPN::ThresholdQueue::UnlockedFull().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inherited |
Definition at line 148 of file ThresholdQueueBase.cc.
References ThresholdQueueBase::base, ThresholdQueueBase::channelStride, ThresholdQueueBase::Count(), ThresholdQueueBase::elementSize, ThresholdQueueBase::head, ThresholdQueueBase::MaxThreshold(), and ThresholdQueueBase::queueLength.
Referenced by ThresholdQueue< T >::GetDequeuePtr(), Grow(), ThresholdQueueBase::Grow(), CPN::ThresholdQueue::InternalEnqueue(), and CPN::ThresholdQueue::InternalGetRawDequeuePtr().
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 134 of file ThresholdQueueBase.cc.
References ThresholdQueueBase::base, ThresholdQueueBase::channelStride, ThresholdQueueBase::elementSize, ThresholdQueueBase::Freespace(), ThresholdQueueBase::MaxThreshold(), ThresholdQueueBase::queueLength, and ThresholdQueueBase::tail.
Referenced by ThresholdQueue< T >::GetEnqueuePtr(), ThresholdQueueBase::Grow(), CPN::ThresholdQueue::InternalEnqueue(), and CPN::ThresholdQueue::InternalGetRawEnqueuePtr().
Here is the call graph for this function:
Here is the caller graph for this function:| ThresholdQueue::TQImpl * CPN::ThresholdQueue::TQImpl::Grow | ( | unsigned | queueLen, |
| unsigned | maxThresh, | ||
| bool | copy | ||
| ) |
Definition at line 216 of file CPNThresholdQueue.cc.
References ASSERT, ThresholdQueueBase::Count(), ThresholdQueueBase::Dequeue(), ThresholdQueueBase::ElementsDequeued(), ThresholdQueueBase::ElementsEnqueued(), CPN::QueueBase::Enqueue(), ThresholdQueueBase::GetRawDequeuePtr(), CPN::QueueBase::GetRawEnqueuePtr(), ThresholdQueueBase::head, ThresholdQueueBase::MaxThreshold(), CPN::QueueBase::MaxThreshold(), CPN::QueueBase::QueueLength(), and ThresholdQueueBase::tail.
Referenced by CPN::ThresholdQueue::UnlockedGrow().
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 242 of file ThresholdQueueBase.cc.
References ThresholdQueueBase::AllocateBuf(), ThresholdQueueBase::Count(), ThresholdQueueBase::Dequeue(), ThresholdQueueBase::ElementsDequeued(), ThresholdQueueBase::elementsDequeued, ThresholdQueueBase::ElementsEnqueued(), ThresholdQueueBase::elementsEnqueued, ThresholdQueueBase::elementSize, ThresholdQueueBase::Enqueue(), ThresholdQueueBase::GetRawDequeuePtr(), ThresholdQueueBase::GetRawEnqueuePtr(), ThresholdQueueBase::MaxThreshold(), ThresholdQueueBase::mbs, ThresholdQueueBase::numChannels, and ThresholdQueueBase::QueueLength().
Here is the call graph for this function:
|
inlineinherited |
Definition at line 111 of file ThresholdQueueBase.h.
References ThresholdQueueBase::maxThreshold.
Referenced by CPN::RemoteQueue::EnqueuePacket(), ThresholdQueueBase::GetRawDequeuePtr(), ThresholdQueueBase::GetRawEnqueuePtr(), Grow(), ThresholdQueueBase::Grow(), CPN::RemoteQueue::GrowPacket(), CPN::ThresholdQueue::InternalEnqueue(), CPN::RemoteQueue::SendEnqueuePacket(), CPN::RemoteQueue::SendGrowPacket(), CPN::RemoteQueue::UnlockedGrow(), and CPN::ThresholdQueue::UnlockedMaxThreshold().
Here is the caller graph for this function:
|
inlineinherited |
Definition at line 113 of file ThresholdQueueBase.h.
References ThresholdQueueBase::numChannels.
Referenced by CPN::RemoteQueue::EnqueuePacket(), CPN::ThresholdQueue::InternalEnqueue(), CPN::RemoteQueue::SendEnqueuePacket(), and CPN::ThresholdQueue::UnlockedNumChannels().
Here is the caller graph for this function:
|
inlineinherited |
Definition at line 110 of file ThresholdQueueBase.h.
References ThresholdQueueBase::queueLength.
Referenced by CPN::RemoteQueue::EnqueuePacket(), ThresholdQueueBase::Grow(), and CPN::ThresholdQueue::UnlockedQueueLength().
Here is the caller graph for this function:
|
inherited |
Definition at line 108 of file ThresholdQueueBase.cc.
References ThresholdQueueBase::elementsDequeued, ThresholdQueueBase::elementsEnqueued, ThresholdQueueBase::head, and ThresholdQueueBase::tail.
Referenced by ThresholdQueueBase::AllocateBuf(), CPN::ThresholdQueue::InternalReset(), CPN::RemoteQueue::ResetPacket(), and ThresholdQueueBase::ThresholdQueueBase().
Here is the caller graph for this function:
|
protectedinherited |
Definition at line 129 of file ThresholdQueueBase.h.
Referenced by ThresholdQueueBase::AllocateBuf(), ThresholdQueueBase::Enqueue(), ThresholdQueueBase::GetRawDequeuePtr(), ThresholdQueueBase::GetRawEnqueuePtr(), and ThresholdQueueBase::~ThresholdQueueBase().
|
protectedinherited |
Definition at line 127 of file ThresholdQueueBase.h.
Referenced by ThresholdQueueBase::AllocateBuf(), and ThresholdQueueBase::ThresholdQueueBase().
|
protectedinherited |
Definition at line 126 of file ThresholdQueueBase.h.
Referenced by ThresholdQueueBase::AllocateBuf(), ThresholdQueueBase::ChannelStride(), ThresholdQueueBase::Enqueue(), ThresholdQueueBase::GetRawDequeuePtr(), and ThresholdQueueBase::GetRawEnqueuePtr().
|
protectedinherited |
Definition at line 127 of file ThresholdQueueBase.h.
Referenced by ThresholdQueueBase::AllocateBuf(), and ThresholdQueueBase::ThresholdQueueBase().
|
protectedinherited |
Definition at line 128 of file ThresholdQueueBase.h.
Referenced by ThresholdQueueBase::Dequeue(), ThresholdQueueBase::ElementsDequeued(), ThresholdQueueBase::Grow(), and ThresholdQueueBase::Reset().
|
protectedinherited |
Definition at line 128 of file ThresholdQueueBase.h.
Referenced by ThresholdQueueBase::ElementsEnqueued(), ThresholdQueueBase::Enqueue(), ThresholdQueueBase::Grow(), and ThresholdQueueBase::Reset().
|
protectedinherited |
Definition at line 123 of file ThresholdQueueBase.h.
Referenced by ThresholdQueueBase::AllocateBuf(), ThresholdQueueBase::Enqueue(), ThresholdQueueBase::GetRawDequeuePtr(), ThresholdQueueBase::GetRawEnqueuePtr(), ThresholdQueueBase::Grow(), and ThresholdQueueBase::ThresholdQueueBase().
|
protectedinherited |
Definition at line 124 of file ThresholdQueueBase.h.
Referenced by ThresholdQueueBase::Count(), ThresholdQueueBase::Dequeue(), ThresholdQueueBase::GetRawDequeuePtr(), Grow(), and ThresholdQueueBase::Reset().
|
protectedinherited |
Definition at line 125 of file ThresholdQueueBase.h.
Referenced by ThresholdQueueBase::AllocateBuf(), ThresholdQueueBase::Enqueue(), ThresholdQueueBase::MaxThreshold(), and ThresholdQueueBase::ThresholdQueueBase().
|
protectedinherited |
Definition at line 130 of file ThresholdQueueBase.h.
Referenced by ThresholdQueueBase::AllocateBuf(), ThresholdQueueBase::Enqueue(), ThresholdQueueBase::Grow(), and ThresholdQueueBase::~ThresholdQueueBase().
|
protectedinherited |
Definition at line 126 of file ThresholdQueueBase.h.
Referenced by ThresholdQueueBase::AllocateBuf(), ThresholdQueueBase::Enqueue(), ThresholdQueueBase::Grow(), ThresholdQueueBase::NumChannels(), and ThresholdQueueBase::ThresholdQueueBase().
|
protectedinherited |
Definition at line 125 of file ThresholdQueueBase.h.
Referenced by ThresholdQueueBase::AllocateBuf(), ThresholdQueueBase::Count(), ThresholdQueueBase::Dequeue(), ThresholdQueueBase::Enqueue(), ThresholdQueueBase::Freespace(), ThresholdQueueBase::GetRawDequeuePtr(), ThresholdQueueBase::GetRawEnqueuePtr(), ThresholdQueueBase::QueueLength(), and ThresholdQueueBase::ThresholdQueueBase().
|
protectedinherited |
Definition at line 124 of file ThresholdQueueBase.h.
Referenced by ThresholdQueueBase::Count(), ThresholdQueueBase::Enqueue(), ThresholdQueueBase::GetRawEnqueuePtr(), Grow(), and ThresholdQueueBase::Reset().
1.8.5