The world rtti converter context tracks created objects and is capable of also handling components / game objects. Used by the plIPCObjectMirror to create / destroy objects.
More...
|
| virtual void | Clear () override |
| |
|
void | DeleteExistingObjects () |
| |
| virtual plInternal::NewInstance< void > | CreateObject (const plUuid &guid, const plRTTI *pRtti) override |
| |
| virtual void | DeleteObject (const plUuid &guid) override |
| |
| virtual void | RegisterObject (const plUuid &guid, const plRTTI *pRtti, void *pObject) override |
| |
| virtual void | UnregisterObject (const plUuid &guid) override |
| |
| virtual plRttiConverterObject | GetObjectByGUID (const plUuid &guid) const override |
| |
| virtual plUuid | GetObjectGUID (const plRTTI *pRtti, const void *pObject) const override |
| |
| virtual void | OnUnknownTypeError (plStringView sTypeName) override |
| |
| virtual plUuid | GenerateObjectGuid (const plUuid &parentGuid, const plAbstractProperty *pProp, plVariant index, void *pObject) const |
| | Generates a guid for a new object. Default implementation generates stable guids derived from parentGuid + property name + index and ignores the address of pObject.
|
| |
|
virtual const plRTTI * | FindTypeByName (plStringView sName) const |
| |
|
template<typename T > |
| void | GetObjectsByType (plDynamicArray< T * > &out_objects, plDynamicArray< plUuid > *out_pUuids=nullptr) |
| |
|
virtual plUuid | EnqueObject (const plUuid &guid, const plRTTI *pRtti, void *pObject) |
| |
|
virtual plRttiConverterObject | DequeueObject () |
| |
The world rtti converter context tracks created objects and is capable of also handling components / game objects. Used by the plIPCObjectMirror to create / destroy objects.
Atm it does not remove owner ptr when a parent is deleted, so it will accumulate zombie entries. As requests to dead objects shouldn't generally happen this is for the time being not a problem.