- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
I'm currently experimenting with the maya.api.OpenMaya.MSceneMessage to get a feel for in what ways this is useable in a larger setup like my current one
addCallback and addCheckCallback both eork ass expected with an integer and function as arguments
addCheckReferenceCallback, however, continiously gives me: RuntimeError: (kInvalidParameter): Invalid parameter
That error on it's own doesn't tell me much so instead I tried to inspect the method which just tells me it's not a python method (because of course =( It can't be that easy!)
This is my test code with which I was trying to feel my way through the MSceneMessage class. How on earth is this method wired or is it just impossible to make this work?
import maya.api.OpenMaya as om
class CallbackMsgHandler(object):
def __init__(self):
self.bOpenCall = None
self.bOpenCheckCall = None
self.bRefCheckCall = None
def createSceneCallbacks(self):
self.bOpenCall = om.MSceneMessage.addCallback(om.MSceneMessage.kBeforeOpen, self.bOpenCallback)
self.bOpenCheckCall = om.MSceneMessage.addCheckCallback(om.MSceneMessage.kBeforeOpenCheck, self.bOpenCheckCallback)
self.bRefCheckCall = om.MSceneMessage.addCheckReferenceCallback(om.MSceneMessage.kBeforeLoadReference, self.bLoadRefCallback)#om.MSceneMessage.kBeforeLoadReference, self.bLoadRefCallback)
def bOpenCallback(self, retCode):
print "Open Callback"
print self
print retCode
return True
def bOpenCheckCallback(self, retCode):
print "Open Check Callback"
print self
print retCode
return True
def bLoadRefCallback(self, retCode, referenceNode, FileObject):
print "Open Ref Check Callback"
print retCode
print referenceNode
print FileObject
return True
handler = CallbackMsgHandler()
handler.createSceneCallbacks()Solved! Go to Solution.