All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ShaderMetadataHelpers Namespace Reference

Various utilities for parsing metadata contained within shaders. More...

Functions

SDR_API bool IsTruthy (const TfToken &propName, const NdrTokenMap &metadata)
 Determines if the given property in the metadata dictionary has a truthy value. More...
 
SDR_API std::string StringVal (const TfToken &propName, const NdrTokenMap &metadata, const std::string &defaultValue=std::string())
 Extracts the string value from the given property if it exists, otherwise returns defaultValue. More...
 
SDR_API TfToken TokenVal (const TfToken &propName, const NdrTokenMap &metadata, const TfToken &defaultValue=TfToken())
 Extracts the tokenized value from the given property. More...
 
SDR_API NdrStringVec StringVecVal (const TfToken &propName, const NdrTokenMap &metadata)
 Extracts a vector of strings from the given property. More...
 
SDR_API NdrTokenVec TokenVecVal (const TfToken &propName, const NdrTokenMap &metadata)
 Extracts a vector of tokenized values from the given property. More...
 
SDR_API NdrOptionVec OptionVecVal (const std::string &optionStr)
 Extracts an "options" vector from the given string. More...
 
SDR_API std::string CreateStringFromStringVec (const NdrStringVec &stringVec)
 Serializes a vector of strings into a string using the pipe character as the delimiter. More...
 
SDR_API bool IsPropertyAnAssetIdentifier (const NdrTokenMap &metadata)
 Determines if the specified property metadata has a widget that indicates the property is an asset identifier. More...
 
SDR_API bool IsPropertyATerminal (const NdrTokenMap &metadata)
 Determines if the specified property metadata has a 'renderType' that indicates the property should be a SdrPropertyTypes->Terminal. More...
 
SDR_API TfToken GetRoleFromMetadata (const NdrTokenMap &metadata)
 Gets the "role" from metadata if one is provided. Only returns a value. More...
 

Detailed Description

Various utilities for parsing metadata contained within shaders.

Function Documentation

SDR_API std::string ShaderMetadataHelpers::CreateStringFromStringVec ( const NdrStringVec &  stringVec)

Serializes a vector of strings into a string using the pipe character as the delimiter.

SDR_API TfToken ShaderMetadataHelpers::GetRoleFromMetadata ( const NdrTokenMap &  metadata)

Gets the "role" from metadata if one is provided. Only returns a value.

SDR_API bool ShaderMetadataHelpers::IsPropertyAnAssetIdentifier ( const NdrTokenMap &  metadata)

Determines if the specified property metadata has a widget that indicates the property is an asset identifier.

SDR_API bool ShaderMetadataHelpers::IsPropertyATerminal ( const NdrTokenMap &  metadata)

Determines if the specified property metadata has a 'renderType' that indicates the property should be a SdrPropertyTypes->Terminal.

SDR_API bool ShaderMetadataHelpers::IsTruthy ( const TfToken propName,
const NdrTokenMap &  metadata 
)

Determines if the given property in the metadata dictionary has a truthy value.

All values are considered to be true except the following (case-insensitive): '0', 'false', and 'f'. The absence of propName in the metadata also evaluates to false.

SDR_API NdrOptionVec ShaderMetadataHelpers::OptionVecVal ( const std::string &  optionStr)

Extracts an "options" vector from the given string.

SDR_API std::string ShaderMetadataHelpers::StringVal ( const TfToken propName,
const NdrTokenMap &  metadata,
const std::string &  defaultValue = std::string() 
)

Extracts the string value from the given property if it exists, otherwise returns defaultValue.

SDR_API NdrStringVec ShaderMetadataHelpers::StringVecVal ( const TfToken propName,
const NdrTokenMap &  metadata 
)

Extracts a vector of strings from the given property.

SDR_API TfToken ShaderMetadataHelpers::TokenVal ( const TfToken propName,
const NdrTokenMap &  metadata,
const TfToken defaultValue = TfToken() 
)

Extracts the tokenized value from the given property.

An empty token is returned if the property does not exist.

SDR_API NdrTokenVec ShaderMetadataHelpers::TokenVecVal ( const TfToken propName,
const NdrTokenMap &  metadata 
)

Extracts a vector of tokenized values from the given property.

An empty vector is returned if the property does not exist.