| 103 | */ |
| 104 | template<class Tracer> |
| 105 | forceinline void |
| 106 | BAB<Tracer>::Worker::better(Space* b) { |
| 107 | m.acquire(); |
| 108 | delete best; |
| 109 | best = b->clone(); |
| 110 | mark = path.entries(); |
| 111 | if (cur != nullptr) |
| 112 | cur->constrain(*best); |
| 113 | m.release(); |
| 114 | } |
| 115 | template<class Tracer> |
| 116 | forceinline void |
| 117 | BAB<Tracer>::solution(Space* s) { |