Panda3D
|
This template class calls PipelineCycler::write() in the constructor and PipelineCycler::release_write() in the destructor. More...
#include "cycleDataWriter.h"
Public Member Functions | |
CycleDataWriter (PipelineCycler< CycleDataType > &cycler, Thread *current_thread=Thread::get_current_thread()) | |
CycleDataWriter (PipelineCycler< CycleDataType > &cycler, bool force_to_0, Thread *current_thread=Thread::get_current_thread()) | |
CycleDataWriter (const CycleDataWriter< CycleDataType > ©) | |
CycleDataWriter (PipelineCycler< CycleDataType > &cycler, CycleDataType *locked_cdata, Thread *current_thread=Thread::get_current_thread()) | |
CycleDataWriter (PipelineCycler< CycleDataType > &cycler, CycleDataLockedReader< CycleDataType > &take_from) | |
This flavor of the constructor elevates the pointer from the CycleDataLockedReader from a read to a write pointer (and invalidates the reader). | |
CycleDataWriter (PipelineCycler< CycleDataType > &cycler, CycleDataLockedReader< CycleDataType > &take_from, bool force_to_0) | |
This flavor of the constructor elevates the pointer from the CycleDataLockedReader from a read to a write pointer (and invalidates the reader). | |
Thread * | get_current_thread () const |
Returns the Thread pointer of the currently-executing thread, as passed to the constructor of this object. | |
operator CycleDataType * () | |
This allows the CycleDataWriter to be passed to any function that expects a CycleDataType pointer. | |
CycleDataType * | operator-> () |
This provides an indirect member access to the actual CycleData data. | |
const CycleDataType * | operator-> () const |
This provides an indirect member access to the actual CycleData data. | |
void | operator= (const CycleDataWriter< CycleDataType > ©) |
This template class calls PipelineCycler::write() in the constructor and PipelineCycler::release_write() in the destructor.
In the interim, it provides a transparent read-write access to the CycleData.
It exists as a syntactic convenience to access the data in the CycleData. It also allows the whole system to compile down to nothing if DO_PIPELINING is not defined.
Definition at line 38 of file cycleDataWriter.h.
CycleDataWriter< CycleDataType >::CycleDataWriter | ( | PipelineCycler< CycleDataType > & | cycler, |
CycleDataLockedReader< CycleDataType > & | take_from | ||
) | [inline] |
This flavor of the constructor elevates the pointer from the CycleDataLockedReader from a read to a write pointer (and invalidates the reader).
Definition at line 286 of file cycleDataWriter.I.
CycleDataWriter< CycleDataType >::CycleDataWriter | ( | PipelineCycler< CycleDataType > & | cycler, |
CycleDataLockedReader< CycleDataType > & | take_from, | ||
bool | force_to_0 | ||
) | [inline] |
This flavor of the constructor elevates the pointer from the CycleDataLockedReader from a read to a write pointer (and invalidates the reader).
It also propagates the pointer back upstream; see PipelineCycler::write_upstream().
Definition at line 303 of file cycleDataWriter.I.
Thread * CycleDataWriter< CycleDataType >::get_current_thread | ( | ) | const [inline] |
Returns the Thread pointer of the currently-executing thread, as passed to the constructor of this object.
Definition at line 364 of file cycleDataWriter.I.
References Thread::get_current_thread().
CycleDataWriter< CycleDataType >::operator CycleDataType * | ( | ) | [inline] |
This allows the CycleDataWriter to be passed to any function that expects a CycleDataType pointer.
Definition at line 352 of file cycleDataWriter.I.
CycleDataType * CycleDataWriter< CycleDataType >::operator-> | ( | ) | [inline] |
This provides an indirect member access to the actual CycleData data.
Definition at line 328 of file cycleDataWriter.I.
const CycleDataType * CycleDataWriter< CycleDataType >::operator-> | ( | ) | const [inline] |
This provides an indirect member access to the actual CycleData data.
Definition at line 340 of file cycleDataWriter.I.