Navigation
API > API/Plugins > API/Plugins/DataValidation
The EditorValidatorBase is a class which verifies that an asset meets a specific ruleset. It should be used when checking engine-level classes, as UObject::IsDataValid requires overriding the base class. You can create project-specific version of the validator base, with custom logging and enabled logic.
C++ and Blueprint validators will be gathered on editor start, while python validators need to register themselves
| Name | UEditorValidatorBase |
| Type | class |
| Header File | /Engine/Plugins/Editor/DataValidation/Source/DataValidation/Public/EditorValidatorBase.h |
| Include Path | #include "EditorValidatorBase.h" |
Syntax
UCLASS (MinimalAPI, Abstract, Blueprintable, Meta=(ShowWorldContextPin), Config=Editor)
class UEditorValidatorBase : public UObject
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UEditorValidatorBase
Derived Classes
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
UEditorValidatorBase() |
EditorValidatorBase.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| AllErrors | TArray< FText > | EditorValidatorBase.h | ||
| AllMessages | TArray< TSharedRef< FTokenizedMessage > > | EditorValidatorBase.h | ||
| AllWarnings | TArray< FText > | EditorValidatorBase.h | ||
| CurrentAssetBeingValidated | const FAssetData * | EditorValidatorBase.h | ||
| CurrentObjectBeingValidated | TObjectPtr< UObject > | EditorValidatorBase.h | ||
| ValidationResult | EDataValidationResult | EditorValidatorBase.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| EditorValidatorBase.h | |||
void AssetFails
(
const UObject* InAsset, |
EditorValidatorBase.h | ||
void AssetFails
(
const UObject* InAsset, |
Marks the validation as failed and adds an error message. | EditorValidatorBase.h |
|
TSharedRef< FTokenizedMessage > AssetMessage
(
const FAssetData& InAssetData, |
Add a tokenized message to the validation results. | EditorValidatorBase.h | |
TSharedRef< FTokenizedMessage > AssetMessage
(
EMessageSeverity::Type InSeverity, |
EditorValidatorBase.h | ||
void AssetPasses
(
const UObject* InAsset |
Marks the validation as successful. | EditorValidatorBase.h |
|
| Adds a message to this validation but doesn't mark it as failed. | EditorValidatorBase.h |
|
|
virtual bool CanValidate_Implementation
(
const EDataValidationUsecase InUsecase |
EditorValidatorBase.h | ||
virtual bool CanValidateAsset_Implementation
(
const FAssetData& InAssetData, |
Override this to determine whether or not you can use this validator given this context. | EditorValidatorBase.h | |
virtual bool CanValidateAsset_Implementation
(
UObject* InAsset |
EditorValidatorBase.h | ||
EDataValidationResult ExtractValidationState
(
FDataValidationContext& InOutContext |
EditorValidatorBase.h | ||
| EditorValidatorBase.h | |||
virtual TArray< FAssetData > GetAssetsToValidateFromChangelist
(
UDataValidationChangelist* InChangelist, |
Override this to return additional assets that need validation because of other changes in a changelist. | EditorValidatorBase.h | |
EDataValidationResult GetValidationResult() |
EditorValidatorBase.h |
|
|
virtual bool IsEnabled() |
EditorValidatorBase.h | ||
bool IsValidationStateSet() |
EditorValidatorBase.h | ||
bool K2_CanValidate
(
const EDataValidationUsecase InUsecase |
Override this to determine whether or not you can use this validator given this usecase | EditorValidatorBase.h |
|
bool K2_CanValidateAsset
(
UObject* InAsset |
Override this to determine whether or not you can validate a given asset with this validator | EditorValidatorBase.h |
|
EDataValidationResult K2_ValidateLoadedAsset
(
UObject* InAsset |
Override this in blueprint to validate assets | EditorValidatorBase.h |
|
virtual EDataValidationResult K2_ValidateLoadedAsset_Implementation
(
UObject* InAsset |
Declaration for above BlueprintNativeEvent. | EditorValidatorBase.h | |
void ResetValidationState() |
EditorValidatorBase.h | ||
EDataValidationResult ValidateLoadedAsset
(
const FAssetData& InAssetData, |
Validation entry point - will dispatch to native and/or BP validation as appropriate and return results. | EditorValidatorBase.h | |
virtual EDataValidationResult ValidateLoadedAsset_Implementation
(
UObject* InAsset, |
EditorValidatorBase.h | ||
virtual EDataValidationResult ValidateLoadedAsset_Implementation
(
const FAssetData& InAssetData, |
Override this to validate in C++ with access to FDataValidationContext | EditorValidatorBase.h |