Skip to content

Myogestic.Remote.RemoteControl.RemoteControlBase

VHI_godot

Myogestic.Remote.RemoteControl

RemoteControl.RemoteControlBase Class

Base class for server-side implementations of RemoteControl

public abstract class RemoteControl.RemoteControlBase

Inheritance System.Object → RemoteControlBase

Derived
↳ VhiControlService

Methods

RemoteControl.RemoteControlBase.GetControlManifest(GetControlManifestRequest, ServerCallContext) Method

What can this target be told to do? Returns every control the target exports, with the semantics it declares for each. Call it first.

public virtual System.Threading.Tasks.Task<Myogestic.Remote.ControlManifest> GetControlManifest(Myogestic.Remote.GetControlManifestRequest request, Grpc.Core.ServerCallContext context);

RemoteControl.RemoteControlBase.GetRecordingSessionState(GetRecordingSessionStateRequest, ServerCallContext) Method

Session state, plus the movement names a trajectory may use.

public virtual System.Threading.Tasks.Task<Myogestic.Remote.RecordingSessionState> GetRecordingSessionState(Myogestic.Remote.GetRecordingSessionStateRequest request, Grpc.Core.ServerCallContext context);

RemoteControl.RemoteControlBase.SetControl(SetControlRequest, ServerCallContext) Method

Command one control frame. Intended for discrete DOFs and low-rate continuous updates; a per-tick continuous stream belongs on LSL.

public virtual System.Threading.Tasks.Task<Myogestic.Remote.ControlAck> SetControl(Myogestic.Remote.SetControlRequest request, Grpc.Core.ServerCallContext context);

RemoteControl.RemoteControlBase.SetPresentation(SetPresentationRequest, ServerCallContext) Method

Configure how the target *presents* transitions between commanded values. Appearance only — see SetPresentationRequest.

public virtual System.Threading.Tasks.Task<Myogestic.Remote.ControlAck> SetPresentation(Myogestic.Remote.SetPresentationRequest request, Grpc.Core.ServerCallContext context);

RemoteControl.RemoteControlBase.SetRecordingSession(SetRecordingSessionRequest, ServerCallContext) Method

Mark a recording session active or finished. While active, the target ignores its own local input so the recording has a single movement source.

public virtual System.Threading.Tasks.Task<Myogestic.Remote.RecordingAck> SetRecordingSession(Myogestic.Remote.SetRecordingSessionRequest request, Grpc.Core.ServerCallContext context);

RemoteControl.RemoteControlBase.StartRecordingTrajectory(StartRecordingTrajectoryRequest, ServerCallContext) Method

Start cycling the control rig through a movement, so the recorded pose stream sweeps a continuous range instead of snapping between held states. Refused if a trajectory is already running.

public virtual System.Threading.Tasks.Task<Myogestic.Remote.RecordingAck> StartRecordingTrajectory(Myogestic.Remote.StartRecordingTrajectoryRequest request, Grpc.Core.ServerCallContext context);

RemoteControl.RemoteControlBase.StopRecordingTrajectory(StopRecordingTrajectoryRequest, ServerCallContext) Method

Stop the trajectory. Rests the rig only if one was running.

public virtual System.Threading.Tasks.Task<Myogestic.Remote.RecordingAck> StopRecordingTrajectory(Myogestic.Remote.StopRecordingTrajectoryRequest request, Grpc.Core.ServerCallContext context);

RemoteControl.RemoteControlBase.SweepControl(SweepControlRequest, ServerCallContext) Method

Drive one DOF across its declared range and report what actually moved. The verification primitive: it answers "does this control move as its name claims, in the direction its name claims" without a human watching.

public virtual System.Threading.Tasks.Task<Myogestic.Remote.SweepControlReply> SweepControl(Myogestic.Remote.SweepControlRequest request, Grpc.Core.ServerCallContext context);