| 192 | } |
| 193 | |
| 194 | RayBuffer *Pop() { |
| 195 | boost::unique_lock<boost::mutex> lock(queueMutex); |
| 196 | |
| 197 | while (queue.size() < 1) { |
| 198 | // Wait for a new buffer to arrive |
| 199 | condition.wait(lock); |
| 200 | } |
| 201 | |
| 202 | RayBuffer *rayBuffer = queue.front(); |
| 203 | queue.pop_front(); |
| 204 | return rayBuffer; |
| 205 | } |
| 206 | |
| 207 | //-------------------------------------------------------------------------- |
| 208 |