S3FC project page | S3FC home page |
s3_inplace_fifo_mux
instance.
More...
#include <s3_inplace_fifo_mux.h>
Inheritance diagram for s3_inplace_fifo_mux::stub_queue:
Public Methods | |
stub_queue (s3_inplace_fifo_mux< T > *n_mux) | |
Construct a stub queue with specified controlling mux. More... | |
virtual bool | empty () const |
Interface from s3_inplace_fifo_base<T> . More... | |
virtual bool | full () const |
Interface from s3_inplace_fifo_base<T> . More... | |
virtual unsigned int | size () const |
Interface from s3_inplace_fifo_base<T> . More... | |
virtual void | push (const T &t) |
Interface from s3_inplace_fifo_base<T> . More... | |
virtual T | pop () |
Interface from s3_inplace_fifo_base<T> . More... | |
virtual T * | open_input () |
Interface from s3_inplace_fifo_base<T> . More... | |
virtual T * | nbl_open_input () |
Interface from s3_inplace_fifo_base<T> . More... | |
virtual void | close_input (const T *t) |
Interface from s3_inplace_fifo_base<T> . More... | |
virtual T * | open_output () |
Interface from s3_inplace_fifo_base<T> . More... | |
virtual T * | nbl_open_output () |
Interface from s3_inplace_fifo_base<T> . More... | |
virtual void | close_output (const T *t) |
Interface from s3_inplace_fifo_base<T> . More... | |
Protected Methods | |
void | lock_select () |
Check to see whether this instance is the current one. More... | |
void | unlock_next () |
Auto-select next queue in list (if auto_select enabled) and relinquish mux->state_lock . More... | |
Protected Attributes | |
s3_condition | waiter |
s3_inplace_fifo_mux< T > * | mux |
s3_inplace_fifo_mux
instance.
A number of stub_queue
instances, each associated with the same mux inspect and manipulate shared mux state variables.
stub_queue
also supports the s3_inplace_fifo_base<T>
interface, and either directly forwards certain methods to mux->queue
(if it is currently selected) or waits on a condition before forwarding (if it is not selected). After a forwarded call returns, the next virtual queue in mux->vqueue_list
is selected if auto_select
is true
.
Exceptions to this are the close_input
and close_output
methods which always forwards the call, regardless of selection status, and does not automatically advance the selection.
Definition at line 86 of file s3_inplace_fifo_mux.h.
|
Construct a stub queue with specified controlling mux.
Definition at line 40 of file s3_inplace_fifo_mux.tcc. |
|
Interface from Forward. Implements s3_inplace_fifo_base. Definition at line 128 of file s3_inplace_fifo_mux.tcc. References mux. |
|
Interface from Forward. Implements s3_inplace_fifo_base. Definition at line 160 of file s3_inplace_fifo_mux.tcc. References mux. |
|
Interface from
Forward or wait, depending on Implements s3_fifo_base. Definition at line 48 of file s3_inplace_fifo_mux.tcc. References CONST_OVERRIDE_THIS, and s3_inplace_fifo_mux::stub_queue. |
|
Interface from
Forward or wait, depending on Implements s3_fifo_base. Definition at line 59 of file s3_inplace_fifo_mux.tcc. References CONST_OVERRIDE_THIS, lock_select, mux, stub_queue, and unlock_next. |
|
Check to see whether this instance is the current one.
If it is not, wait on Definition at line 168 of file s3_inplace_fifo_mux.tcc. References mux, s3_condition::wait, and waiter. Referenced by full, nbl_open_input, nbl_open_output, open_input, open_output, pop, push, and size. |
|
Interface from
Forward or wait, depending on Implements s3_inplace_fifo_base. Definition at line 116 of file s3_inplace_fifo_mux.tcc. References lock_select, mux, and unlock_next. |
|
Interface from
Forward or wait, depending on Implements s3_inplace_fifo_base. Definition at line 148 of file s3_inplace_fifo_mux.tcc. References lock_select, mux, and unlock_next. |
|
Interface from
Forward or wait, depending on Implements s3_inplace_fifo_base. Definition at line 104 of file s3_inplace_fifo_mux.tcc. References lock_select, mux, and unlock_next. |
|
Interface from
Forward or wait, depending on Implements s3_inplace_fifo_base. Definition at line 136 of file s3_inplace_fifo_mux.tcc. References lock_select, mux, and unlock_next. |
|
Interface from
Forward or wait, depending on Reimplemented from s3_inplace_fifo_base. Definition at line 92 of file s3_inplace_fifo_mux.tcc. References lock_select, mux, and unlock_next. |
|
Interface from
Forward or wait, depending on Reimplemented from s3_inplace_fifo_base. Definition at line 82 of file s3_inplace_fifo_mux.tcc. References lock_select, mux, and unlock_next. |
|
Interface from
Forward or wait, depending on Implements s3_fifo_base. Definition at line 71 of file s3_inplace_fifo_mux.tcc. References CONST_OVERRIDE_THIS, lock_select, mux, stub_queue, and unlock_next. |
|
Auto-select next queue in list (if
Should always appear paired with Definition at line 181 of file s3_inplace_fifo_mux.tcc. References mux. Referenced by full, nbl_open_input, nbl_open_output, open_input, open_output, pop, push, and size. |
|
Definition at line 92 of file s3_inplace_fifo_mux.h. Referenced by close_input, close_output, full, lock_select, nbl_open_input, nbl_open_output, open_input, open_output, pop, push, size, and unlock_next. |
|
Definition at line 90 of file s3_inplace_fifo_mux.h. Referenced by lock_select. |
Send comments to: s3fc@stonethree.com |
|