HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SdrShaderNodeDiscoveryResult Struct Reference

#include <shaderNodeDiscoveryResult.h>

Public Member Functions

 SdrShaderNodeDiscoveryResult (const SdrIdentifier &identifier, const SdrVersion &version, const std::string &name, const TfToken &family, const TfToken &discoveryType, const TfToken &sourceType, const std::string &uri, const std::string &resolvedUri, const std::string &sourceCode=std::string(), const SdrTokenMap &metadata=SdrTokenMap(), const std::string &blindData=std::string(), const TfToken &subIdentifier=TfToken())
 Constructor. More...
 
NdrNodeDiscoveryResult ToNdrNodeDiscoveryResult () const
 

Static Public Member Functions

static SdrShaderNodeDiscoveryResult FromNdrNodeDiscoveryResult (const NdrNodeDiscoveryResult &result)
 

Public Attributes

SdrIdentifier identifier
 
SdrVersion version
 
std::string name
 
TfToken family
 
TfToken discoveryType
 
TfToken sourceType
 
std::string uri
 
std::string resolvedUri
 
std::string sourceCode
 
SdrTokenMap metadata
 
std::string blindData
 
TfToken subIdentifier
 

Detailed Description

Represents the raw data of a node, and some other bits of metadata, that were determined via a SdrDiscoveryPlugin.

Definition at line 25 of file shaderNodeDiscoveryResult.h.

Constructor & Destructor Documentation

SdrShaderNodeDiscoveryResult::SdrShaderNodeDiscoveryResult ( const SdrIdentifier identifier,
const SdrVersion version,
const std::string &  name,
const TfToken family,
const TfToken discoveryType,
const TfToken sourceType,
const std::string &  uri,
const std::string &  resolvedUri,
const std::string &  sourceCode = std::string(),
const SdrTokenMap metadata = SdrTokenMap(),
const std::string &  blindData = std::string(),
const TfToken subIdentifier = TfToken() 
)
inline

Constructor.

Definition at line 27 of file shaderNodeDiscoveryResult.h.

Member Function Documentation

static SdrShaderNodeDiscoveryResult SdrShaderNodeDiscoveryResult::FromNdrNodeDiscoveryResult ( const NdrNodeDiscoveryResult result)
inlinestatic

Helper function to translate NdrNodeDiscoveryResult to SdrShaderNodeDiscoveryResult values.

Deprecated:
This function is deprecated and will be removed with the removal of the Ndr library.

Definition at line 168 of file shaderNodeDiscoveryResult.h.

NdrNodeDiscoveryResult SdrShaderNodeDiscoveryResult::ToNdrNodeDiscoveryResult ( ) const
inline

Helper function to translate SdrShaderNodeDiscoveryResult to NdrNodeDiscoveryResult values.

Deprecated:
This function is deprecated and will be removed with the removal of the Ndr library.

Definition at line 145 of file shaderNodeDiscoveryResult.h.

Member Data Documentation

std::string SdrShaderNodeDiscoveryResult::blindData

An optional detail for the parser plugin. The parser plugin defines the meaning of this data so the discovery plugin must be written to match.

Definition at line 128 of file shaderNodeDiscoveryResult.h.

TfToken SdrShaderNodeDiscoveryResult::discoveryType

The node's discovery type.

The type could be the file extension, or some other type of metadata that can signify a type prior to parsing. See the documentation for SdrParserPlugin and SdrParserPlugin::DiscoveryTypes for more information on how this value is used.

Definition at line 88 of file shaderNodeDiscoveryResult.h.

TfToken SdrShaderNodeDiscoveryResult::family

The node's family.

A node's family is an optional piece of metadata that specifies a generic grouping of nodes. E.g a node with identifier "mix_float_2_1" might have family "mix".

Definition at line 80 of file shaderNodeDiscoveryResult.h.

SdrIdentifier SdrShaderNodeDiscoveryResult::identifier

The node's identifier.

How the node is identified. In many cases this will be the name of the file or resource that this node originated from. E.g. "mix_float_2_1". The identifier must be unique for a given sourceType.

Definition at line 60 of file shaderNodeDiscoveryResult.h.

SdrTokenMap SdrShaderNodeDiscoveryResult::metadata

The node's metadata collected during the discovery process.

Additional metadata may be present in the node's source, in the asset pointed to by resolvedUri or in sourceCode (if resolvedUri is empty). In general, parsers should override this data with metadata from the shader source.

Definition at line 123 of file shaderNodeDiscoveryResult.h.

std::string SdrShaderNodeDiscoveryResult::name

The node's name.

A version independent identifier for the node type. This will often embed type parameterization but should not embed the version. E.g a node with identifier "mix_float_2_1" might have name "mix_float".

Definition at line 73 of file shaderNodeDiscoveryResult.h.

std::string SdrShaderNodeDiscoveryResult::resolvedUri

The node's fully-resolved URI.

For example, this might be an absolute path when the original URI was a relative path. In most cases, this is the path that Ar's Resolve() returns. In any case, this path should be locally accessible.

Definition at line 109 of file shaderNodeDiscoveryResult.h.

std::string SdrShaderNodeDiscoveryResult::sourceCode

The node's entire source code.

The source code is parsed (if non-empty) by parser plugins when the resolvedUri value is empty.

Definition at line 115 of file shaderNodeDiscoveryResult.h.

TfToken SdrShaderNodeDiscoveryResult::sourceType

The node's source type.

This type is unique to the parsing plugin (SdrParserPlugin::SourceType), and determines the source of the node. See SdrShaderNode::GetSourceType() for more information.

Definition at line 95 of file shaderNodeDiscoveryResult.h.

TfToken SdrShaderNodeDiscoveryResult::subIdentifier

The subIdentifier is associated with a particular asset and refers to a specific definition within the asset. The asset is the one referred to by SdrRegistry::GetNodeFromAsset(). The subIdentifier is not needed for all cases where the node definition is not associated with an asset. Even if the node definition is associated with an asset, the subIdentifier is only needed if the asset specifies multiple definitions rather than a single definition.

Definition at line 137 of file shaderNodeDiscoveryResult.h.

std::string SdrShaderNodeDiscoveryResult::uri

The node's origin.

This may be a filesystem path, a URL pointing to a resource in the cloud, or some other type of resource identifier.

Definition at line 101 of file shaderNodeDiscoveryResult.h.

SdrVersion SdrShaderNodeDiscoveryResult::version

The node's version. This may or may not be embedded in the identifier, it's up to implementations. E.g a node with identifier "mix_float_2_1" might have version 2.1.

Definition at line 65 of file shaderNodeDiscoveryResult.h.


The documentation for this struct was generated from the following file: