Search Results for

    Show / Hide Table of Contents

    Class ScriptingObject

    Represents object from unmanaged memory that can use accessed via scripting.

    Inheritance
    Object
    ScriptingObject
    Inherited Members
    Object::DeleteObject(float timeToLive = 0.0f, bool useGameTime=false)
    Object::DeleteObjectNow()
    Object::Flags
    ScriptingObject
    Object::~Object()
    Assembly: FlaxEngine.dll
    File: Engine/Scripting/ScriptingObject.h
    Syntax
    public class ScriptingObject : public Object

    Constructors

    ~ScriptingObject()

    Finalizes an instance of the ScriptingObject class.

    Declaration
    public virtual ~ScriptingObject()

    ScriptingObject(const SpawnParams& params)

    Initializes a new instance of the ScriptingObject class.

    Declaration
    public ScriptingObject(const SpawnParams& params)
    Parameters
    SpawnParams params

    The object initialization parameters.

    Fields

    _gcHandle

    Declaration
    protected MGCHandle _gcHandle
    Field Value
    MGCHandle

    _id

    Declaration
    protected Guid _id
    Field Value
    Guid

    _type

    Declaration
    protected ScriptingTypeHandle _type
    Field Value
    ScriptingTypeHandle

    Deleted

    Event fired when object gets deleted.

    Declaration
    public Delegate<ScriptingObject* > Deleted
    Field Value
    Delegate<ScriptingObject >

    Methods

    CanCast(const MClass* from, const MClass* to)

    Checks if can cast one scripting object type into another type.

    Declaration
    public static bool CanCast(const MClass* from, const MClass* to)
    Parameters
    MClass from

    The object class for the cast.

    MClass to

    The destination class to the cast.

    Returns
    bool

    True if can, otherwise false.

    CanCast(const ScriptingTypeHandle& from, const ScriptingTypeHandle& to)

    Checks if can cast one scripting object type into another type.

    Declaration
    public static bool CanCast(const ScriptingTypeHandle& from, const ScriptingTypeHandle& to)
    Parameters
    ScriptingTypeHandle from

    The object type for the cast.

    ScriptingTypeHandle to

    The destination type to the cast.

    Returns
    bool

    True if can, otherwise false.

    Cast(ScriptingObject* obj)

    Declaration
    public static T* Cast(ScriptingObject* obj)
    Parameters
    ScriptingObject obj

    Returns
    T

    Type Parameters
    typename T

    ChangeID(const Guid& newId)

    Changes the object id (both managed and unmanaged). Warning! Use with caution as object ID is what it identifies it and change might cause issues.

    Declaration
    public virtual void ChangeID(const Guid& newId)
    Parameters
    Guid newId

    The new ID.

    CreateManaged()

    Declaration
    public virtual bool CreateManaged()
    Returns
    bool

    CreateManagedInternal()

    Create a new managed object.

    Declaration
    protected MObject* CreateManagedInternal()
    Returns
    MObject

    DestroyManaged()

    Declaration
    public virtual void DestroyManaged()

    FromInterface(T* interfaceObj)

    Declaration
    public static ScriptingObject* FromInterface(T* interfaceObj)
    Parameters
    T interfaceObj

    Returns
    ScriptingObject

    Type Parameters
    typename T

    FromInterface(void* interfaceObj, const ScriptingTypeHandle& interfaceType)

    Declaration
    public static ScriptingObject* FromInterface(void* interfaceObj, const ScriptingTypeHandle& interfaceType)
    Parameters
    void interfaceObj

    ScriptingTypeHandle interfaceType

    Returns
    ScriptingObject

    GetClass()

    Gets the type class of this object.

    Declaration
    public MClass* GetClass() const
    Returns
    MClass

    GetID()

    Gets the unique object ID.

    Declaration
    public Guid GetID() const
    Returns
    Guid

    GetManagedInstance()

    Gets the managed instance object.

    Declaration
    public MObject* GetManagedInstance() const
    Returns
    MObject

    GetOrCreateManagedInstance()

    Gets the managed instance object or creates it if missing.

    Declaration
    public MObject* GetOrCreateManagedInstance() const
    Returns
    MObject

    GetType()

    Gets the scripting type of this object.

    Declaration
    public ScriptingType GetType() const
    Returns
    ScriptingType

    GetTypeHandle()

    Gets the scripting type handle of this object.

    Declaration
    public ScriptingTypeHandle GetTypeHandle() const
    Returns
    ScriptingTypeHandle

    HasManagedInstance()

    Determines whether managed instance is alive.

    Declaration
    public bool HasManagedInstance() const
    Returns
    bool

    Is()

    Declaration
    public bool Is() const
    Returns
    bool

    Type Parameters
    typename T

    Is(const MClass* type)

    Declaration
    public bool Is(const MClass* type) const
    Parameters
    MClass type

    Returns
    bool

    Is(const ScriptingTypeHandle& type)

    Declaration
    public bool Is(const ScriptingTypeHandle& type) const
    Parameters
    ScriptingTypeHandle type

    Returns
    bool

    IsRegistered()

    Determines whether this object is registered or not (can be found by the queries and used in a game).

    Declaration
    public bool IsRegistered() const
    Returns
    bool

    NewObject()

    Declaration
    public static T* NewObject()
    Returns
    T

    Type Parameters
    typename T

    NewObject(const ScriptingTypeHandle& typeHandle)

    Declaration
    public static ScriptingObject* NewObject(const ScriptingTypeHandle& typeHandle)
    Parameters
    ScriptingTypeHandle typeHandle

    Returns
    ScriptingObject

    OnDeleteObject()

    Deletes the object. Called by the ObjectsRemovalService. Can be overriden to provide custom logic per object (cleanup, etc.).

    Declaration
    public virtual void OnDeleteObject() override
    Overrides
    Object::OnDeleteObject()

    OnManagedInstanceDeleted()

    Declaration
    public virtual void OnManagedInstanceDeleted()

    OnScriptingDispose()

    Declaration
    public virtual void OnScriptingDispose()

    RegisterObject()

    Registers the object (cannot be called when objects has been already registered).

    Declaration
    public void RegisterObject()

    SetManagedInstance(MObject* instance)

    Declaration
    public virtual void SetManagedInstance(MObject* instance)
    Parameters
    MObject instance

    ToInterface(ScriptingObject* obj)

    Declaration
    public static T* ToInterface(ScriptingObject* obj)
    Parameters
    ScriptingObject obj

    Returns
    T

    Type Parameters
    typename T

    ToInterface(ScriptingObject* obj, const ScriptingTypeHandle& interfaceType)

    Declaration
    public static void* ToInterface(ScriptingObject* obj, const ScriptingTypeHandle& interfaceType)
    Parameters
    ScriptingObject obj

    ScriptingTypeHandle interfaceType

    Returns
    void

    ToManaged(const ScriptingObject* obj)

    Declaration
    public static MObject* ToManaged(const ScriptingObject* obj)
    Parameters
    ScriptingObject obj

    Returns
    MObject

    ToNative(MObject* obj)

    Declaration
    public static ScriptingObject* ToNative(MObject* obj)
    Parameters
    MObject obj

    Returns
    ScriptingObject

    ToString()

    Gets the string representation of this object.

    Declaration
    public virtual String ToString() const override
    Returns
    String

    Overrides
    Object::ToString()

    UnregisterObject()

    Unregisters the object (cannot be called when objects has not been already registered).

    Declaration
    public void UnregisterObject()
    • Improve this Doc
    • View Source
    In This Article
    Back to top Copyright © 2012-2024 Wojciech Figat