1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
//! The `inputs:` / `outputs:` namespacing shared by the connectable views.
//!
//! A UsdShadeInput is an `inputs:<name>` attribute; a UsdShadeOutput is an
//! `outputs:<name>` attribute. These helpers centralise the namespacing so the
//! [`Connectable`](super::Connectable) trait and the connection-following
//! readers build property names / paths the same way. The attribute authoring
//! itself lives on [`Connectable`].
use Result;
use cratePath;
use ;
/// The full property name for an input: `inputs:<base>`.
/// The full property name for an output: `outputs:<base>`.
/// The base name of a connectable property — strips the leading `inputs:` or
/// `outputs:` namespace (C++ `UsdShadeInput` / `UsdShadeOutput::GetBaseName`).
/// A name in neither namespace is returned unchanged.
/// Full property path of an input on `prim`, e.g.
/// `/Mat/Surface.inputs:diffuseColor`. Useful as a connection source / target
/// without materialising the attribute first.