7#ifndef PXR_USD_USD_VALIDATOR_H
8#define PXR_USD_USD_VALIDATOR_H
14#include "pxr/usd/usd/api.h"
21PXR_NAMESPACE_OPEN_SCOPE
24using UsdValidationErrorVector = std::vector<UsdValidationError>;
76using UsdValidatorMetadataVector = std::vector<UsdValidatorMetadata>;
95 const SdfLayerHandle&)>;
157 return std::move(_metadata);
166 UsdValidationErrorVector
Validate(
const SdfLayerHandle &layer)
const;
174 UsdValidationErrorVector
Validate(
const UsdStagePtr &usdStage)
const;
225 const std::vector<const UsdValidator*>& validators);
237 return _containedValidators;
246 return std::move(_containedValidators);
258 return std::move(_metadata);
263 std::vector<const UsdValidator*> _containedValidators;
266PXR_NAMESPACE_CLOSE_SCOPE
Token for efficient comparison, assignment, and hashing of known strings.
UsdPrim is the sole persistent scenegraph object on a UsdStage, and is the embodiment of a "Prim" as ...
UsdValidationError is an entity returned by a validation task, which is associated with a UsdValidato...
UsdValidationRegistry manages and provides access to UsdValidator / UsdValidatorSuite for USD Validat...
UsdValidator is a class describing a single test.
UsdValidatorMetadata GetMetadata() &&
Return metadata associated with this validator by-value.
USD_API UsdValidationErrorVector Validate(const SdfLayerHandle &layer) const
Run validation on the given layer by executing the contained validateTaskFn and returns UsdValidation...
USD_API UsdValidator(const UsdValidatorMetadata &metadata)
Instantiate a UsdValidator which has no validation logic implementation.
USD_API UsdValidationErrorVector Validate(const UsdPrim &usdPrim) const
Run validation on the given usdPrim by executing the contained validateTaskFn and returns UsdValidati...
const UsdValidatorMetadata & GetMetadata() const &
Return metadata associated with this Validator.
USD_API UsdValidationErrorVector Validate(const UsdStagePtr &usdStage) const
Run validation on the given usdStage by executing the contained validateTaskFn and returns UsdValidat...
UsdValidatorSuite acts like a suite for a collection of tests, which clients can use to bundle all te...
UsdValidatorMetadata GetMetadata() &&
Return metadata associated with this validator.
std::vector< const UsdValidator * > GetContainedValidators() &&
Returns a vector of const UsdValidator pointers, which make this UsdValidatorSuite.
const std::vector< const UsdValidator * > & GetContainedValidators() const &
Returns a vector of const UsdValidator pointers, which make this UsdValidatorSuite.
const UsdValidatorMetadata & GetMetadata() const &
Return metadata associated with this validator.
USD_API UsdValidatorSuite(const UsdValidatorMetadata &metadata, const std::vector< const UsdValidator * > &validators)
Instantiate UsdValidatorSuite using metadata and a vector of validators.
std::function< UsdValidationErrorVector(const UsdStagePtr &)> UsdValidateStageTaskFn
UsdValidateStageTaskFn: Validation logic operating on a given UsdStage.
std::function< UsdValidationErrorVector(const SdfLayerHandle &)> UsdValidateLayerTaskFn
UsdValidateLayerTaskFn: Validation logic operating on a given SdfLayerHandle.
std::function< UsdValidationErrorVector(const UsdPrim &)> UsdValidatePrimTaskFn
UsdValidatePrimTaskFn: Validation logic operating on a given UsdPrim.
TfToken class for efficient string referencing and hashing, plus conversions to and from stl string c...
std::vector< TfToken > TfTokenVector
Convenience types.
PlugPluginPtr pluginPtr
Pointer to the plugin to which a plugin based validator belongs.
bool isSuite
whether this test represents a test suite or not
TfTokenVector schemaTypes
list of schemaTypes names this test applies to, extracted from plugInfo.json
TfTokenVector keywords
list of keywords extracted for this test from the plugInfo.json
std::string doc
doc string extracted from plugInfo.json This is a mandatory field for a ValidatorMetadata.
TfToken name
Name of the validator.