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::ScriptPropertyTable Class Reference

Inherits AZ::FunctionalScriptProperty, AZ::ScriptPropertyWatcher, and ScriptPropertyWatcherBus::Handler.

Public Types

typedef AZStd::unordered_map< int, ScriptProperty * > ScriptPropertyIndexMap
 
typedef AZStd::unordered_map< AZ::Crc32, ScriptProperty * > ScriptPropertyKeyedMap
 
typedef AZStd::unordered_map< AZ::Uuid, ScriptPropertyGenericClassMap * > ScriptPropertyGenericMap
 

Public Member Functions

 AZ_CLASS_ALLOCATOR (ScriptPropertyTable, SystemAllocator)
 
 AZ_RTTI (AZ::ScriptPropertyTable, "{0EB069C0-F6C6-4871-9BDB-CC1BBF0B5315}", FunctionalScriptProperty)
 
 ScriptPropertyTable (const char *name)
 
 ScriptPropertyTable (const char *name, const ScriptPropertyTable *scriptPropertyTable)
 
ScriptPropertyFindTableValue (AZ::ScriptDataContext &scriptDataContext, int keyIndex) const
 
ScriptPropertyFindTableValue (const AZ::ScriptPropertyGenericClass *scriptProperty) const
 
ScriptPropertyFindTableValue (const AZStd::string_view &keyValue) const
 
ScriptPropertyFindTableValue (int index) const
 
void UpdateTableValue (AZ::ScriptDataContext &scriptDataContext, int keyIndex, int valueIndex)
 
void UpdateTableValue (const AZ::ScriptPropertyGenericClass *scriptProperty, AZ::ScriptDataContext &scriptDataContext, int index)
 
void UpdateTableValue (const AZStd::string_view &keyValue, AZ::ScriptDataContext &scriptDataContext, int index)
 
void UpdateTableValue (int tableIndex, AZ::ScriptDataContext &scriptDataContext, int stackIndex)
 
void SetTableValue (const AZ::ScriptProperty *keyProperty, const AZ::ScriptProperty *value)
 
void SetTableValue (const AZ::ScriptPropertyGenericClass *keyProperty, const AZ::ScriptProperty *value)
 
void SetTableValue (const AZStd::string_view &keyValue, const ScriptProperty *value)
 
void SetTableValue (int index, const ScriptProperty *value)
 
template<typename T >
ScriptPropertyGenericClassMapImpl< T > * FindKeyedTableBase () const
 
const void * GetDataAddress () const override
 
AZ::TypeId GetDataTypeUuid () const override
 
ScriptPropertyTableClone (const char *name=nullptr) const override
 
bool Write (AZ::ScriptContext &context) override
 
bool WriteRawTable (AZ::ScriptContext &context)
 
void EnableInPlaceControls () override
 
void DisableInPlaceControls () override
 
AZ::ScriptContextGetScriptContext () const
 
int GetLuaTableLength () const
 
void OnObjectModified () override
 
- Public Member Functions inherited from AZ::FunctionalScriptProperty
 AZ_TYPE_INFO_WITH_NAME_DECL (FunctionalScriptProperty)
 
 AZ_RTTI_NO_TYPE_INFO_DECL ()
 
 FunctionalScriptProperty (const char *name)
 
virtual void EnableInPlaceControls ()=0
 
virtual void DisableInPlaceControls ()=0
 
void AddWatcher (AZ::ScriptPropertyWatcher *scriptPropertyWatcher)
 
void RemoveWatcher (AZ::ScriptPropertyWatcher *scriptPropertyWatcher)
 
- Public Member Functions inherited from AZ::ScriptProperty
 AZ_TYPE_INFO_WITH_NAME_DECL (ScriptProperty)
 
 AZ_RTTI_NO_TYPE_INFO_DECL ()
 
 ScriptProperty (const char *name)
 
virtual const void * GetDataAddress () const =0
 
virtual AZ::TypeId GetDataTypeUuid () const =0
 
virtual bool DoesTypeMatch (AZ::ScriptDataContext &, int) const
 
virtual ScriptPropertyClone (const char *name=nullptr) const =0
 
virtual bool Write (AZ::ScriptContext &context)=0
 
virtual bool TryRead (AZ::ScriptDataContext &context, int valueIndex)
 
bool TryUpdate (const AZ::ScriptProperty *scriptProperty)
 

Static Public Member Functions

static ScriptPropertyTryCreateProperty (ScriptDataContext &context, int valueIndex, const char *name)
 
- Static Public Member Functions inherited from AZ::ScriptProperty
static void UpdateScriptProperty (AZ::ScriptDataContext &sdc, int valueIndex, ScriptProperty **targetProperty)
 
static void Reflect (AZ::ReflectContext *reflection)
 

Protected Member Functions

void CloneDataFrom (const ScriptProperty *scriptProperty) override
 
- Protected Member Functions inherited from AZ::FunctionalScriptProperty
virtual void OnWatcherAdded (AZ::ScriptPropertyWatcher *scriptPropertyWatcher)
 
virtual void OnWatcherRemoved (AZ::ScriptPropertyWatcher *scriptPropertyWatcher)
 
void SignalPropertyChanged ()
 
virtual void CloneDataFrom (const AZ::ScriptProperty *scriptProperty)=0
 

Friends

class AzFramework::ScriptPropertyMarshaler
 
class AzFramework::ScriptPropertyTableMarshalerHelper
 

Additional Inherited Members

- Public Attributes inherited from AZ::ScriptProperty
AZ::u64 m_id
 
AZStd::string m_name
 
- Protected Attributes inherited from AZ::FunctionalScriptProperty
AZStd::set< AZ::ScriptPropertyWatcher * > m_watchers
 

Member Function Documentation

◆ Clone()

ScriptPropertyTable * AZ::ScriptPropertyTable::Clone ( const char *  name = nullptr) const
overridevirtual

Implements AZ::ScriptProperty.

◆ CloneDataFrom()

void AZ::ScriptPropertyTable::CloneDataFrom ( const ScriptProperty scriptProperty)
overrideprotectedvirtual

Implements AZ::ScriptProperty.

◆ DisableInPlaceControls()

void AZ::ScriptPropertyTable::DisableInPlaceControls ( )
overridevirtual

◆ EnableInPlaceControls()

void AZ::ScriptPropertyTable::EnableInPlaceControls ( )
overridevirtual

◆ GetDataAddress()

const void * AZ::ScriptPropertyTable::GetDataAddress ( ) const
inlineoverridevirtual

Implements AZ::ScriptProperty.

◆ GetDataTypeUuid()

AZ::TypeId AZ::ScriptPropertyTable::GetDataTypeUuid ( ) const
inlineoverridevirtual

Implements AZ::ScriptProperty.

◆ Write()

bool AZ::ScriptPropertyTable::Write ( AZ::ScriptContext context)
overridevirtual

Implements AZ::ScriptProperty.


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