Plasma Engine  2.0
Loading...
Searching...
No Matches
ToolsReflectionUtils.h
1#pragma once
2
3#include <Foundation/Reflection/ReflectionUtils.h>
4#include <ToolsFoundation/Reflection/ReflectedType.h>
5
9
13class PL_TOOLSFOUNDATION_DLL plToolsReflectionUtils
14{
15public:
17 static plVariant GetStorageDefault(const plAbstractProperty* pProperty);
18
19 static bool GetFloatFromVariant(const plVariant& val, double& out_fValue);
20 static bool GetVariantFromFloat(double fValue, plVariantType::Enum type, plVariant& out_val);
21
23 static void GetReflectedTypeDescriptorFromRtti(const plRTTI* pRtti, plReflectedTypeDescriptor& out_desc); // [tested]
24 static void GetMinimalReflectedTypeDescriptorFromRtti(const plRTTI* pRtti, plReflectedTypeDescriptor& out_desc);
25
26 static void GatherObjectTypes(const plDocumentObject* pObject, plSet<const plRTTI*>& inout_types);
27
28 static bool DependencySortTypeDescriptorArray(plDynamicArray<plReflectedTypeDescriptor*>& ref_descriptors);
29};
Definition AbstractObjectGraph.h:115
This is the base interface for all properties in the reflection system. It provides enough informatio...
Definition AbstractProperty.h:150
Definition DocumentObjectBase.h:11
Definition DynamicArray.h:81
Provides access to the properties of an plRTTI compatible data storage.
Definition IReflectedTypeAccessor.h:11
This class holds information about reflected types. Each instance represents one type that is known t...
Definition RTTI.h:30
Definition Set.h:238
Helper functions for handling reflection related operations.
Definition ToolsReflectionUtils.h:14
plVariant is a class that can store different types of variables, which is useful in situations where...
Definition Variant.h:44
Stores the description of a reflected type in a serializable form. Used by plPhantomRttiManager to ad...
Definition ReflectedType.h:95
Enum
This enum describes the type of data that is currently stored inside the variant. Note that changes t...
Definition VariantType.h:26