14 #ifdef THREADED_PIPELINE
18 INLINE PipelineCyclerLinks::
19 PipelineCyclerLinks() {
27 #ifdef THREADED_PIPELINE
31 INLINE PipelineCyclerLinks::
32 ~PipelineCyclerLinks() {
33 nassertv(_next ==
nullptr && _prev ==
nullptr);
37 #ifdef THREADED_PIPELINE
41 INLINE
void PipelineCyclerLinks::
43 nassertv(_next ==
nullptr && _prev ==
nullptr);
49 #ifdef THREADED_PIPELINE
54 INLINE
void PipelineCyclerLinks::
56 nassertv(_next ==
this && _prev ==
this);
64 #ifdef THREADED_PIPELINE
68 INLINE
void PipelineCyclerLinks::
70 nassertv(_prev->_next ==
this && _next->_prev ==
this);
80 #ifdef THREADED_PIPELINE
85 INLINE
void PipelineCyclerLinks::
87 nassertv(node->_prev->_next == node && node->_next->_prev == node);
88 nassertv(_prev ==
nullptr &&
97 #ifdef THREADED_PIPELINE
102 INLINE
void PipelineCyclerLinks::
104 nassertv(_next ==
this && _prev ==
this);
105 if (other._next == &other && other._prev == &other) {
110 other._next->_prev =
this;
111 other._prev->_next =
this;
115 other._next = &other;
116 other._prev = &other;
This just stores the pointers to implement a doubly-linked list of PipelineCyclers for a particular P...