Definition at line 199 of file tess_face_priority_list.h.
Public Member Functions | |
void | clearRollTable () |
CRollingTable () | |
CTessFacePListNode & | getRollTableEntry (uint entry) |
void | init (uint numEntries) |
void | insertInRollTable (uint entry, CTessFace *value) |
void | shiftEntries (uint entryShift, CTessFacePListNode &pulledElements) |
append elements shifted and shift | |
void | shiftRollTable (uint shiftEntry) |
~CRollingTable () | |
Data Fields | |
NLMISC::CVector | QuadrantDirection |
float | Remainder |
Private Member Functions | |
void | clearRollTableEntry (uint entry) |
Private Attributes | |
std::vector< CTessFacePListNode > | _Entries |
uint | _EntryStart |
uint | _MaskEntries |
uint | _NEntries |
|
Definition at line 395 of file tess_face_priority_list.cpp. References _EntryStart, _MaskEntries, _NEntries, and Remainder.
00396 { 00397 _EntryStart= 0; 00398 _NEntries= 0; 00399 _MaskEntries= 0; 00400 Remainder= 0; 00401 } |
|
Definition at line 404 of file tess_face_priority_list.cpp. References clearRollTable().
00405 { 00406 clearRollTable(); 00407 } |
|
Definition at line 465 of file tess_face_priority_list.cpp. References _EntryStart, _NEntries, clearRollTableEntry(), Remainder, and uint. Referenced by ~CRollingTable().
00466 { 00467 for(uint i=0; i<_NEntries; i++) 00468 { 00469 clearRollTableEntry(i); 00470 } 00471 _EntryStart= 0; 00472 // For convenience only (not really usefull). 00473 Remainder= 0; 00474 } |
|
Definition at line 438 of file tess_face_priority_list.cpp. References _Entries, _EntryStart, _MaskEntries, NL3D::CTessFacePListNode::nextInPList(), uint, and NL3D::CTessFacePListNode::unlinkInPList(). Referenced by clearRollTable(), and shiftRollTable().
00439 { 00440 CTessFacePListNode &root= _Entries[ (entry + _EntryStart) & _MaskEntries ]; 00441 00442 // clear all the list. 00443 while( root.nextInPList() != &root ) 00444 { 00445 // unlink from list 00446 CTessFacePListNode *node= root.nextInPList(); 00447 node->unlinkInPList(); 00448 } 00449 } |
|
Definition at line 431 of file tess_face_priority_list.cpp. References _Entries, _EntryStart, _MaskEntries, and uint. Referenced by NL3D::CTessFacePriorityList::shift(), and shiftEntries().
00432 { 00433 CTessFacePListNode &root= _Entries[ (entry + _EntryStart) & _MaskEntries ]; 00434 return root; 00435 } |
|
Definition at line 411 of file tess_face_priority_list.cpp. References _Entries, _EntryStart, _MaskEntries, _NEntries, Remainder, and uint.
00412 { 00413 _EntryStart= 0; 00414 _NEntries= numEntries; 00415 _MaskEntries= _NEntries-1; 00416 Remainder= 0; 00417 _Entries.resize(numEntries); 00418 } |
|
Definition at line 422 of file tess_face_priority_list.cpp. References _Entries, _EntryStart, _MaskEntries, uint, and value. Referenced by NL3D::CTessFacePriorityList::insert().
00423 { 00424 CTessFacePListNode &root= _Entries[ (entry + _EntryStart) & _MaskEntries ]; 00425 00426 // Insert into list. 00427 value->linkInPList(root); 00428 } |
|
append elements shifted and shift
Definition at line 477 of file tess_face_priority_list.cpp. References NL3D::CTessFacePListNode::appendPList(), getRollTableEntry(), shiftRollTable(), and uint. Referenced by NL3D::CTessFacePriorityList::shift().
00478 { 00479 if(entryShift>0) 00480 { 00481 // before shifting the roll Table, fill pulledElements. 00482 for(uint i=0; i<entryShift; i++) 00483 { 00484 // For all elements of the ith entry, pull them and isnert in result list. 00485 pulledElements.appendPList(getRollTableEntry(i)); 00486 } 00487 00488 // shift the roll Table. lists are already empty. 00489 shiftRollTable(entryShift); 00490 } 00491 } |
|
Definition at line 452 of file tess_face_priority_list.cpp. References _EntryStart, _MaskEntries, clearRollTableEntry(), and uint. Referenced by shiftEntries().
00453 { 00454 // delete all elements shifted. 00455 for(uint i=0; i<shiftEntry; i++) 00456 { 00457 clearRollTableEntry(i); 00458 } 00459 // shift to right the ptr of entries. 00460 _EntryStart+= shiftEntry; 00461 _EntryStart= _EntryStart & _MaskEntries; 00462 } |
|
Definition at line 232 of file tess_face_priority_list.h. Referenced by clearRollTableEntry(), getRollTableEntry(), init(), and insertInRollTable(). |
|
Definition at line 233 of file tess_face_priority_list.h. Referenced by clearRollTable(), clearRollTableEntry(), CRollingTable(), getRollTableEntry(), init(), insertInRollTable(), and shiftRollTable(). |
|
Definition at line 235 of file tess_face_priority_list.h. Referenced by clearRollTableEntry(), CRollingTable(), getRollTableEntry(), init(), insertInRollTable(), and shiftRollTable(). |
|
Definition at line 234 of file tess_face_priority_list.h. Referenced by clearRollTable(), CRollingTable(), and init(). |
|
Definition at line 203 of file tess_face_priority_list.h. Referenced by NL3D::CTessFacePriorityList::shift(). |
|
Definition at line 206 of file tess_face_priority_list.h. Referenced by clearRollTable(), CRollingTable(), init(), NL3D::CTessFacePriorityList::insert(), and NL3D::CTessFacePriorityList::shift(). |