40 #include "glimports.h"
42 #include "nurbstess.h"
43 #include "displaylist.h"
47 dlnodePool( sizeof(
Dlnode ), 1,
"dlnodepool" )
53 DisplayList::~DisplayList(
void )
55 for(
Dlnode *nextNode; nodes; nodes = nextNode ) {
56 nextNode = nodes->next;
57 if( nodes->cleanup != 0 ) (nt->*nodes->cleanup)( nodes->arg );
63 DisplayList::play(
void )
65 for(
Dlnode *node = nodes; node; node = node->next )
66 if( node->work != 0 ) (nt->*node->work)( node->arg );
70 DisplayList::endList(
void )
76 DisplayList::append( PFVS work,
void *arg, PFVS cleanup )
78 Dlnode *node =
new(dlnodePool)
Dlnode( work, arg, cleanup );
80 lastNode = &(node->next);