| 311 | |
| 312 | |
| 313 | PathNodePool::Block* PathNodePool::NewBlock() |
| 314 | { |
| 315 | Block* block = (Block*) calloc( 1, sizeof(Block) + sizeof(PathNode)*(allocate-1) ); |
| 316 | block->nextBlock = 0; |
| 317 | |
| 318 | nAvailable += allocate; |
| 319 | for( unsigned i=0; i<allocate; ++i ) { |
| 320 | freeMemSentinel.AddBefore( &block->pathNode[i] ); |
| 321 | } |
| 322 | return block; |
| 323 | } |
| 324 | |
| 325 | |
| 326 | unsigned PathNodePool::Hash( cPosition voidval ) |