7 #ifndef PXR_USD_USD_SHADE_CONNECTABLE_BEHAVIOR_H
8 #define PXR_USD_USD_SHADE_CONNECTABLE_BEHAVIOR_H
16 #include "pxr/base/vt/array.h"
47 : _isContainer(false), _requiresEncapsulation(true) {}
51 const bool requiresEncapsulation)
52 : _isContainer(isContainer),
53 _requiresEncapsulation(requiresEncapsulation) {}
75 std::string *reason)
const;
93 std::string *reason)
const;
140 bool _requiresEncapsulation;
194 TfType::Find<PrimType>(),
195 std::shared_ptr<UsdShadeConnectableAPIBehavior>(
new BehaviorType));
203 const TfType& connectablePrimType,
204 const std::shared_ptr<UsdShadeConnectableAPIBehavior>& behavior);
208 #endif // PXR_USD_USD_SHADE_CONNECTABLE_BEHAVIOR_H
void UsdShadeRegisterConnectableAPIBehavior()
*get result *(waiting if necessary)*A common idiom is to fire a bunch of sub tasks at the and then *wait for them to all complete We provide a helper class
USDSHADE_API bool _CanConnectInputToSource(const UsdShadeInput &, const UsdAttribute &, std::string *reason, ConnectableNodeTypes nodeType=ConnectableNodeTypes::BasicNodes) const
virtual USDSHADE_API bool CanConnectInputToSource(const UsdShadeInput &, const UsdAttribute &, std::string *reason) const
virtual USDSHADE_API bool RequiresEncapsulation() const final
virtual USDSHADE_API bool CanConnectOutputToSource(const UsdShadeOutput &, const UsdAttribute &, std::string *reason) const
virtual USDSHADE_API ~UsdShadeConnectableAPIBehavior()
USDSHADE_API bool _CanConnectOutputToSource(const UsdShadeOutput &, const UsdAttribute &, std::string *reason, ConnectableNodeTypes nodeType=ConnectableNodeTypes::BasicNodes) const
virtual USDSHADE_API bool IsContainer() const final
USDSHADE_API UsdShadeConnectableAPIBehavior()
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
#define PXR_NAMESPACE_CLOSE_SCOPE
USDSHADE_API UsdShadeConnectableAPIBehavior(const bool isContainer, const bool requiresEncapsulation)