Myogestic.Remote.RemoteControl.RemoteControlBase
VHI_godot¶
Myogestic.Remote.RemoteControl¶
RemoteControl.RemoteControlBase Class¶
Base class for server-side implementations of RemoteControl
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.