14 #ifdef THREADED_PIPELINE
18 INLINE PipelineCyclerLinks::
19 PipelineCyclerLinks() {
25 #endif // THREADED_PIPELINE
27 #ifdef THREADED_PIPELINE
31 INLINE PipelineCyclerLinks::
32 ~PipelineCyclerLinks() {
33 nassertv(_next ==
nullptr && _prev ==
nullptr);
35 #endif // THREADED_PIPELINE
37 #ifdef THREADED_PIPELINE
41 INLINE
void PipelineCyclerLinks::
43 nassertv(_next ==
nullptr && _prev ==
nullptr);
47 #endif // THREADED_PIPELINE
49 #ifdef THREADED_PIPELINE
54 INLINE
void PipelineCyclerLinks::
56 nassertv(_next ==
this && _prev ==
this);
62 #endif // THREADED_PIPELINE
64 #ifdef THREADED_PIPELINE
68 INLINE
void PipelineCyclerLinks::
70 nassertv(_prev->_next ==
this && _next->_prev ==
this);
78 #endif // THREADED_PIPELINE
80 #ifdef THREADED_PIPELINE
85 INLINE
void PipelineCyclerLinks::
87 nassertv(node->_prev->_next == node && node->_next->_prev == node);
88 nassertv(_prev ==
nullptr &&
95 #endif // THREADED_PIPELINE
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;
118 #endif // THREADED_PIPELINE