mgear.core.callbackManager module¶
API for creating, deleting, debuging callbacks
# examples ——————————————————————– # module cb.selectionChangedCB(“testingSessssslection”, cb.testFunc) cb.RECORDED_CALLBACKS cb.removeAllSessionCB()
# manager A e = cb.CallbackManager() e.namespace e.debug = False e.selectionChangedCB(“synopticUI1”, cb.testFunc) e.newSceneCB(“synopticNewScene”, cb.testFunc) e.removeManagedCB(“synopticUI1”) e.removeManagedCB(“synopticNewScene”)
e.attributeChangedCB(“attrChanged”, cb.testFunc, “pSphere1”, [“tx”]) e.removeManagedCB(“attrChanged”)
e.MANAGER_CALLBACKS e.removeAllManagedCB()
# manager b r = cb.CallbackManager() r.selectionChangedCB(“synopticUI1”, cb.testFunc) r.MANAGER_CALLBACKS r.removeAllManagedCB()
__author__ = “Rafael Villar” __email__ = “rav@ravrigs.com”
-
class
mgear.core.callbackManager.
AttributeChangedManager
(m_node, attributes, func)¶ Bases:
object
mini class that will be called upon when attrChanged callback is run this will check the plugs passed in to see if it is an attr of desired name
-
attributes
¶ [tx, ty] of SHORT NAMED attrs to monitor
Type: list
-
func
¶ to call when criteria met
Type: function
-
m_node
¶ mobject
Type: om.MOBJECT
-
attributeChanged
(id, plug1, plug2, payload)¶ actual function that will be called when attrChanged callback is created
Parameters: - id (int) – 2056 is the desired, attr changed id
- plug1 (om.MPlug) – MPlug attr to query
Returns: n/a
Return type: n/a
-
-
class
mgear.core.callbackManager.
CallbackManager
¶ Bases:
object
Convenience to manage callbacks
-
debug
¶ should callbacks created by manager produce print outs
Type: bool
-
MANAGER_CALLBACKS
¶ record of all created callbacks
Type: dict
-
namespace
¶ namespace to put callbacks under
Type: str
-
addNamespace
(callback_name)¶ used in the decorator, add namespace to any name provided
Parameters: callback_name (str) – name of callback Returns: provided name with namespace Return type: str
-
attributeChangedCB
(callback_name, func, node, attributes)¶
-
checkDebug
(debugInfo, *args)¶ safely check if manager is in debug mode
Parameters: - debugInfo (list) – callback name, function being called with args
- *args – args to pass to the function associated with callback
-
newSceneCB
(callback_name, func)¶
-
registerManagerCB
()¶ decorator, adds debug and namespace to every callback created
Parameters: func (function) – function to wrap Returns: wrapped function Return type: function
-
removeAllManagedCB
()¶ remove all the callbacks created my this manager
-
removeManagedCB
(callback_name)¶ remove specific callback under this manager
Parameters: callback_name (str) – name
-
selectionChangedCB
(callback_name, func)¶
-
setNamespace
(namespace)¶ set the namespace to put callbacks under
Parameters: namespace (str) – desired namespace
-
timeChangedCB
(callback_name, func)¶
-
userTimeChangedCB
(callback_name, func)¶
-
wrapWithDebug
(debugInfo, func)¶ so every function that is associated with a callback is swapped out for this one, so it will check for debugging
Parameters: - debugInfo (list) – callback name, mayacallback id, functions to call
- func (function) – to wrap with this debug checker
Returns: partial function that will check for debug
Return type: function
-
-
class
mgear.core.callbackManager.
UserTimeChangedManager
(func)¶ Bases:
object
mini class that will be called upon when timeChanged callback is run this will check to see if playback is active, if so BREAK
-
attributes
¶ [tx, ty] of SHORT NAMED attrs to monitor
Type: list
-
func
¶ to call when criteria met
Type: function
-
m_node
¶ mobject
Type: om.MOBJECT
-
userTimeChanged
(*args)¶ Check if playback is active, if so return without calling func
-
-
mgear.core.callbackManager.
attributeChangedCB
(callback_name, func, node, attributes)¶ call the provided function any of the provided attributes are changed
Parameters: - callback_name (str) – name of the callback
- func (function) – to be called upon
- node (str) – name of node to montior for attr changes
- attributes (list) – of SHORTNAMED attributes to monitor
Returns: maya id to created callback
Return type: long
-
mgear.core.callbackManager.
checkAndRecordCB
(callback_name, callback_id, callback_info={})¶ will remove any callbacks of the same name prior to creating a new one
Parameters: - callback_name (str) – desired name of the callback, readable
- callback_id (long) – api method of identifying callbacks
-
mgear.core.callbackManager.
getMObject
(node)¶ get the mobject of any name provided, so it can have cb’s assined to it
Parameters: node (str) – of node Returns: MOBJECT Return type: om.MObject
-
mgear.core.callbackManager.
newSceneCB
(callback_name, func)¶ When a new scene is opened, call the provided function
Parameters: - callback_name (str) – name you want to assign cb
- func (function) – will be called upon
Returns: maya id to created callback
Return type: long
-
mgear.core.callbackManager.
registerSessionCB
(func)¶ decorator to ensure that every callback created is recorded
Parameters: func (function) – function that will create the callback Returns: function Return type: function
-
mgear.core.callbackManager.
removeAllCBFromNode
(node)¶ remove all callbacks from the provided node
Parameters: node (str) – name of node to remove callbacks from
-
mgear.core.callbackManager.
removeAllSessionCB
()¶ Remove all the callbacks created in this session, provided they are in the RECORDED_CALLBACKS dict
-
mgear.core.callbackManager.
removeCB
(callback_identifier, callback_info={})¶ Remove callback from scene and RECORDED_CALLBACKS(or provided dict)
Parameters: - callback_identifier (str) – name of callback
- callback_info (dict, optional) – dict to remove callback from
-
mgear.core.callbackManager.
removeCBviaMayaID
(mayaID, callback_info={})¶ This if have the maya pointer only, this will remove it from the recorded_callbacks as well
Parameters: - mayaID (long) – maya point to a callback
- callback_info (dict, optional) – remove it from desired cb recorder
-
mgear.core.callbackManager.
removeNamespaceCB
(namespace)¶ Remove all callbacks under the provided namespace
Parameters: namespace (str) – uuid or other type of namespace
-
mgear.core.callbackManager.
sampleCallback
(callback_name, func)¶ argument order is important. Callback_name and func must always be first must always return the mayaID to the callback :param callback_name: name you want to assign cb :type callback_name: str :param func: will be called upon :type func: function
Returns: maya id to created callback Return type: long
-
mgear.core.callbackManager.
selectionChangedCB
(callback_name, func)¶ When the selection is changed call the provided function
Parameters: - callback_name (str) – name you want to assign cb
- func (function) – will be called upon
Returns: maya id to created callback
Return type: long
-
mgear.core.callbackManager.
testFunc
(*args)¶ test function used for debugging/dev
Parameters: *args – things that will printed
-
mgear.core.callbackManager.
timeChangedCB
(callback_name, func)¶ ANYTIME the time is changed, call the provided function
Parameters: - callback_name (str) – name you want to assign cb
- func (function) – will be called upon
Returns: maya id to created callback
Return type: long
-
mgear.core.callbackManager.
userTimeChangedCB
(callback_name, func)¶ Callback triggers during user timeChange, skips PLAYBACK
Parameters: - callback_name (str) – name you want to assign cb
- func (function) – will be called upon
Returns: maya id to created callback
Return type: long