getImages method
override
Return a list of named images from a camera and metadata about the response.
const camera = new VIAM.CameraClient(machine, 'my_camera');
const images = await camera.getImages();
@example
final images = await camera.getImages(
filterSourceNames: ['color'],
extra: {},
);
@param filterSourceNames - A list of source names to filter the images by. If empty or undefined, all images will be returned. @param extra - Extra parameters to pass to the camera.
Implementation
@override
Future<GetImagesResult> getImages({
List<String>? filterSourceNames,
Map<String, dynamic>? extra,
}) async {
final request = GetImagesRequest()
..name = name
..extra = extra?.toStruct() ?? Struct();
if (filterSourceNames != null && filterSourceNames.isNotEmpty) {
request.filterSourceNames.addAll(filterSourceNames);
}
final response = await client.getImages(request, options: callOptions);
final images = response.images.map((image) {
final mimeType = MimeType.fromFormat(image.format);
final viamImage = ViamImage(image.image, mimeType);
return NamedImage(
sourceName: image.sourceName,
image: viamImage,
);
}).toList();
ResponseMetadata? nativeMetadata;
if (response.hasResponseMetadata()) {
nativeMetadata = ResponseMetadata(
capturedAt: response.responseMetadata.capturedAt.toDateTime(),
);
}
return GetImagesResult(
images: images,
metadata: nativeMetadata,
);
}