// Copyright (c) 2022 Boston Dynamics, Inc.  All rights reserved.
//
// Downloading, reproducing, distributing or otherwise using the SDK Software
// is subject to the terms and conditions of the Boston Dynamics Software
// Development Kit License (20191101-BDSDK-SL).

syntax = "proto3";

package bosdyn.api;

option java_outer_classname = "PointCloudServiceProto";

import "bosdyn/api/point_cloud.proto";

// The point cloud service provides access to one or more point cloud sources, for example
// from a lidar. It supports querying the list of available sources provided by the service
// and it supports requesting the latest point cloud data for each source by name.
service PointCloudService {
    // Obtain the list of PointCloudSources for this given service.
    // Note that there may be multiple PointCloudServices running, each with their own set of sources
    // The name field keys access to individual point clouds when calling GetPointCloud.
    rpc ListPointCloudSources(ListPointCloudSourcesRequest) returns (ListPointCloudSourcesResponse) {}

    // Request point clouds by source name.
    rpc GetPointCloud(GetPointCloudRequest) returns (GetPointCloudResponse) {}
}
