blob: 8343c342d55e38776bb74b4ab1c2a0f6e28feb28 [file] [log] [blame]
package android.car.telemetry;
import android.car.telemetry.ICarTelemetryServiceListener;
import android.car.telemetry.MetricsConfigKey;
/**
* Internal binder interface for {@code CarTelemetryService}, used by {@code CarTelemetryManager}.
*
* @hide
*/
interface ICarTelemetryService {
/**
* Registers a listener with CarTelemetryService for the service to send data to cloud app.
*/
void setListener(in ICarTelemetryServiceListener listener);
/**
* Clears the listener registered with CarTelemetryService.
*/
void clearListener();
/**
* Sends telemetry MetricsConfigs to CarTelemetryService.
*/
void addMetricsConfig(in MetricsConfigKey key, in byte[] metricsConfig);
/**
* Removes a MetricsConfig based on the key. This will also remove outputs produced by the
* MetricsConfig.
*/
void removeMetricsConfig(in MetricsConfigKey key);
/**
* Removes all MetricsConfigs. This will also remove all MetricsConfig outputs.
*/
void removeAllMetricsConfigs();
/**
* Sends script results or errors associated with the given key using the
* {@code ICarTelemetryServiceListener}.
*/
void sendFinishedReports(in MetricsConfigKey key);
/**
* Sends all script results or errors using the {@code ICarTelemetryServiceListener}.
*/
void sendAllFinishedReports();
}