Skip to content

Commit b387925

Browse files
committed
IECoreMaya : Added missing LiveScene::dagPath() python binding.
1 parent c6d3384 commit b387925

File tree

2 files changed

+17
-0
lines changed

2 files changed

+17
-0
lines changed

src/IECoreMaya/bindings/LiveSceneBinding.cpp

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -198,6 +198,12 @@ void registerCustomAttributes( object namesFn, object readFn, object mightHaveFn
198198
}
199199
}
200200

201+
inline std::string dagPath( object liveSceneObject )
202+
{
203+
const LiveScene &liveScene = extract<const LiveScene&>( liveSceneObject );
204+
return liveScene.dagPath().fullPathName().asChar();
205+
}
206+
201207
} // namespace
202208

203209
void IECoreMaya::bindLiveScene()
@@ -206,6 +212,7 @@ void IECoreMaya::bindLiveScene()
206212
.def( init<>() )
207213
.def( "registerCustomTags", registerCustomTags, ( arg_( "hasFn" ), arg_( "readFn" ) ) ).staticmethod( "registerCustomTags" )
208214
.def( "registerCustomAttributes", registerCustomAttributes, ( arg_( "namesFn" ), arg_( "readFn" ), arg_( "mightHaveFn" ) = object() ) ).staticmethod( "registerCustomAttributes" )
215+
.def( "dagPath", ::dagPath )
209216
.def( "toMayaAttributeName", LiveScene::toMayaAttributeName ).staticmethod( "toMayaAttributeName" )
210217
.def( "fromMayaAttributeName", LiveScene::fromMayaAttributeName ).staticmethod( "fromMayaAttributeName" )
211218
.def_readonly("visibilityOverrideName", LiveScene::visibilityOverrideName )

test/IECoreMaya/LiveSceneTest.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1449,6 +1449,16 @@ def testToFromMayaAttributeName( self ):
14491449
def testVisibilityOverrideName( self ) :
14501450
self.assertEqual( IECoreMaya.LiveScene.visibilityOverrideName, 'ieVisibility' )
14511451

1452+
def testDagPath( self ):
1453+
group = str( maya.cmds.group( empty=True ) )
1454+
cube = str( maya.cmds.polyCube( constructionHistory=False )[0] )
1455+
maya.cmds.parent( cube, group )
1456+
1457+
liveScene = IECoreMaya.LiveScene()
1458+
cubeScene = liveScene.scene( [group, cube] )
1459+
self.assertEqual( cubeScene.dagPath(), '|{}|{}'.format( group, cube ) )
1460+
1461+
14521462
if __name__ == "__main__":
14531463
IECoreMaya.TestProgram( plugins = [ "ieCore" ] )
14541464

0 commit comments

Comments
 (0)