8#ifndef PXR_USD_SDR_DISCOVERY_PLUGIN_H
9#define PXR_USD_SDR_DISCOVERY_PLUGIN_H
19#include "pxr/usd/sdr/api.h"
21#include "pxr/base/tf/type.h"
27PXR_NAMESPACE_OPEN_SCOPE
32#define SDR_REGISTER_DISCOVERY_PLUGIN(DiscoveryPluginClass) \
33TF_REGISTRY_FUNCTION(TfType) \
35 TfType::Define<DiscoveryPluginClass, TfType::Bases<SdrDiscoveryPlugin>>() \
36 .SetFactory<SdrDiscoveryPluginFactory<DiscoveryPluginClass>>(); \
59 virtual ~SdrDiscoveryPlugin();
73 virtual SdrShaderNodeDiscoveryResultVec DiscoverShaderNodes(
80using SdrDiscoveryPluginFactoryBase = NdrDiscoveryPluginFactoryBase;
83using SdrDiscoveryPluginFactory = NdrDiscoveryPluginFactory<T>;
87PXR_NAMESPACE_CLOSE_SCOPE
Interface for discovery plugins.
virtual NDR_API NdrNodeDiscoveryResultVec DiscoverNodes(const Context &)=0
Finds and returns all nodes that the implementing plugin should be aware of.
Standard pointer typedefs.
#define TF_DECLARE_WEAK_AND_REF_PTRS(type)
Define standard weak, ref, and vector pointer types.