void FeatureModelGraph::runPostMergeOperations(osg::Node* node) { _postMergeOperations->mutex().readLock(); for( NodeOperationVector::iterator i = _postMergeOperations->begin(); i != _postMergeOperations->end(); ++i ) { i->get()->operator()( node ); } _postMergeOperations->mutex().readUnlock(); }
void FeatureModelGraph::runPostMergeOperations(osg::Node* node) { if ( _postMergeOperations.valid() ) { for( NodeOperationVector::iterator i = _postMergeOperations->begin(); i != _postMergeOperations->end(); ++i ) { i->get()->operator()( node ); } } }
void ModelSource::firePostProcessors( osg::Node* node ) { if ( node ) { // pres: _preMergeOps->mutex().readLock(); for( NodeOperationVector::iterator i = _preMergeOps->begin(); i != _preMergeOps->end(); ++i ) { i->get()->operator()( node ); } _preMergeOps->mutex().readUnlock(); // posts: _postMergeOps->mutex().readLock(); for( NodeOperationVector::iterator i = _postMergeOps->begin(); i != _postMergeOps->end(); ++i ) { i->get()->operator()( node ); } _postMergeOps->mutex().readUnlock(); } }