| 8024 | } |
| 8025 | |
| 8026 | bool |
| 8027 | Node::tryLock(const boost::shared_ptr<Image> & image) |
| 8028 | { |
| 8029 | QMutexLocker l(&_imp->imagesBeingRenderedMutex); |
| 8030 | std::list<boost::shared_ptr<Image> >::iterator it = |
| 8031 | std::find(_imp->imagesBeingRendered.begin(), _imp->imagesBeingRendered.end(), image); |
| 8032 | |
| 8033 | if ( it != _imp->imagesBeingRendered.end() ) { |
| 8034 | return false; |
| 8035 | } |
| 8036 | ///Okay the image is not used by any other thread, claim that we want to use it |
| 8037 | assert( it == _imp->imagesBeingRendered.end() ); |
| 8038 | _imp->imagesBeingRendered.push_back(image); |
| 8039 | |
| 8040 | return true; |
| 8041 | } |
| 8042 | |
| 8043 | void |
| 8044 | Node::unlock(const boost::shared_ptr<Image> & image) |
no test coverage detected