class MAGES::Interaction::BaseTransformProvider

Overview

Provides movement of an Interactable based on an Interactor. More…

class BaseTransformProvider: public MonoBehaviour
{
public:
    // properties

    IInteractable Interactable;

    // methods

    virtual void Attach(IInteractor interactor);
    virtual void Detach(IInteractor interactor);
    virtual void DetachCompletely();
    virtual bool IsAttachedTo(IInteractor interactor);
    virtual void Process(UpdatePhase updatePhase);
};

// direct descendants

class FixedJointTransformProvider;
class VelocityBasedTransformProvider;

Detailed Documentation

Provides movement of an Interactable based on an Interactor.

Properties

IInteractable Interactable

Gets or sets the interactable this transform provider must move.

Methods

virtual void Attach(IInteractor interactor)

Attach the object to the AttachedTransform.

Parameters:

interactor

The interactor to attach to.

virtual void Detach(IInteractor interactor)

Detach the interactable from the interactor.

Parameters:

interactor

The interactor to detach from.

virtual void DetachCompletely()

Detached completely from all interactors.

virtual bool IsAttachedTo(IInteractor interactor)

Gets if the Interactable is attached to the given interactor.

Parameters:

interactor

The interactor to check if the interactable is attached to.

Returns:

true if the interactable is attached to the interactor.

virtual void Process(UpdatePhase updatePhase)

Called by the master to update the TransformProvider in the given updatePhase.

Parameters:

updatePhase

The update phase this is called.