| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756 |
- #include "BsScriptSerializableField.h"
- #include "BsScriptSerializableObjectInfo.h"
- #include "BsScriptSerializableFieldRTTI.h"
- #include "BsMonoUtil.h"
- #include "BsMonoManager.h"
- #include "BsScriptResourceManager.h"
- #include "BsScriptGameObjectManager.h"
- #include "BsScriptTexture2D.h"
- #include "BsScriptSpriteTexture.h"
- #include "BsScriptSceneObject.h"
- #include "BsScriptComponent.h"
- #include "BsScriptSerializableObject.h"
- #include "BsScriptSerializableArray.h"
- #include "BsScriptSerializableList.h"
- #include "BsScriptSerializableDictionary.h"
- using namespace CamelotFramework;
- namespace BansheeEngine
- {
- ScriptSerializableFieldKeyPtr ScriptSerializableFieldKey::create(CM::UINT16 typeId, CM::UINT16 fieldId)
- {
- ScriptSerializableFieldKeyPtr fieldKey = cm_shared_ptr<ScriptSerializableFieldKey>();
- fieldKey->mTypeId = typeId;
- fieldKey->mFieldId = fieldId;
- return fieldKey;
- }
- ScriptSerializableFieldDataEntryPtr ScriptSerializableFieldDataEntry::create(const ScriptSerializableFieldKeyPtr& key, const ScriptSerializableFieldDataPtr& value)
- {
- ScriptSerializableFieldDataEntryPtr fieldDataEntry = cm_shared_ptr<ScriptSerializableFieldDataEntry>();
- fieldDataEntry->mKey = key;
- fieldDataEntry->mValue = value;
- return fieldDataEntry;
- }
- ScriptSerializableFieldDataPtr ScriptSerializableFieldData::create(const ScriptSerializableTypeInfoPtr& typeInfo, MonoObject* value)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoPrimitive)
- {
- auto primitiveTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoPrimitive>(typeInfo);
- switch (primitiveTypeInfo->mType)
- {
- case ScriptPrimitiveType::Bool:
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataBool>();
- if(value != nullptr)
- memcpy(&fieldData->value, mono_object_unbox(value), sizeof(fieldData->value));
- return fieldData;
- }
- case ScriptPrimitiveType::Char:
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataChar>();
- if(value != nullptr)
- memcpy(&fieldData->value, mono_object_unbox(value), sizeof(fieldData->value));
- return fieldData;
- }
- case ScriptPrimitiveType::I8:
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataI8>();
- if(value != nullptr)
- memcpy(&fieldData->value, mono_object_unbox(value), sizeof(fieldData->value));
- return fieldData;
- }
- case ScriptPrimitiveType::U8:
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataU8>();
- if(value != nullptr)
- memcpy(&fieldData->value, mono_object_unbox(value), sizeof(fieldData->value));
- return fieldData;
- }
- case ScriptPrimitiveType::I16:
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataI16>();
- if(value != nullptr)
- memcpy(&fieldData->value, mono_object_unbox(value), sizeof(fieldData->value));
- return fieldData;
- }
- case ScriptPrimitiveType::U16:
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataU16>();
- if(value != nullptr)
- memcpy(&fieldData->value, mono_object_unbox(value), sizeof(fieldData->value));
- return fieldData;
- }
- case ScriptPrimitiveType::I32:
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataI32>();
- if(value != nullptr)
- memcpy(&fieldData->value, mono_object_unbox(value), sizeof(fieldData->value));
- return fieldData;
- }
- case ScriptPrimitiveType::U32:
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataU32>();
- if(value != nullptr)
- memcpy(&fieldData->value, mono_object_unbox(value), sizeof(fieldData->value));
- return fieldData;
- }
- case ScriptPrimitiveType::I64:
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataI64>();
- if(value != nullptr)
- memcpy(&fieldData->value, mono_object_unbox(value), sizeof(fieldData->value));
- return fieldData;
- }
- case ScriptPrimitiveType::U64:
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataU64>();
- if(value != nullptr)
- memcpy(&fieldData->value, mono_object_unbox(value), sizeof(fieldData->value));
- return fieldData;
- }
- case ScriptPrimitiveType::Float:
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataFloat>();
- if(value != nullptr)
- memcpy(&fieldData->value, mono_object_unbox(value), sizeof(fieldData->value));
- return fieldData;
- }
- case ScriptPrimitiveType::Double:
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataDouble>();
- if(value != nullptr)
- memcpy(&fieldData->value, mono_object_unbox(value), sizeof(fieldData->value));
- return fieldData;
- }
- case ScriptPrimitiveType::String:
- {
- MonoString* strVal = (MonoString*)(value);
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataString>();
- if(strVal != nullptr)
- fieldData->value = MonoUtil::monoToWString(strVal);
- return fieldData;
- }
- case ScriptPrimitiveType::TextureRef:
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataResourceRef>();
- if(value != nullptr)
- {
- ScriptTexture2D* scriptTexture2D = ScriptTexture2D::toNative(value);
- fieldData->value = static_resource_cast<ScriptTexture2D>(scriptTexture2D->getNativeHandle());
- }
- return fieldData;
- }
- case ScriptPrimitiveType::SpriteTextureRef:
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataResourceRef>();
-
- if(value != nullptr)
- {
- ScriptSpriteTexture* scriptSpriteTexture = ScriptSpriteTexture::toNative(value);
- fieldData->value = static_resource_cast<SpriteTexture>(scriptSpriteTexture->getNativeHandle());
- }
- return fieldData;
- }
- case ScriptPrimitiveType::SceneObjectRef:
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataGameObjectRef>();
- if(value != nullptr)
- {
- ScriptSceneObject* scriptSceneObject = ScriptSceneObject::toNative(value);
- fieldData->value = static_object_cast<SceneObject>(scriptSceneObject->getNativeHandle());
- }
- return fieldData;
- }
- case ScriptPrimitiveType::ComponentRef:
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataGameObjectRef>();
- if(value != nullptr)
- {
- ScriptComponent* scriptComponent = ScriptComponent::toNative(value);
- fieldData->value = static_object_cast<Component>(scriptComponent->getNativeHandle());
- }
- return fieldData;
- }
- }
- }
- else if(typeInfo->getTypeId() == TID_SerializableTypeInfoObject)
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataObject>();
- if(value != nullptr)
- {
- fieldData->value = ScriptSerializableObject::create(value);
- }
- return fieldData;
- }
- else if(typeInfo->getTypeId() == TID_SerializableTypeInfoArray)
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataArray>();
- if(value != nullptr)
- {
- fieldData->value = ScriptSerializableArray::create(value, std::static_pointer_cast<ScriptSerializableTypeInfoArray>(typeInfo));
- }
- return fieldData;
- }
- else if(typeInfo->getTypeId() == TID_SerializableTypeInfoList)
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataList>();
- if(value != nullptr)
- {
- fieldData->value = ScriptSerializableList::create(value, std::static_pointer_cast<ScriptSerializableTypeInfoList>(typeInfo));
- }
- return fieldData;
- }
- else if(typeInfo->getTypeId() == TID_SerializableTypeInfoDictionary)
- {
- auto fieldData = cm_shared_ptr<ScriptSerializableFieldDataDictionary>();
- if(value != nullptr)
- {
- fieldData->value = ScriptSerializableDictionary::create(value, std::static_pointer_cast<ScriptSerializableTypeInfoDictionary>(typeInfo));
- }
- return fieldData;
- }
- return nullptr;
- }
- void* ScriptSerializableFieldDataBool::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoPrimitive)
- {
- auto primitiveTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoPrimitive>(typeInfo);
- if(primitiveTypeInfo->mType == ScriptPrimitiveType::Bool)
- return &value;
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataChar::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoPrimitive)
- {
- auto primitiveTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoPrimitive>(typeInfo);
- if(primitiveTypeInfo->mType == ScriptPrimitiveType::Char)
- return &value;
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataI8::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoPrimitive)
- {
- auto primitiveTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoPrimitive>(typeInfo);
- if(primitiveTypeInfo->mType == ScriptPrimitiveType::I8)
- return &value;
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataU8::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoPrimitive)
- {
- auto primitiveTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoPrimitive>(typeInfo);
- if(primitiveTypeInfo->mType == ScriptPrimitiveType::U8)
- return &value;
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataI16::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoPrimitive)
- {
- auto primitiveTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoPrimitive>(typeInfo);
- if(primitiveTypeInfo->mType == ScriptPrimitiveType::I16)
- return &value;
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataU16::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoPrimitive)
- {
- auto primitiveTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoPrimitive>(typeInfo);
- if(primitiveTypeInfo->mType == ScriptPrimitiveType::U16)
- return &value;
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataI32::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoPrimitive)
- {
- auto primitiveTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoPrimitive>(typeInfo);
- if(primitiveTypeInfo->mType == ScriptPrimitiveType::I32)
- return &value;
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataU32::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoPrimitive)
- {
- auto primitiveTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoPrimitive>(typeInfo);
- if(primitiveTypeInfo->mType == ScriptPrimitiveType::U32)
- return &value;
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataI64::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoPrimitive)
- {
- auto primitiveTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoPrimitive>(typeInfo);
- if(primitiveTypeInfo->mType == ScriptPrimitiveType::I64)
- return &value;
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataU64::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoPrimitive)
- {
- auto primitiveTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoPrimitive>(typeInfo);
- if(primitiveTypeInfo->mType == ScriptPrimitiveType::U64)
- return &value;
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataFloat::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoPrimitive)
- {
- auto primitiveTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoPrimitive>(typeInfo);
- if(primitiveTypeInfo->mType == ScriptPrimitiveType::Float)
- return &value;
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataDouble::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoPrimitive)
- {
- auto primitiveTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoPrimitive>(typeInfo);
- if(primitiveTypeInfo->mType == ScriptPrimitiveType::Double)
- return &value;
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataString::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoPrimitive)
- {
- auto primitiveTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoPrimitive>(typeInfo);
- if(primitiveTypeInfo->mType == ScriptPrimitiveType::String)
- {
- return MonoUtil::wstringToMono(MonoManager::instance().getDomain(), value);
- }
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataResourceRef::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoPrimitive)
- {
- auto primitiveTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoPrimitive>(typeInfo);
- if(primitiveTypeInfo->mType == ScriptPrimitiveType::TextureRef)
- {
- if(value)
- {
- ScriptTexture2D* scriptResource = ScriptResourceManager::instance().getScriptTexture(value);
- if(scriptResource == nullptr)
- scriptResource = ScriptResourceManager::instance().createScriptTexture(value);
- return scriptResource->getManagedInstance();
- }
- else
- return nullptr;
- }
- else if(primitiveTypeInfo->mType == ScriptPrimitiveType::SpriteTextureRef)
- {
- if(value)
- {
- ScriptSpriteTexture* scriptResource = ScriptResourceManager::instance().getScriptSpriteTexture(value);
- if(scriptResource == nullptr)
- scriptResource = ScriptResourceManager::instance().createScriptSpriteTexture(value);
- if(scriptResource != nullptr)
- return scriptResource->getManagedInstance();
- }
- else
- return nullptr;
- }
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataGameObjectRef::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoPrimitive)
- {
- auto primitiveTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoPrimitive>(typeInfo);
- if(primitiveTypeInfo->mType == ScriptPrimitiveType::SceneObjectRef)
- {
- if(value)
- {
- ScriptSceneObject* scriptSceneObject = ScriptGameObjectManager::instance().getScriptSceneObject(value);
- if(scriptSceneObject == nullptr)
- scriptSceneObject = ScriptGameObjectManager::instance().createScriptSceneObject(value);
- return scriptSceneObject->getManagedInstance();
- }
- else
- return nullptr;
- }
- else if(primitiveTypeInfo->mType == ScriptPrimitiveType::ComponentRef)
- {
- if(value)
- {
- ScriptComponent* scriptComponent = ScriptGameObjectManager::instance().getScriptComponent(value);
- if(scriptComponent == nullptr)
- scriptComponent = ScriptGameObjectManager::instance().createScriptComponent(value);
- return scriptComponent->getManagedInstance();
- }
- else
- return nullptr;
- }
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataObject::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoObject)
- {
- auto objectTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoObject>(typeInfo);
- if(value != nullptr)
- {
- if(objectTypeInfo->mValueType)
- {
- MonoObject* managedInstance = value->getManagedInstance();
-
- if(managedInstance != nullptr)
- return mono_object_unbox(managedInstance); // Structs are passed as raw types because mono expects them as such
- }
- else
- return value->getManagedInstance();
- }
- return nullptr;
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataArray::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoArray)
- {
- auto objectTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoArray>(typeInfo);
- if(value != nullptr)
- return value->getManagedInstance();
- return nullptr;
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataList::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoList)
- {
- auto listTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoList>(typeInfo);
- if(value != nullptr)
- return value->getManagedInstance();
- return nullptr;
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- void* ScriptSerializableFieldDataDictionary::getValue(const ScriptSerializableTypeInfoPtr& typeInfo)
- {
- if(typeInfo->getTypeId() == TID_SerializableTypeInfoDictionary)
- {
- auto dictionaryTypeInfo = std::static_pointer_cast<ScriptSerializableTypeInfoDictionary>(typeInfo);
- if(value != nullptr)
- return value->getManagedInstance();
- return nullptr;
- }
- CM_EXCEPT(InvalidParametersException, "Requesting an invalid type in serializable field.");
- }
- RTTITypeBase* ScriptSerializableFieldKey::getRTTIStatic()
- {
- return ScriptSerializableFieldKeyRTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldKey::getRTTI() const
- {
- return ScriptSerializableFieldKey::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldData::getRTTIStatic()
- {
- return ScriptSerializableFieldDataRTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldData::getRTTI() const
- {
- return ScriptSerializableFieldData::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataEntry::getRTTIStatic()
- {
- return ScriptSerializableFieldDataEntryRTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataEntry::getRTTI() const
- {
- return ScriptSerializableFieldDataEntry::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataBool::getRTTIStatic()
- {
- return ScriptSerializableFieldDataBoolRTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataBool::getRTTI() const
- {
- return ScriptSerializableFieldDataBool::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataChar::getRTTIStatic()
- {
- return ScriptSerializableFieldDataCharRTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataChar::getRTTI() const
- {
- return ScriptSerializableFieldDataChar::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataI8::getRTTIStatic()
- {
- return ScriptSerializableFieldDataI8RTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataI8::getRTTI() const
- {
- return ScriptSerializableFieldDataI8::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataU8::getRTTIStatic()
- {
- return ScriptSerializableFieldDataU8RTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataU8::getRTTI() const
- {
- return ScriptSerializableFieldDataU8::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataI16::getRTTIStatic()
- {
- return ScriptSerializableFieldDataI16RTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataI16::getRTTI() const
- {
- return ScriptSerializableFieldDataI16::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataU16::getRTTIStatic()
- {
- return ScriptSerializableFieldDataU16RTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataU16::getRTTI() const
- {
- return ScriptSerializableFieldDataU16::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataI32::getRTTIStatic()
- {
- return ScriptSerializableFieldDataI32RTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataI32::getRTTI() const
- {
- return ScriptSerializableFieldDataI32::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataU32::getRTTIStatic()
- {
- return ScriptSerializableFieldDataU32RTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataU32::getRTTI() const
- {
- return ScriptSerializableFieldDataU32::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataI64::getRTTIStatic()
- {
- return ScriptSerializableFieldDataI64RTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataI64::getRTTI() const
- {
- return ScriptSerializableFieldDataI64::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataU64::getRTTIStatic()
- {
- return ScriptSerializableFieldDataU64RTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataU64::getRTTI() const
- {
- return ScriptSerializableFieldDataU64::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataFloat::getRTTIStatic()
- {
- return ScriptSerializableFieldDataFloatRTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataFloat::getRTTI() const
- {
- return ScriptSerializableFieldDataFloat::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataDouble::getRTTIStatic()
- {
- return ScriptSerializableFieldDataDoubleRTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataDouble::getRTTI() const
- {
- return ScriptSerializableFieldDataDouble::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataString::getRTTIStatic()
- {
- return ScriptSerializableFieldDataStringRTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataString::getRTTI() const
- {
- return ScriptSerializableFieldDataString::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataResourceRef::getRTTIStatic()
- {
- return ScriptSerializableFieldDataResourceRefRTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataResourceRef::getRTTI() const
- {
- return ScriptSerializableFieldDataResourceRef::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataGameObjectRef::getRTTIStatic()
- {
- return ScriptSerializableFieldDataGameObjectRefRTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataGameObjectRef::getRTTI() const
- {
- return ScriptSerializableFieldDataGameObjectRef::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataObject::getRTTIStatic()
- {
- return ScriptSerializableFieldDataObjectRTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataObject::getRTTI() const
- {
- return ScriptSerializableFieldDataObject::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataArray::getRTTIStatic()
- {
- return ScriptSerializableFieldDataArrayRTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataArray::getRTTI() const
- {
- return ScriptSerializableFieldDataArray::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataList::getRTTIStatic()
- {
- return ScriptSerializableFieldDataListRTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataList::getRTTI() const
- {
- return ScriptSerializableFieldDataList::getRTTIStatic();
- }
- RTTITypeBase* ScriptSerializableFieldDataDictionary::getRTTIStatic()
- {
- return ScriptSerializableFieldDataDictionaryRTTI::instance();
- }
- RTTITypeBase* ScriptSerializableFieldDataDictionary::getRTTI() const
- {
- return ScriptSerializableFieldDataDictionary::getRTTIStatic();
- }
- }
|