Signal K
    Preparing search index...

    Interface RadarProviderMethods

    interface RadarProviderMethods {
        getRadarInfo: (radarId: string) => Promise<null | RadarInfo>;
        getRadars: () => Promise<string[]>;
        acquireTarget?: (
            radarId: string,
            bearing: number,
            distance: number,
        ) => Promise<{ success: boolean; error?: string; targetId?: number }>;
        cancelTarget?: (radarId: string, targetId: number) => Promise<boolean>;
        getArpaSettings?: (radarId: string) => Promise<null | ArpaSettings>;
        getCapabilities?: (radarId: string) => Promise<null | CapabilityManifest>;
        getControl?: (radarId: string, controlId: string) => Promise<any>;
        getState?: (radarId: string) => Promise<null | RadarState>;
        getTargets?: (radarId: string) => Promise<null | TargetListResponse>;
        handleStreamConnection?: (radarId: string, ws: WebSocket) => void;
        handleTargetStreamConnection?: (radarId: string, ws: WebSocket) => void;
        pluginId?: string;
        setArpaSettings?: (
            radarId: string,
            settings: Partial<ArpaSettings>,
        ) => Promise<{ success: boolean; error?: string }>;
        setControl?: (
            radarId: string,
            controlId: string,
            value: any,
        ) => Promise<{ success: boolean; error?: string }>;
        setControls?: (
            radarId: string,
            controls: Partial<RadarControls>,
        ) => Promise<boolean>;
        setGain?: (
            radarId: string,
            gain: { auto: boolean; value?: number },
        ) => Promise<boolean>;
        setPower?: (radarId: string, state: RadarStatus) => Promise<boolean>;
        setRain?: (
            radarId: string,
            rain: { auto: boolean; value?: number },
        ) => Promise<boolean>;
        setRange?: (radarId: string, range: number) => Promise<boolean>;
        setSea?: (
            radarId: string,
            sea: { auto: boolean; value?: number },
        ) => Promise<boolean>;
    }
    Index

    Properties

    getRadarInfo: (radarId: string) => Promise<null | RadarInfo>

    Get detailed info for a specific radar.

    Type declaration

    getRadars: () => Promise<string[]>

    Get list of radar IDs this provider manages.

    Type declaration

    acquireTarget?: (
        radarId: string,
        bearing: number,
        distance: number,
    ) => Promise<{ success: boolean; error?: string; targetId?: number }>

    Manually acquire a target at the specified position.

    Type declaration

      • (
            radarId: string,
            bearing: number,
            distance: number,
        ): Promise<{ success: boolean; error?: string; targetId?: number }>
      • Parameters

        • radarId: string

          The radar ID

        • bearing: number

          Bearing in degrees (0-360, true north)

        • distance: number

          Distance in meters

        Returns Promise<{ success: boolean; error?: string; targetId?: number }>

        Result with success flag and optional target ID

    cancelTarget?: (radarId: string, targetId: number) => Promise<boolean>

    Cancel tracking of a target.

    Type declaration

      • (radarId: string, targetId: number): Promise<boolean>
      • Parameters

        • radarId: string

          The radar ID

        • targetId: number

          The target ID to cancel

        Returns Promise<boolean>

        true on success

    getArpaSettings?: (radarId: string) => Promise<null | ArpaSettings>

    Get ARPA settings.

    Type declaration

    getCapabilities?: (radarId: string) => Promise<null | CapabilityManifest>

    Get capability manifest for a radar. Returns detailed capabilities including supported controls, ranges, features.

    Type declaration

    getControl?: (radarId: string, controlId: string) => Promise<any>

    Get a single control value.

    Type declaration

      • (radarId: string, controlId: string): Promise<any>
      • Parameters

        • radarId: string

          The radar ID

        • controlId: string

          The semantic control ID (e.g., "gain", "beamSharpening")

        Returns Promise<any>

        Control value or null if not found

    getState?: (radarId: string) => Promise<null | RadarState>

    Get current radar state. Returns status and all current control values.

    Type declaration

    getTargets?: (radarId: string) => Promise<null | TargetListResponse>

    Get all tracked ARPA targets.

    Type declaration

    handleStreamConnection?: (radarId: string, ws: WebSocket) => void

    Handle WebSocket stream connection (optional). Only needed if provider doesn't expose external streamUrl.

    Type declaration

      • (radarId: string, ws: WebSocket): void
      • Parameters

        • radarId: string

          The radar ID

        • ws: WebSocket

          WebSocket connection to send spoke data to

        Returns void

    handleTargetStreamConnection?: (radarId: string, ws: WebSocket) => void

    Handle WebSocket target stream connection. Streams target updates in real-time.

    Type declaration

      • (radarId: string, ws: WebSocket): void
      • Parameters

        • radarId: string

          The radar ID

        • ws: WebSocket

          WebSocket connection to send target updates to

        Returns void

    pluginId?: string

    Plugin ID (set automatically on registration)

    setArpaSettings?: (
        radarId: string,
        settings: Partial<ArpaSettings>,
    ) => Promise<{ success: boolean; error?: string }>

    Update ARPA settings.

    Type declaration

      • (
            radarId: string,
            settings: Partial<ArpaSettings>,
        ): Promise<{ success: boolean; error?: string }>
      • Parameters

        Returns Promise<{ success: boolean; error?: string }>

        Result with success flag and optional error

    setControl?: (
        radarId: string,
        controlId: string,
        value: any,
    ) => Promise<{ success: boolean; error?: string }>

    Set a single control value.

    Type declaration

      • (
            radarId: string,
            controlId: string,
            value: any,
        ): Promise<{ success: boolean; error?: string }>
      • Parameters

        • radarId: string

          The radar ID

        • controlId: string

          The semantic control ID (e.g., "gain", "beamSharpening")

        • value: any

          The value to set

        Returns Promise<{ success: boolean; error?: string }>

        Result with success flag and optional error

    setControls?: (
        radarId: string,
        controls: Partial<RadarControls>,
    ) => Promise<boolean>

    Set multiple radar controls at once.

    Type declaration

    setGain?: (
        radarId: string,
        gain: { auto: boolean; value?: number },
    ) => Promise<boolean>

    Set radar gain.

    Type declaration

      • (radarId: string, gain: { auto: boolean; value?: number }): Promise<boolean>
      • Parameters

        • radarId: string

          The radar ID

        • gain: { auto: boolean; value?: number }

          Gain settings

        Returns Promise<boolean>

        true on success

    setPower?: (radarId: string, state: RadarStatus) => Promise<boolean>

    Set radar power state.

    Type declaration

    setRain?: (
        radarId: string,
        rain: { auto: boolean; value?: number },
    ) => Promise<boolean>

    Set radar rain clutter.

    Type declaration

      • (radarId: string, rain: { auto: boolean; value?: number }): Promise<boolean>
      • Parameters

        • radarId: string

          The radar ID

        • rain: { auto: boolean; value?: number }

          Rain clutter settings

        Returns Promise<boolean>

        true on success

    setRange?: (radarId: string, range: number) => Promise<boolean>

    Set radar range in meters.

    Type declaration

      • (radarId: string, range: number): Promise<boolean>
      • Parameters

        • radarId: string

          The radar ID

        • range: number

          Range in meters

        Returns Promise<boolean>

        true on success

    setSea?: (
        radarId: string,
        sea: { auto: boolean; value?: number },
    ) => Promise<boolean>

    Set radar sea clutter.

    Type declaration

      • (radarId: string, sea: { auto: boolean; value?: number }): Promise<boolean>
      • Parameters

        • radarId: string

          The radar ID

        • sea: { auto: boolean; value?: number }

          Sea clutter settings

        Returns Promise<boolean>

        true on success