Open 3D Engine AzCore API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZ::JsonColorSerializer Class Reference

Inherits AZ::BaseJsonSerializer.

Public Member Functions

 AZ_RTTI (JsonColorSerializer, "{4C0CF19D-7F92-459A-88C3-47C07BE8BD45}", BaseJsonSerializer)
 
JsonSerializationResult::Result Load (void *outputValue, const Uuid &outputValueTypeId, const rapidjson::Value &inputValue, JsonDeserializerContext &context) override
 
JsonSerializationResult::Result Store (rapidjson::Value &outputValue, const void *inputValue, const void *defaultValue, const Uuid &valueTypeId, JsonSerializerContext &context) override
 
OperationFlags GetOperationsFlags () const override
 Returns the operation flags which tells the Json Serialization how this custom json serializer can be used.
 
- Public Member Functions inherited from AZ::BaseJsonSerializer
 AZ_RTTI (BaseJsonSerializer, "{7291FFDC-D339-40B5-BB26-EA067A327B21}")
 
virtual JsonSerializationResult::Result Load (void *outputValue, const Uuid &outputValueTypeId, const rapidjson::Value &inputValue, JsonDeserializerContext &context)
 
virtual JsonSerializationResult::Result Store (rapidjson::Value &outputValue, const void *inputValue, const void *defaultValue, const Uuid &valueTypeId, JsonSerializerContext &context)
 
virtual OperationFlags GetOperationsFlags () const
 Returns the operation flags which tells the Json Serialization how this custom json serializer can be used.
 

Public Attributes

 AZ_CLASS_ALLOCATOR_DECL
 

Additional Inherited Members

- Public Types inherited from AZ::BaseJsonSerializer
enum class  ContinuationFlags {
  None = 0 , ResolvePointer = 1 << 0 , ReplaceDefault = 1 << 1 , LoadAsNewInstance = 1 << 2 ,
  IgnoreTypeSerializer = 1 << 3
}
 
enum class  OperationFlags { None = 0 , ManualDefault = 1 << 0 , InitializeNewInstance = 1 << 1 }
 
- Protected Member Functions inherited from AZ::BaseJsonSerializer
JsonSerializationResult::ResultCode ContinueLoading (void *object, const Uuid &typeId, const rapidjson::Value &value, JsonDeserializerContext &context, ContinuationFlags flags=ContinuationFlags::None)
 
JsonSerializationResult::ResultCode ContinueStoring (rapidjson::Value &output, const void *object, const void *defaultObject, const Uuid &typeId, JsonSerializerContext &context, ContinuationFlags flags=ContinuationFlags::None)
 
JsonSerializationResult::ResultCode LoadTypeId (Uuid &typeId, const rapidjson::Value &input, JsonDeserializerContext &context, const Uuid *baseTypeId=nullptr, bool *isExplicit=nullptr)
 
JsonSerializationResult::ResultCode StoreTypeId (rapidjson::Value &output, const Uuid &typeId, JsonSerializerContext &context)
 
JsonSerializationResult::ResultCode ContinueLoadingFromJsonObjectField (void *object, const Uuid &typeId, const rapidjson::Value &value, rapidjson::Value::StringRefType memberName, JsonDeserializerContext &context, ContinuationFlags flags=ContinuationFlags::None)
 Helper function similar to ContinueLoading, but loads the data as a member of 'value' rather than 'value' itself, if it exists.
 
JsonSerializationResult::ResultCode ContinueStoringToJsonObjectField (rapidjson::Value &output, rapidjson::Value::StringRefType newMemberName, const void *object, const void *defaultObject, const Uuid &typeId, JsonSerializerContext &context, ContinuationFlags flags=ContinuationFlags::None)
 Helper function similar to ContinueStoring, but stores the data as a member of 'output' rather than overwriting 'output'.
 
bool IsExplicitDefault (const rapidjson::Value &value)
 
rapidjson::Value GetExplicitDefault ()
 

Member Function Documentation

◆ GetOperationsFlags()

OperationFlags AZ::JsonColorSerializer::GetOperationsFlags ( ) const
overridevirtual

Returns the operation flags which tells the Json Serialization how this custom json serializer can be used.

Reimplemented from AZ::BaseJsonSerializer.

◆ Load()

JsonSerializationResult::Result AZ::JsonColorSerializer::Load ( void *  outputValue,
const Uuid outputValueTypeId,
const rapidjson::Value &  inputValue,
JsonDeserializerContext context 
)
overridevirtual

Transforms the data from the rapidjson Value to outputValue, if the conversion is possible and supported. The serializer is responsible for casting to the proper type and safely writing to the outputValue memory.

Note
The default implementation is to load the object ignoring a custom serializers for the type, which allows for custom serializers to modify the object after all default loading has occurred.

Reimplemented from AZ::BaseJsonSerializer.

◆ Store()

JsonSerializationResult::Result AZ::JsonColorSerializer::Store ( rapidjson::Value &  outputValue,
const void *  inputValue,
const void *  defaultValue,
const Uuid valueTypeId,
JsonSerializerContext context 
)
overridevirtual

Write the input value to a rapidjson value if the default value is not null and doesn't match the input value, otherwise an error is returned and sets the rapidjson value to a null value.

Note
The default implementation is to store the object ignoring custom serializers.

Reimplemented from AZ::BaseJsonSerializer.


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