from weSkel.src.core.props.svd import SVDViewRun in Maya with weSkel available. om.* types refer to maya.api.OpenMaya.
Live view of a plug’s sources, values and destinations.
SVDView exposes Source / Value / Destinations without capturing a copy. Each property reads the plug at access time.
objectSVDViewfrom weSkel.src.core.props.svd import SVDViewRun in Maya with weSkel available. om.* types refer to maya.api.OpenMaya.
| Item | Value |
|---|---|
| Class | SVDView |
| Module | weSkel.src.core.props.svd |
| Direct parent | object |
| Kind | dataclass; frozen=True |
| Spec properties | None. |
This reference documents members defined by this class. Standard Python mechanisms and native inherited members are outside its member counts.
SVDView(plug: Plug) → SVDView
| Parameter | Type | Default |
|---|---|---|
plug |
Plug |
required |
Supply a valid Plug. node.svd("scaleX") is another entry point. The constructor copies no value and does not enforce annotations at runtime.
Declared fields; a frozen dataclass prevents reassignment, not all nested mutations.
| Field | Return type | Access | Purpose |
|---|---|---|---|
plug |
Plug |
R | Plug read by the view. |
| Return type | Contract |
|---|---|
Plug |
Plug read by the view. |
Own members. R = read only; R/W = read and write.
| Property | Return type | Access | Purpose |
|---|---|---|---|
attr_name |
str |
R | Current long attribute name without the node prefix. |
source |
Optional[Plug] |
R | Current logical source, or None. |
value |
Any |
R | Value read again from Maya on every access. |
destinations |
PlugArray |
R | Logical destinations read again on every access. |
| Return type | Contract |
|---|---|
str |
Current long attribute name without the node prefix. |
| Return type | Contract |
|---|---|
Optional[Plug] |
Current logical source, or None. |
| Return type | Contract |
|---|---|
Any |
Value read again from Maya on every access. |
| Return type | Contract |
|---|---|
PlugArray |
Logical destinations read again on every access. |
The dataclass is frozen: its fields cannot normally be reassigned. This does not make the plug or scene immutable. Editing the plug elsewhere changes the next read.
value returns the evaluated value even when a source exists. During SVD replay a source takes priority over a local value. Construction does not validate the argument: a missing plug or deleted identity may make reads fail.
from uuid import uuid4from weSkel.src.core.node.dag.transform.lib import Transformfrom weSkel.src.core.props.svd import SVDView
node = Transform("sdk_live_" + uuid4().hex[:8])try: node.create() plug = node.plugs["scaleX"] view = SVDView(plug) plug.value = 2.0 assert view.value == 2.0 plug.value = 4.0 assert view.value == 4.0 assert view.source is None and len(view.destinations) == 0 assert view.attr_name == "scale.scaleX" print("SVDView: PASS")finally: node.delete(snapshot=False)Expected result: SVDView: PASS. Temporary nodes are removed in finally.
See also: SVDPlug · SVDSnapshot · FSEntry.