void ScenePath::setScene( ScenePlugPtr scene ) { if( m_scene == scene ) { return; } if( havePathChangedSignal() ) { m_node->plugDirtiedSignal().disconnect( boost::bind( &ScenePath::plugDirtied, this, ::_1 ) ); } m_scene = scene; m_node = scene->node(); if( m_node && havePathChangedSignal() ) { m_node->plugDirtiedSignal().connect( boost::bind( &ScenePath::plugDirtied, this, ::_1 ) ); } emitPathChanged(); }
ScenePath::ScenePath( ScenePlugPtr scene, Gaffer::ContextPtr context, const std::string &path, Gaffer::PathFilterPtr filter ) : Path( path, filter ), m_node( scene->node() ), m_scene( scene ), m_context( context ) { }
ScenePath::ScenePath( ScenePlugPtr scene, Gaffer::ContextPtr context, const Names &names, const IECore::InternedString &root, Gaffer::PathFilterPtr filter ) : Path( names, root, filter ), m_node( scene->node() ), m_scene( scene ), m_context( context ) { }
ScenePath::ScenePath( ScenePlugPtr scene, Gaffer::ContextPtr context, Gaffer::PathFilterPtr filter ) : Path( filter ), m_node( scene->node() ), m_scene( scene ), m_context( context ) { }