Interface Camera

Represents any physical hardware that can capture frames.

interface Camera {
    getGeometries: (extra?: Struct) => Promise<commonApi.Geometry[]>;
    getImages: (
        filterSourceNames?: string[],
        extra?: Struct,
    ) => Promise<{ images: NamedImage[]; metadata: ResponseMetadata }>;
    getPointCloud: (extra?: Struct) => Promise<Uint8Array>;
    getProperties: () => Promise<Properties>;
    name: string;
    doCommand(command: Struct): Promise<JsonValue>;
}

Hierarchy (View Summary)

Implemented by

Properties

getGeometries: (extra?: Struct) => Promise<commonApi.Geometry[]>

Get the geometries of the component in their current configuration

getImages: (
    filterSourceNames?: string[],
    extra?: Struct,
) => Promise<{ images: NamedImage[]; metadata: ResponseMetadata }>

Return a frame from a camera.

Type declaration

    • (
          filterSourceNames?: string[],
          extra?: Struct,
      ): Promise<{ images: NamedImage[]; metadata: ResponseMetadata }>
    • Parameters

      • OptionalfilterSourceNames: string[]

        A list of source names to filter the images by. If empty or undefined, all images will be returned.

      • Optionalextra: Struct

        Extra parameters to pass to the camera.

      Returns Promise<{ images: NamedImage[]; metadata: ResponseMetadata }>

const camera = new VIAM.CameraClient(machine, 'my_camera');
const images = await camera.getImages();

TODO(docs): include docs link for get images TS example

getPointCloud: (extra?: Struct) => Promise<Uint8Array>

Return a point cloud from a camera.

const camera = new VIAM.CameraClient(machine, 'my_camera');
const pointCloud = await camera.getPointCloud();

For more information, see Camera API.

getProperties: () => Promise<Properties>

Return the camera properties.

const camera = new VIAM.CameraClient(machine, 'my_camera');
const properties = await camera.getProperties();

For more information, see Camera API.

name: string

The name of the resource.

Methods

  • Send/Receive arbitrary commands to the resource.

    Parameters

    • command: Struct

      The command to execute.

    Returns Promise<JsonValue>

    import { Struct } from '@viamrobotics/sdk';

    const result = await resource.doCommand(
    Struct.fromJson({
    myCommand: { key: 'value' },
    })
    );