示例#1
0
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();
}
示例#2
0
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 )
{
}
示例#3
0
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 )
{
}
示例#4
0
ScenePath::ScenePath( ScenePlugPtr scene, Gaffer::ContextPtr context, Gaffer::PathFilterPtr filter )
	:	Path( filter ), m_node( scene->node() ), m_scene( scene ), m_context( context )
{
}