From 4742fde5c48726357cc8db06d237e9db6c3df608 Mon Sep 17 00:00:00 2001 From: Scott Murray Date: Sun, 31 Dec 2023 16:24:51 -0500 Subject: Initial radio implementation Notable changes: - Add radio gRPC API protobuf definitation and generated files. - Reworked existing single gRPC APIs library to split it into per-API libraries to avoid name collision issues. - Add radio gRPC client class and associated radio state class and RiverPod providers. - Split media controls and play list table classes into media player and radio specific versions to facilitate customization and wiring up their appropriate backends in a straightforward fashion. Some potential rationalization of styling widgets may be done as a follow up to avoid some duplication. - Added radio configuration and presets loading. The presets will be populated with the contents of a radio-presets.yaml file from the configured location, the default location is the /etc/xdg/AGL/ics-homescreen directory. - Implemented FM radio player against the radio gRPC API. For the sake of expediency, no attempt has been made to make the player able to handle AM band support. - Reworked media page navigation state so that active player is restored when coming back to the page. Logic has been added to start/stop the radio on navigating to or leaving the FM radio sub-page. This will potentially be reworked before CES to work with the pause/stop button present on the other pages. - Started pruning down global exports.dart a bit to remove files only used in a specific page/hierarchy, starting with media. Bug-AGL: SPEC-5029 Change-Id: I1ae0aca4a7a8218e69e4286c863f01509a1cccb7 Signed-off-by: Scott Murray --- protos/lib/agl-shell-api.dart | 8 + protos/lib/applauncher-api.dart | 8 + protos/lib/protos.dart | 32 - protos/lib/radio-api.dart | 8 + protos/lib/src/generated/radio.pb.dart | 1904 ++++++++++++++++++++++++++++ protos/lib/src/generated/radio.pbenum.dart | 70 + protos/lib/src/generated/radio.pbgrpc.dart | 359 ++++++ protos/lib/src/generated/radio.pbjson.dart | 509 ++++++++ protos/lib/src/generated/todo.pb.dart | 146 --- protos/lib/src/generated/todo.pbenum.dart | 11 - protos/lib/src/generated/todo.pbgrpc.dart | 79 -- protos/lib/src/generated/todo.pbjson.dart | 42 - protos/lib/val-api.dart | 16 + protos/protos/radio.proto | 205 +++ protos/protos/todo.proto | 16 - 15 files changed, 3087 insertions(+), 326 deletions(-) create mode 100644 protos/lib/agl-shell-api.dart create mode 100644 protos/lib/applauncher-api.dart delete mode 100644 protos/lib/protos.dart create mode 100644 protos/lib/radio-api.dart create mode 100644 protos/lib/src/generated/radio.pb.dart create mode 100644 protos/lib/src/generated/radio.pbenum.dart create mode 100644 protos/lib/src/generated/radio.pbgrpc.dart create mode 100644 protos/lib/src/generated/radio.pbjson.dart delete mode 100644 protos/lib/src/generated/todo.pb.dart delete mode 100644 protos/lib/src/generated/todo.pbenum.dart delete mode 100644 protos/lib/src/generated/todo.pbgrpc.dart delete mode 100644 protos/lib/src/generated/todo.pbjson.dart create mode 100644 protos/lib/val-api.dart create mode 100644 protos/protos/radio.proto delete mode 100644 protos/protos/todo.proto (limited to 'protos') diff --git a/protos/lib/agl-shell-api.dart b/protos/lib/agl-shell-api.dart new file mode 100644 index 0000000..af19dc6 --- /dev/null +++ b/protos/lib/agl-shell-api.dart @@ -0,0 +1,8 @@ +library agl_shell_api; + +export 'src/generated/agl_shell.pb.dart'; +export 'src/generated/agl_shell.pbenum.dart'; +export 'src/generated/agl_shell.pbgrpc.dart'; +export 'src/generated/agl_shell.pbjson.dart'; + +export 'package:grpc/grpc.dart'; diff --git a/protos/lib/applauncher-api.dart b/protos/lib/applauncher-api.dart new file mode 100644 index 0000000..fdb181e --- /dev/null +++ b/protos/lib/applauncher-api.dart @@ -0,0 +1,8 @@ +library applauncher_api; + +export 'src/generated/applauncher.pb.dart'; +export 'src/generated/applauncher.pbenum.dart'; +export 'src/generated/applauncher.pbgrpc.dart'; +export 'src/generated/applauncher.pbjson.dart'; + +export 'package:grpc/grpc.dart'; diff --git a/protos/lib/protos.dart b/protos/lib/protos.dart deleted file mode 100644 index e3b0568..0000000 --- a/protos/lib/protos.dart +++ /dev/null @@ -1,32 +0,0 @@ - -library protos; - -export 'src/generated/todo.pb.dart'; -export 'src/generated/todo.pbenum.dart'; -export 'src/generated/todo.pbgrpc.dart'; -export 'src/generated/todo.pbjson.dart'; - -export 'src/generated/google/protobuf/timestamp.pb.dart'; -export 'src/generated/google/protobuf/timestamp.pbenum.dart'; -export 'src/generated/google/protobuf/timestamp.pbjson.dart'; - -export 'src/generated/kuksa/val/v1/types.pb.dart'; -export 'src/generated/kuksa/val/v1/types.pbenum.dart'; -export 'src/generated/kuksa/val/v1/types.pbjson.dart'; - -export 'src/generated/kuksa/val/v1/val.pb.dart'; -export 'src/generated/kuksa/val/v1/val.pbenum.dart'; -export 'src/generated/kuksa/val/v1/val.pbjson.dart'; -export 'src/generated/kuksa/val/v1/val.pbgrpc.dart'; - -export 'src/generated/agl_shell.pb.dart'; -export 'src/generated/agl_shell.pbenum.dart'; -export 'src/generated/agl_shell.pbgrpc.dart'; -export 'src/generated/agl_shell.pbjson.dart'; - -export 'src/generated/applauncher.pb.dart'; -export 'src/generated/applauncher.pbenum.dart'; -export 'src/generated/applauncher.pbgrpc.dart'; -export 'src/generated/applauncher.pbjson.dart'; - -export 'package:grpc/grpc.dart'; diff --git a/protos/lib/radio-api.dart b/protos/lib/radio-api.dart new file mode 100644 index 0000000..1b12e91 --- /dev/null +++ b/protos/lib/radio-api.dart @@ -0,0 +1,8 @@ +library radio_api; + +export 'src/generated/radio.pb.dart'; +export 'src/generated/radio.pbenum.dart'; +export 'src/generated/radio.pbgrpc.dart'; +export 'src/generated/radio.pbjson.dart'; + +export 'package:grpc/grpc.dart'; diff --git a/protos/lib/src/generated/radio.pb.dart b/protos/lib/src/generated/radio.pb.dart new file mode 100644 index 0000000..da3d1a8 --- /dev/null +++ b/protos/lib/src/generated/radio.pb.dart @@ -0,0 +1,1904 @@ +// +// Generated code. Do not modify. +// source: radio.proto +// +// @dart = 2.12 + +// ignore_for_file: annotate_overrides, camel_case_types, comment_references +// ignore_for_file: constant_identifier_names, library_prefixes +// ignore_for_file: non_constant_identifier_names, prefer_final_fields +// ignore_for_file: unnecessary_import, unnecessary_this, unused_import + +import 'dart:core' as $core; + +import 'package:protobuf/protobuf.dart' as $pb; + +import 'radio.pbenum.dart'; + +export 'radio.pbenum.dart'; + +class GetFrequencyRequest extends $pb.GeneratedMessage { + factory GetFrequencyRequest() => create(); + GetFrequencyRequest._() : super(); + factory GetFrequencyRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory GetFrequencyRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetFrequencyRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + GetFrequencyRequest clone() => GetFrequencyRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + GetFrequencyRequest copyWith(void Function(GetFrequencyRequest) updates) => super.copyWith((message) => updates(message as GetFrequencyRequest)) as GetFrequencyRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static GetFrequencyRequest create() => GetFrequencyRequest._(); + GetFrequencyRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static GetFrequencyRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static GetFrequencyRequest? _defaultInstance; +} + +class GetFrequencyResponse extends $pb.GeneratedMessage { + factory GetFrequencyResponse({ + $core.int? frequency, + }) { + final $result = create(); + if (frequency != null) { + $result.frequency = frequency; + } + return $result; + } + GetFrequencyResponse._() : super(); + factory GetFrequencyResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory GetFrequencyResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetFrequencyResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..a<$core.int>(1, _omitFieldNames ? '' : 'frequency', $pb.PbFieldType.OU3) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + GetFrequencyResponse clone() => GetFrequencyResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + GetFrequencyResponse copyWith(void Function(GetFrequencyResponse) updates) => super.copyWith((message) => updates(message as GetFrequencyResponse)) as GetFrequencyResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static GetFrequencyResponse create() => GetFrequencyResponse._(); + GetFrequencyResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static GetFrequencyResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static GetFrequencyResponse? _defaultInstance; + + @$pb.TagNumber(1) + $core.int get frequency => $_getIZ(0); + @$pb.TagNumber(1) + set frequency($core.int v) { $_setUnsignedInt32(0, v); } + @$pb.TagNumber(1) + $core.bool hasFrequency() => $_has(0); + @$pb.TagNumber(1) + void clearFrequency() => clearField(1); +} + +class SetFrequencyRequest extends $pb.GeneratedMessage { + factory SetFrequencyRequest({ + $core.int? frequency, + }) { + final $result = create(); + if (frequency != null) { + $result.frequency = frequency; + } + return $result; + } + SetFrequencyRequest._() : super(); + factory SetFrequencyRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory SetFrequencyRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'SetFrequencyRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..a<$core.int>(1, _omitFieldNames ? '' : 'frequency', $pb.PbFieldType.OU3) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + SetFrequencyRequest clone() => SetFrequencyRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + SetFrequencyRequest copyWith(void Function(SetFrequencyRequest) updates) => super.copyWith((message) => updates(message as SetFrequencyRequest)) as SetFrequencyRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static SetFrequencyRequest create() => SetFrequencyRequest._(); + SetFrequencyRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static SetFrequencyRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static SetFrequencyRequest? _defaultInstance; + + @$pb.TagNumber(1) + $core.int get frequency => $_getIZ(0); + @$pb.TagNumber(1) + set frequency($core.int v) { $_setUnsignedInt32(0, v); } + @$pb.TagNumber(1) + $core.bool hasFrequency() => $_has(0); + @$pb.TagNumber(1) + void clearFrequency() => clearField(1); +} + +class SetFrequencyResponse extends $pb.GeneratedMessage { + factory SetFrequencyResponse({ + $core.int? frequency, + }) { + final $result = create(); + if (frequency != null) { + $result.frequency = frequency; + } + return $result; + } + SetFrequencyResponse._() : super(); + factory SetFrequencyResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory SetFrequencyResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'SetFrequencyResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..a<$core.int>(1, _omitFieldNames ? '' : 'frequency', $pb.PbFieldType.OU3) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + SetFrequencyResponse clone() => SetFrequencyResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + SetFrequencyResponse copyWith(void Function(SetFrequencyResponse) updates) => super.copyWith((message) => updates(message as SetFrequencyResponse)) as SetFrequencyResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static SetFrequencyResponse create() => SetFrequencyResponse._(); + SetFrequencyResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static SetFrequencyResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static SetFrequencyResponse? _defaultInstance; + + @$pb.TagNumber(1) + $core.int get frequency => $_getIZ(0); + @$pb.TagNumber(1) + set frequency($core.int v) { $_setUnsignedInt32(0, v); } + @$pb.TagNumber(1) + $core.bool hasFrequency() => $_has(0); + @$pb.TagNumber(1) + void clearFrequency() => clearField(1); +} + +class GetBandRequest extends $pb.GeneratedMessage { + factory GetBandRequest() => create(); + GetBandRequest._() : super(); + factory GetBandRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory GetBandRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetBandRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + GetBandRequest clone() => GetBandRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + GetBandRequest copyWith(void Function(GetBandRequest) updates) => super.copyWith((message) => updates(message as GetBandRequest)) as GetBandRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static GetBandRequest create() => GetBandRequest._(); + GetBandRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static GetBandRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static GetBandRequest? _defaultInstance; +} + +class GetBandResponse extends $pb.GeneratedMessage { + factory GetBandResponse({ + Band? band, + }) { + final $result = create(); + if (band != null) { + $result.band = band; + } + return $result; + } + GetBandResponse._() : super(); + factory GetBandResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory GetBandResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetBandResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..e(1, _omitFieldNames ? '' : 'band', $pb.PbFieldType.OE, defaultOrMaker: Band.BAND_UNSPECIFIED, valueOf: Band.valueOf, enumValues: Band.values) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + GetBandResponse clone() => GetBandResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + GetBandResponse copyWith(void Function(GetBandResponse) updates) => super.copyWith((message) => updates(message as GetBandResponse)) as GetBandResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static GetBandResponse create() => GetBandResponse._(); + GetBandResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static GetBandResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static GetBandResponse? _defaultInstance; + + @$pb.TagNumber(1) + Band get band => $_getN(0); + @$pb.TagNumber(1) + set band(Band v) { setField(1, v); } + @$pb.TagNumber(1) + $core.bool hasBand() => $_has(0); + @$pb.TagNumber(1) + void clearBand() => clearField(1); +} + +class SetBandRequest extends $pb.GeneratedMessage { + factory SetBandRequest({ + Band? band, + }) { + final $result = create(); + if (band != null) { + $result.band = band; + } + return $result; + } + SetBandRequest._() : super(); + factory SetBandRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory SetBandRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'SetBandRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..e(1, _omitFieldNames ? '' : 'band', $pb.PbFieldType.OE, defaultOrMaker: Band.BAND_UNSPECIFIED, valueOf: Band.valueOf, enumValues: Band.values) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + SetBandRequest clone() => SetBandRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + SetBandRequest copyWith(void Function(SetBandRequest) updates) => super.copyWith((message) => updates(message as SetBandRequest)) as SetBandRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static SetBandRequest create() => SetBandRequest._(); + SetBandRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static SetBandRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static SetBandRequest? _defaultInstance; + + @$pb.TagNumber(1) + Band get band => $_getN(0); + @$pb.TagNumber(1) + set band(Band v) { setField(1, v); } + @$pb.TagNumber(1) + $core.bool hasBand() => $_has(0); + @$pb.TagNumber(1) + void clearBand() => clearField(1); +} + +class SetBandResponse extends $pb.GeneratedMessage { + factory SetBandResponse({ + Band? band, + }) { + final $result = create(); + if (band != null) { + $result.band = band; + } + return $result; + } + SetBandResponse._() : super(); + factory SetBandResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory SetBandResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'SetBandResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..e(1, _omitFieldNames ? '' : 'band', $pb.PbFieldType.OE, defaultOrMaker: Band.BAND_UNSPECIFIED, valueOf: Band.valueOf, enumValues: Band.values) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + SetBandResponse clone() => SetBandResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + SetBandResponse copyWith(void Function(SetBandResponse) updates) => super.copyWith((message) => updates(message as SetBandResponse)) as SetBandResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static SetBandResponse create() => SetBandResponse._(); + SetBandResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static SetBandResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static SetBandResponse? _defaultInstance; + + @$pb.TagNumber(1) + Band get band => $_getN(0); + @$pb.TagNumber(1) + set band(Band v) { setField(1, v); } + @$pb.TagNumber(1) + $core.bool hasBand() => $_has(0); + @$pb.TagNumber(1) + void clearBand() => clearField(1); +} + +class GetBandSupportedRequest extends $pb.GeneratedMessage { + factory GetBandSupportedRequest({ + Band? band, + }) { + final $result = create(); + if (band != null) { + $result.band = band; + } + return $result; + } + GetBandSupportedRequest._() : super(); + factory GetBandSupportedRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory GetBandSupportedRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetBandSupportedRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..e(1, _omitFieldNames ? '' : 'band', $pb.PbFieldType.OE, defaultOrMaker: Band.BAND_UNSPECIFIED, valueOf: Band.valueOf, enumValues: Band.values) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + GetBandSupportedRequest clone() => GetBandSupportedRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + GetBandSupportedRequest copyWith(void Function(GetBandSupportedRequest) updates) => super.copyWith((message) => updates(message as GetBandSupportedRequest)) as GetBandSupportedRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static GetBandSupportedRequest create() => GetBandSupportedRequest._(); + GetBandSupportedRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static GetBandSupportedRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static GetBandSupportedRequest? _defaultInstance; + + @$pb.TagNumber(1) + Band get band => $_getN(0); + @$pb.TagNumber(1) + set band(Band v) { setField(1, v); } + @$pb.TagNumber(1) + $core.bool hasBand() => $_has(0); + @$pb.TagNumber(1) + void clearBand() => clearField(1); +} + +class GetBandSupportedResponse extends $pb.GeneratedMessage { + factory GetBandSupportedResponse({ + $core.bool? supported, + }) { + final $result = create(); + if (supported != null) { + $result.supported = supported; + } + return $result; + } + GetBandSupportedResponse._() : super(); + factory GetBandSupportedResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory GetBandSupportedResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetBandSupportedResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..aOB(1, _omitFieldNames ? '' : 'supported') + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + GetBandSupportedResponse clone() => GetBandSupportedResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + GetBandSupportedResponse copyWith(void Function(GetBandSupportedResponse) updates) => super.copyWith((message) => updates(message as GetBandSupportedResponse)) as GetBandSupportedResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static GetBandSupportedResponse create() => GetBandSupportedResponse._(); + GetBandSupportedResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static GetBandSupportedResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static GetBandSupportedResponse? _defaultInstance; + + @$pb.TagNumber(1) + $core.bool get supported => $_getBF(0); + @$pb.TagNumber(1) + set supported($core.bool v) { $_setBool(0, v); } + @$pb.TagNumber(1) + $core.bool hasSupported() => $_has(0); + @$pb.TagNumber(1) + void clearSupported() => clearField(1); +} + +class GetBandParametersRequest extends $pb.GeneratedMessage { + factory GetBandParametersRequest({ + Band? band, + }) { + final $result = create(); + if (band != null) { + $result.band = band; + } + return $result; + } + GetBandParametersRequest._() : super(); + factory GetBandParametersRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory GetBandParametersRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetBandParametersRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..e(1, _omitFieldNames ? '' : 'band', $pb.PbFieldType.OE, defaultOrMaker: Band.BAND_UNSPECIFIED, valueOf: Band.valueOf, enumValues: Band.values) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + GetBandParametersRequest clone() => GetBandParametersRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + GetBandParametersRequest copyWith(void Function(GetBandParametersRequest) updates) => super.copyWith((message) => updates(message as GetBandParametersRequest)) as GetBandParametersRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static GetBandParametersRequest create() => GetBandParametersRequest._(); + GetBandParametersRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static GetBandParametersRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static GetBandParametersRequest? _defaultInstance; + + @$pb.TagNumber(1) + Band get band => $_getN(0); + @$pb.TagNumber(1) + set band(Band v) { setField(1, v); } + @$pb.TagNumber(1) + $core.bool hasBand() => $_has(0); + @$pb.TagNumber(1) + void clearBand() => clearField(1); +} + +class GetBandParametersResponse extends $pb.GeneratedMessage { + factory GetBandParametersResponse({ + $core.int? min, + $core.int? max, + $core.int? step, + }) { + final $result = create(); + if (min != null) { + $result.min = min; + } + if (max != null) { + $result.max = max; + } + if (step != null) { + $result.step = step; + } + return $result; + } + GetBandParametersResponse._() : super(); + factory GetBandParametersResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory GetBandParametersResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetBandParametersResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..a<$core.int>(1, _omitFieldNames ? '' : 'min', $pb.PbFieldType.OU3) + ..a<$core.int>(2, _omitFieldNames ? '' : 'max', $pb.PbFieldType.OU3) + ..a<$core.int>(3, _omitFieldNames ? '' : 'step', $pb.PbFieldType.OU3) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + GetBandParametersResponse clone() => GetBandParametersResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + GetBandParametersResponse copyWith(void Function(GetBandParametersResponse) updates) => super.copyWith((message) => updates(message as GetBandParametersResponse)) as GetBandParametersResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static GetBandParametersResponse create() => GetBandParametersResponse._(); + GetBandParametersResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static GetBandParametersResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static GetBandParametersResponse? _defaultInstance; + + @$pb.TagNumber(1) + $core.int get min => $_getIZ(0); + @$pb.TagNumber(1) + set min($core.int v) { $_setUnsignedInt32(0, v); } + @$pb.TagNumber(1) + $core.bool hasMin() => $_has(0); + @$pb.TagNumber(1) + void clearMin() => clearField(1); + + @$pb.TagNumber(2) + $core.int get max => $_getIZ(1); + @$pb.TagNumber(2) + set max($core.int v) { $_setUnsignedInt32(1, v); } + @$pb.TagNumber(2) + $core.bool hasMax() => $_has(1); + @$pb.TagNumber(2) + void clearMax() => clearField(2); + + @$pb.TagNumber(3) + $core.int get step => $_getIZ(2); + @$pb.TagNumber(3) + set step($core.int v) { $_setUnsignedInt32(2, v); } + @$pb.TagNumber(3) + $core.bool hasStep() => $_has(2); + @$pb.TagNumber(3) + void clearStep() => clearField(3); +} + +class GetStereoModeRequest extends $pb.GeneratedMessage { + factory GetStereoModeRequest() => create(); + GetStereoModeRequest._() : super(); + factory GetStereoModeRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory GetStereoModeRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetStereoModeRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + GetStereoModeRequest clone() => GetStereoModeRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + GetStereoModeRequest copyWith(void Function(GetStereoModeRequest) updates) => super.copyWith((message) => updates(message as GetStereoModeRequest)) as GetStereoModeRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static GetStereoModeRequest create() => GetStereoModeRequest._(); + GetStereoModeRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static GetStereoModeRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static GetStereoModeRequest? _defaultInstance; +} + +class GetStereoModeResponse extends $pb.GeneratedMessage { + factory GetStereoModeResponse({ + StereoMode? mode, + }) { + final $result = create(); + if (mode != null) { + $result.mode = mode; + } + return $result; + } + GetStereoModeResponse._() : super(); + factory GetStereoModeResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory GetStereoModeResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetStereoModeResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..e(1, _omitFieldNames ? '' : 'mode', $pb.PbFieldType.OE, defaultOrMaker: StereoMode.STEREO_MODE_UNSPECIFIED, valueOf: StereoMode.valueOf, enumValues: StereoMode.values) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + GetStereoModeResponse clone() => GetStereoModeResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + GetStereoModeResponse copyWith(void Function(GetStereoModeResponse) updates) => super.copyWith((message) => updates(message as GetStereoModeResponse)) as GetStereoModeResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static GetStereoModeResponse create() => GetStereoModeResponse._(); + GetStereoModeResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static GetStereoModeResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static GetStereoModeResponse? _defaultInstance; + + @$pb.TagNumber(1) + StereoMode get mode => $_getN(0); + @$pb.TagNumber(1) + set mode(StereoMode v) { setField(1, v); } + @$pb.TagNumber(1) + $core.bool hasMode() => $_has(0); + @$pb.TagNumber(1) + void clearMode() => clearField(1); +} + +class SetStereoModeRequest extends $pb.GeneratedMessage { + factory SetStereoModeRequest({ + StereoMode? mode, + }) { + final $result = create(); + if (mode != null) { + $result.mode = mode; + } + return $result; + } + SetStereoModeRequest._() : super(); + factory SetStereoModeRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory SetStereoModeRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'SetStereoModeRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..e(1, _omitFieldNames ? '' : 'mode', $pb.PbFieldType.OE, defaultOrMaker: StereoMode.STEREO_MODE_UNSPECIFIED, valueOf: StereoMode.valueOf, enumValues: StereoMode.values) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + SetStereoModeRequest clone() => SetStereoModeRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + SetStereoModeRequest copyWith(void Function(SetStereoModeRequest) updates) => super.copyWith((message) => updates(message as SetStereoModeRequest)) as SetStereoModeRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static SetStereoModeRequest create() => SetStereoModeRequest._(); + SetStereoModeRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static SetStereoModeRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static SetStereoModeRequest? _defaultInstance; + + @$pb.TagNumber(1) + StereoMode get mode => $_getN(0); + @$pb.TagNumber(1) + set mode(StereoMode v) { setField(1, v); } + @$pb.TagNumber(1) + $core.bool hasMode() => $_has(0); + @$pb.TagNumber(1) + void clearMode() => clearField(1); +} + +class SetStereoModeResponse extends $pb.GeneratedMessage { + factory SetStereoModeResponse({ + StereoMode? mode, + }) { + final $result = create(); + if (mode != null) { + $result.mode = mode; + } + return $result; + } + SetStereoModeResponse._() : super(); + factory SetStereoModeResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory SetStereoModeResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'SetStereoModeResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..e(1, _omitFieldNames ? '' : 'mode', $pb.PbFieldType.OE, defaultOrMaker: StereoMode.STEREO_MODE_UNSPECIFIED, valueOf: StereoMode.valueOf, enumValues: StereoMode.values) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + SetStereoModeResponse clone() => SetStereoModeResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + SetStereoModeResponse copyWith(void Function(SetStereoModeResponse) updates) => super.copyWith((message) => updates(message as SetStereoModeResponse)) as SetStereoModeResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static SetStereoModeResponse create() => SetStereoModeResponse._(); + SetStereoModeResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static SetStereoModeResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static SetStereoModeResponse? _defaultInstance; + + @$pb.TagNumber(1) + StereoMode get mode => $_getN(0); + @$pb.TagNumber(1) + set mode(StereoMode v) { setField(1, v); } + @$pb.TagNumber(1) + $core.bool hasMode() => $_has(0); + @$pb.TagNumber(1) + void clearMode() => clearField(1); +} + +class StartRequest extends $pb.GeneratedMessage { + factory StartRequest() => create(); + StartRequest._() : super(); + factory StartRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory StartRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'StartRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + StartRequest clone() => StartRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + StartRequest copyWith(void Function(StartRequest) updates) => super.copyWith((message) => updates(message as StartRequest)) as StartRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static StartRequest create() => StartRequest._(); + StartRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static StartRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static StartRequest? _defaultInstance; +} + +class StartResponse extends $pb.GeneratedMessage { + factory StartResponse() => create(); + StartResponse._() : super(); + factory StartResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory StartResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'StartResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + StartResponse clone() => StartResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + StartResponse copyWith(void Function(StartResponse) updates) => super.copyWith((message) => updates(message as StartResponse)) as StartResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static StartResponse create() => StartResponse._(); + StartResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static StartResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static StartResponse? _defaultInstance; +} + +class StopRequest extends $pb.GeneratedMessage { + factory StopRequest() => create(); + StopRequest._() : super(); + factory StopRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory StopRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'StopRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + StopRequest clone() => StopRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + StopRequest copyWith(void Function(StopRequest) updates) => super.copyWith((message) => updates(message as StopRequest)) as StopRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static StopRequest create() => StopRequest._(); + StopRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static StopRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static StopRequest? _defaultInstance; +} + +class StopResponse extends $pb.GeneratedMessage { + factory StopResponse() => create(); + StopResponse._() : super(); + factory StopResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory StopResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'StopResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + StopResponse clone() => StopResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + StopResponse copyWith(void Function(StopResponse) updates) => super.copyWith((message) => updates(message as StopResponse)) as StopResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static StopResponse create() => StopResponse._(); + StopResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static StopResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static StopResponse? _defaultInstance; +} + +class ScanStartRequest extends $pb.GeneratedMessage { + factory ScanStartRequest({ + ScanDirection? direction, + }) { + final $result = create(); + if (direction != null) { + $result.direction = direction; + } + return $result; + } + ScanStartRequest._() : super(); + factory ScanStartRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory ScanStartRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ScanStartRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..e(1, _omitFieldNames ? '' : 'direction', $pb.PbFieldType.OE, defaultOrMaker: ScanDirection.SCAN_DIRECTION_UNSPECIFIED, valueOf: ScanDirection.valueOf, enumValues: ScanDirection.values) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + ScanStartRequest clone() => ScanStartRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + ScanStartRequest copyWith(void Function(ScanStartRequest) updates) => super.copyWith((message) => updates(message as ScanStartRequest)) as ScanStartRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static ScanStartRequest create() => ScanStartRequest._(); + ScanStartRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static ScanStartRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static ScanStartRequest? _defaultInstance; + + @$pb.TagNumber(1) + ScanDirection get direction => $_getN(0); + @$pb.TagNumber(1) + set direction(ScanDirection v) { setField(1, v); } + @$pb.TagNumber(1) + $core.bool hasDirection() => $_has(0); + @$pb.TagNumber(1) + void clearDirection() => clearField(1); +} + +class ScanStartResponse extends $pb.GeneratedMessage { + factory ScanStartResponse() => create(); + ScanStartResponse._() : super(); + factory ScanStartResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory ScanStartResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ScanStartResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + ScanStartResponse clone() => ScanStartResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + ScanStartResponse copyWith(void Function(ScanStartResponse) updates) => super.copyWith((message) => updates(message as ScanStartResponse)) as ScanStartResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static ScanStartResponse create() => ScanStartResponse._(); + ScanStartResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static ScanStartResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static ScanStartResponse? _defaultInstance; +} + +class ScanStopRequest extends $pb.GeneratedMessage { + factory ScanStopRequest() => create(); + ScanStopRequest._() : super(); + factory ScanStopRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory ScanStopRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ScanStopRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + ScanStopRequest clone() => ScanStopRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + ScanStopRequest copyWith(void Function(ScanStopRequest) updates) => super.copyWith((message) => updates(message as ScanStopRequest)) as ScanStopRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static ScanStopRequest create() => ScanStopRequest._(); + ScanStopRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static ScanStopRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static ScanStopRequest? _defaultInstance; +} + +class ScanStopResponse extends $pb.GeneratedMessage { + factory ScanStopResponse() => create(); + ScanStopResponse._() : super(); + factory ScanStopResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory ScanStopResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ScanStopResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + ScanStopResponse clone() => ScanStopResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + ScanStopResponse copyWith(void Function(ScanStopResponse) updates) => super.copyWith((message) => updates(message as ScanStopResponse)) as ScanStopResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static ScanStopResponse create() => ScanStopResponse._(); + ScanStopResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static ScanStopResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static ScanStopResponse? _defaultInstance; +} + +class GetRDSRequest extends $pb.GeneratedMessage { + factory GetRDSRequest() => create(); + GetRDSRequest._() : super(); + factory GetRDSRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory GetRDSRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetRDSRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + GetRDSRequest clone() => GetRDSRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + GetRDSRequest copyWith(void Function(GetRDSRequest) updates) => super.copyWith((message) => updates(message as GetRDSRequest)) as GetRDSRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static GetRDSRequest create() => GetRDSRequest._(); + GetRDSRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static GetRDSRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static GetRDSRequest? _defaultInstance; +} + +/// NOTE: This is a placeholder and will be revised! +class GetRDSResponse extends $pb.GeneratedMessage { + factory GetRDSResponse({ + $core.String? name, + $core.String? radioText, + $core.String? alternatives, + $core.String? minute, + $core.String? hour, + $core.String? day, + $core.String? month, + $core.String? year, + $core.String? pi, + $core.String? pty, + $core.String? ta, + $core.String? tp, + $core.String? ms, + }) { + final $result = create(); + if (name != null) { + $result.name = name; + } + if (radioText != null) { + $result.radioText = radioText; + } + if (alternatives != null) { + $result.alternatives = alternatives; + } + if (minute != null) { + $result.minute = minute; + } + if (hour != null) { + $result.hour = hour; + } + if (day != null) { + $result.day = day; + } + if (month != null) { + $result.month = month; + } + if (year != null) { + $result.year = year; + } + if (pi != null) { + $result.pi = pi; + } + if (pty != null) { + $result.pty = pty; + } + if (ta != null) { + $result.ta = ta; + } + if (tp != null) { + $result.tp = tp; + } + if (ms != null) { + $result.ms = ms; + } + return $result; + } + GetRDSResponse._() : super(); + factory GetRDSResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory GetRDSResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetRDSResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..aOS(1, _omitFieldNames ? '' : 'name') + ..aOS(2, _omitFieldNames ? '' : 'radioText') + ..aOS(3, _omitFieldNames ? '' : 'alternatives') + ..aOS(4, _omitFieldNames ? '' : 'minute') + ..aOS(5, _omitFieldNames ? '' : 'hour') + ..aOS(6, _omitFieldNames ? '' : 'day') + ..aOS(7, _omitFieldNames ? '' : 'month') + ..aOS(8, _omitFieldNames ? '' : 'year') + ..aOS(9, _omitFieldNames ? '' : 'pi') + ..aOS(10, _omitFieldNames ? '' : 'pty') + ..aOS(11, _omitFieldNames ? '' : 'ta') + ..aOS(12, _omitFieldNames ? '' : 'tp') + ..aOS(13, _omitFieldNames ? '' : 'ms') + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + GetRDSResponse clone() => GetRDSResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + GetRDSResponse copyWith(void Function(GetRDSResponse) updates) => super.copyWith((message) => updates(message as GetRDSResponse)) as GetRDSResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static GetRDSResponse create() => GetRDSResponse._(); + GetRDSResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static GetRDSResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static GetRDSResponse? _defaultInstance; + + @$pb.TagNumber(1) + $core.String get name => $_getSZ(0); + @$pb.TagNumber(1) + set name($core.String v) { $_setString(0, v); } + @$pb.TagNumber(1) + $core.bool hasName() => $_has(0); + @$pb.TagNumber(1) + void clearName() => clearField(1); + + @$pb.TagNumber(2) + $core.String get radioText => $_getSZ(1); + @$pb.TagNumber(2) + set radioText($core.String v) { $_setString(1, v); } + @$pb.TagNumber(2) + $core.bool hasRadioText() => $_has(1); + @$pb.TagNumber(2) + void clearRadioText() => clearField(2); + + @$pb.TagNumber(3) + $core.String get alternatives => $_getSZ(2); + @$pb.TagNumber(3) + set alternatives($core.String v) { $_setString(2, v); } + @$pb.TagNumber(3) + $core.bool hasAlternatives() => $_has(2); + @$pb.TagNumber(3) + void clearAlternatives() => clearField(3); + + @$pb.TagNumber(4) + $core.String get minute => $_getSZ(3); + @$pb.TagNumber(4) + set minute($core.String v) { $_setString(3, v); } + @$pb.TagNumber(4) + $core.bool hasMinute() => $_has(3); + @$pb.TagNumber(4) + void clearMinute() => clearField(4); + + @$pb.TagNumber(5) + $core.String get hour => $_getSZ(4); + @$pb.TagNumber(5) + set hour($core.String v) { $_setString(4, v); } + @$pb.TagNumber(5) + $core.bool hasHour() => $_has(4); + @$pb.TagNumber(5) + void clearHour() => clearField(5); + + @$pb.TagNumber(6) + $core.String get day => $_getSZ(5); + @$pb.TagNumber(6) + set day($core.String v) { $_setString(5, v); } + @$pb.TagNumber(6) + $core.bool hasDay() => $_has(5); + @$pb.TagNumber(6) + void clearDay() => clearField(6); + + @$pb.TagNumber(7) + $core.String get month => $_getSZ(6); + @$pb.TagNumber(7) + set month($core.String v) { $_setString(6, v); } + @$pb.TagNumber(7) + $core.bool hasMonth() => $_has(6); + @$pb.TagNumber(7) + void clearMonth() => clearField(7); + + @$pb.TagNumber(8) + $core.String get year => $_getSZ(7); + @$pb.TagNumber(8) + set year($core.String v) { $_setString(7, v); } + @$pb.TagNumber(8) + $core.bool hasYear() => $_has(7); + @$pb.TagNumber(8) + void clearYear() => clearField(8); + + @$pb.TagNumber(9) + $core.String get pi => $_getSZ(8); + @$pb.TagNumber(9) + set pi($core.String v) { $_setString(8, v); } + @$pb.TagNumber(9) + $core.bool hasPi() => $_has(8); + @$pb.TagNumber(9) + void clearPi() => clearField(9); + + @$pb.TagNumber(10) + $core.String get pty => $_getSZ(9); + @$pb.TagNumber(10) + set pty($core.String v) { $_setString(9, v); } + @$pb.TagNumber(10) + $core.bool hasPty() => $_has(9); + @$pb.TagNumber(10) + void clearPty() => clearField(10); + + @$pb.TagNumber(11) + $core.String get ta => $_getSZ(10); + @$pb.TagNumber(11) + set ta($core.String v) { $_setString(10, v); } + @$pb.TagNumber(11) + $core.bool hasTa() => $_has(10); + @$pb.TagNumber(11) + void clearTa() => clearField(11); + + @$pb.TagNumber(12) + $core.String get tp => $_getSZ(11); + @$pb.TagNumber(12) + set tp($core.String v) { $_setString(11, v); } + @$pb.TagNumber(12) + $core.bool hasTp() => $_has(11); + @$pb.TagNumber(12) + void clearTp() => clearField(12); + + @$pb.TagNumber(13) + $core.String get ms => $_getSZ(12); + @$pb.TagNumber(13) + set ms($core.String v) { $_setString(12, v); } + @$pb.TagNumber(13) + $core.bool hasMs() => $_has(12); + @$pb.TagNumber(13) + void clearMs() => clearField(13); +} + +class GetQualityRequest extends $pb.GeneratedMessage { + factory GetQualityRequest() => create(); + GetQualityRequest._() : super(); + factory GetQualityRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory GetQualityRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetQualityRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + GetQualityRequest clone() => GetQualityRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + GetQualityRequest copyWith(void Function(GetQualityRequest) updates) => super.copyWith((message) => updates(message as GetQualityRequest)) as GetQualityRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static GetQualityRequest create() => GetQualityRequest._(); + GetQualityRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static GetQualityRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static GetQualityRequest? _defaultInstance; +} + +class GetQualityResponse extends $pb.GeneratedMessage { + factory GetQualityResponse() => create(); + GetQualityResponse._() : super(); + factory GetQualityResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory GetQualityResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetQualityResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + GetQualityResponse clone() => GetQualityResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + GetQualityResponse copyWith(void Function(GetQualityResponse) updates) => super.copyWith((message) => updates(message as GetQualityResponse)) as GetQualityResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static GetQualityResponse create() => GetQualityResponse._(); + GetQualityResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static GetQualityResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static GetQualityResponse? _defaultInstance; +} + +class SetAlternativeFrequencyRequest extends $pb.GeneratedMessage { + factory SetAlternativeFrequencyRequest({ + $core.int? frequency, + }) { + final $result = create(); + if (frequency != null) { + $result.frequency = frequency; + } + return $result; + } + SetAlternativeFrequencyRequest._() : super(); + factory SetAlternativeFrequencyRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory SetAlternativeFrequencyRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'SetAlternativeFrequencyRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..a<$core.int>(1, _omitFieldNames ? '' : 'frequency', $pb.PbFieldType.OU3) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + SetAlternativeFrequencyRequest clone() => SetAlternativeFrequencyRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + SetAlternativeFrequencyRequest copyWith(void Function(SetAlternativeFrequencyRequest) updates) => super.copyWith((message) => updates(message as SetAlternativeFrequencyRequest)) as SetAlternativeFrequencyRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static SetAlternativeFrequencyRequest create() => SetAlternativeFrequencyRequest._(); + SetAlternativeFrequencyRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static SetAlternativeFrequencyRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static SetAlternativeFrequencyRequest? _defaultInstance; + + @$pb.TagNumber(1) + $core.int get frequency => $_getIZ(0); + @$pb.TagNumber(1) + set frequency($core.int v) { $_setUnsignedInt32(0, v); } + @$pb.TagNumber(1) + $core.bool hasFrequency() => $_has(0); + @$pb.TagNumber(1) + void clearFrequency() => clearField(1); +} + +class SetAlternativeFrequencyResponse extends $pb.GeneratedMessage { + factory SetAlternativeFrequencyResponse({ + $core.int? frequency, + }) { + final $result = create(); + if (frequency != null) { + $result.frequency = frequency; + } + return $result; + } + SetAlternativeFrequencyResponse._() : super(); + factory SetAlternativeFrequencyResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory SetAlternativeFrequencyResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'SetAlternativeFrequencyResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..a<$core.int>(1, _omitFieldNames ? '' : 'frequency', $pb.PbFieldType.OU3) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + SetAlternativeFrequencyResponse clone() => SetAlternativeFrequencyResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + SetAlternativeFrequencyResponse copyWith(void Function(SetAlternativeFrequencyResponse) updates) => super.copyWith((message) => updates(message as SetAlternativeFrequencyResponse)) as SetAlternativeFrequencyResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static SetAlternativeFrequencyResponse create() => SetAlternativeFrequencyResponse._(); + SetAlternativeFrequencyResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static SetAlternativeFrequencyResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static SetAlternativeFrequencyResponse? _defaultInstance; + + @$pb.TagNumber(1) + $core.int get frequency => $_getIZ(0); + @$pb.TagNumber(1) + set frequency($core.int v) { $_setUnsignedInt32(0, v); } + @$pb.TagNumber(1) + $core.bool hasFrequency() => $_has(0); + @$pb.TagNumber(1) + void clearFrequency() => clearField(1); +} + +class StatusRequest extends $pb.GeneratedMessage { + factory StatusRequest() => create(); + StatusRequest._() : super(); + factory StatusRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory StatusRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'StatusRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + StatusRequest clone() => StatusRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + StatusRequest copyWith(void Function(StatusRequest) updates) => super.copyWith((message) => updates(message as StatusRequest)) as StatusRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static StatusRequest create() => StatusRequest._(); + StatusRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static StatusRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static StatusRequest? _defaultInstance; +} + +class BandStatus extends $pb.GeneratedMessage { + factory BandStatus({ + Band? band, + }) { + final $result = create(); + if (band != null) { + $result.band = band; + } + return $result; + } + BandStatus._() : super(); + factory BandStatus.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory BandStatus.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'BandStatus', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..e(1, _omitFieldNames ? '' : 'band', $pb.PbFieldType.OE, defaultOrMaker: Band.BAND_UNSPECIFIED, valueOf: Band.valueOf, enumValues: Band.values) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + BandStatus clone() => BandStatus()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + BandStatus copyWith(void Function(BandStatus) updates) => super.copyWith((message) => updates(message as BandStatus)) as BandStatus; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static BandStatus create() => BandStatus._(); + BandStatus createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static BandStatus getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BandStatus? _defaultInstance; + + @$pb.TagNumber(1) + Band get band => $_getN(0); + @$pb.TagNumber(1) + set band(Band v) { setField(1, v); } + @$pb.TagNumber(1) + $core.bool hasBand() => $_has(0); + @$pb.TagNumber(1) + void clearBand() => clearField(1); +} + +class FrequencyStatus extends $pb.GeneratedMessage { + factory FrequencyStatus({ + $core.int? frequency, + }) { + final $result = create(); + if (frequency != null) { + $result.frequency = frequency; + } + return $result; + } + FrequencyStatus._() : super(); + factory FrequencyStatus.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory FrequencyStatus.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'FrequencyStatus', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..a<$core.int>(1, _omitFieldNames ? '' : 'frequency', $pb.PbFieldType.OU3) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + FrequencyStatus clone() => FrequencyStatus()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + FrequencyStatus copyWith(void Function(FrequencyStatus) updates) => super.copyWith((message) => updates(message as FrequencyStatus)) as FrequencyStatus; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static FrequencyStatus create() => FrequencyStatus._(); + FrequencyStatus createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static FrequencyStatus getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static FrequencyStatus? _defaultInstance; + + @$pb.TagNumber(1) + $core.int get frequency => $_getIZ(0); + @$pb.TagNumber(1) + set frequency($core.int v) { $_setUnsignedInt32(0, v); } + @$pb.TagNumber(1) + $core.bool hasFrequency() => $_has(0); + @$pb.TagNumber(1) + void clearFrequency() => clearField(1); +} + +class PlayStatus extends $pb.GeneratedMessage { + factory PlayStatus({ + $core.bool? playing, + }) { + final $result = create(); + if (playing != null) { + $result.playing = playing; + } + return $result; + } + PlayStatus._() : super(); + factory PlayStatus.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory PlayStatus.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'PlayStatus', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..aOB(1, _omitFieldNames ? '' : 'playing') + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + PlayStatus clone() => PlayStatus()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + PlayStatus copyWith(void Function(PlayStatus) updates) => super.copyWith((message) => updates(message as PlayStatus)) as PlayStatus; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static PlayStatus create() => PlayStatus._(); + PlayStatus createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static PlayStatus getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static PlayStatus? _defaultInstance; + + @$pb.TagNumber(1) + $core.bool get playing => $_getBF(0); + @$pb.TagNumber(1) + set playing($core.bool v) { $_setBool(0, v); } + @$pb.TagNumber(1) + $core.bool hasPlaying() => $_has(0); + @$pb.TagNumber(1) + void clearPlaying() => clearField(1); +} + +class ScanStatus extends $pb.GeneratedMessage { + factory ScanStatus({ + $core.bool? stationFound, + }) { + final $result = create(); + if (stationFound != null) { + $result.stationFound = stationFound; + } + return $result; + } + ScanStatus._() : super(); + factory ScanStatus.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory ScanStatus.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ScanStatus', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..aOB(1, _omitFieldNames ? '' : 'stationFound') + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + ScanStatus clone() => ScanStatus()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + ScanStatus copyWith(void Function(ScanStatus) updates) => super.copyWith((message) => updates(message as ScanStatus)) as ScanStatus; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static ScanStatus create() => ScanStatus._(); + ScanStatus createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static ScanStatus getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static ScanStatus? _defaultInstance; + + @$pb.TagNumber(1) + $core.bool get stationFound => $_getBF(0); + @$pb.TagNumber(1) + set stationFound($core.bool v) { $_setBool(0, v); } + @$pb.TagNumber(1) + $core.bool hasStationFound() => $_has(0); + @$pb.TagNumber(1) + void clearStationFound() => clearField(1); +} + +class StereoStatus extends $pb.GeneratedMessage { + factory StereoStatus({ + StereoMode? mode, + }) { + final $result = create(); + if (mode != null) { + $result.mode = mode; + } + return $result; + } + StereoStatus._() : super(); + factory StereoStatus.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory StereoStatus.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'StereoStatus', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..e(1, _omitFieldNames ? '' : 'mode', $pb.PbFieldType.OE, defaultOrMaker: StereoMode.STEREO_MODE_UNSPECIFIED, valueOf: StereoMode.valueOf, enumValues: StereoMode.values) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + StereoStatus clone() => StereoStatus()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + StereoStatus copyWith(void Function(StereoStatus) updates) => super.copyWith((message) => updates(message as StereoStatus)) as StereoStatus; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static StereoStatus create() => StereoStatus._(); + StereoStatus createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static StereoStatus getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static StereoStatus? _defaultInstance; + + @$pb.TagNumber(1) + StereoMode get mode => $_getN(0); + @$pb.TagNumber(1) + set mode(StereoMode v) { setField(1, v); } + @$pb.TagNumber(1) + $core.bool hasMode() => $_has(0); + @$pb.TagNumber(1) + void clearMode() => clearField(1); +} + +enum StatusResponse_Status { + band, + frequency, + play, + stereo, + scan, + notSet +} + +class StatusResponse extends $pb.GeneratedMessage { + factory StatusResponse({ + BandStatus? band, + FrequencyStatus? frequency, + PlayStatus? play, + StereoStatus? stereo, + ScanStatus? scan, + }) { + final $result = create(); + if (band != null) { + $result.band = band; + } + if (frequency != null) { + $result.frequency = frequency; + } + if (play != null) { + $result.play = play; + } + if (stereo != null) { + $result.stereo = stereo; + } + if (scan != null) { + $result.scan = scan; + } + return $result; + } + StatusResponse._() : super(); + factory StatusResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory StatusResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static const $core.Map<$core.int, StatusResponse_Status> _StatusResponse_StatusByTag = { + 1 : StatusResponse_Status.band, + 2 : StatusResponse_Status.frequency, + 3 : StatusResponse_Status.play, + 4 : StatusResponse_Status.stereo, + 5 : StatusResponse_Status.scan, + 0 : StatusResponse_Status.notSet + }; + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'StatusResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'automotivegradelinux'), createEmptyInstance: create) + ..oo(0, [1, 2, 3, 4, 5]) + ..aOM(1, _omitFieldNames ? '' : 'band', subBuilder: BandStatus.create) + ..aOM(2, _omitFieldNames ? '' : 'frequency', subBuilder: FrequencyStatus.create) + ..aOM(3, _omitFieldNames ? '' : 'play', subBuilder: PlayStatus.create) + ..aOM(4, _omitFieldNames ? '' : 'stereo', subBuilder: StereoStatus.create) + ..aOM(5, _omitFieldNames ? '' : 'scan', subBuilder: ScanStatus.create) + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + StatusResponse clone() => StatusResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + StatusResponse copyWith(void Function(StatusResponse) updates) => super.copyWith((message) => updates(message as StatusResponse)) as StatusResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static StatusResponse create() => StatusResponse._(); + StatusResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static StatusResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static StatusResponse? _defaultInstance; + + StatusResponse_Status whichStatus() => _StatusResponse_StatusByTag[$_whichOneof(0)]!; + void clearStatus() => clearField($_whichOneof(0)); + + @$pb.TagNumber(1) + BandStatus get band => $_getN(0); + @$pb.TagNumber(1) + set band(BandStatus v) { setField(1, v); } + @$pb.TagNumber(1) + $core.bool hasBand() => $_has(0); + @$pb.TagNumber(1) + void clearBand() => clearField(1); + @$pb.TagNumber(1) + BandStatus ensureBand() => $_ensure(0); + + @$pb.TagNumber(2) + FrequencyStatus get frequency => $_getN(1); + @$pb.TagNumber(2) + set frequency(FrequencyStatus v) { setField(2, v); } + @$pb.TagNumber(2) + $core.bool hasFrequency() => $_has(1); + @$pb.TagNumber(2) + void clearFrequency() => clearField(2); + @$pb.TagNumber(2) + FrequencyStatus ensureFrequency() => $_ensure(1); + + @$pb.TagNumber(3) + PlayStatus get play => $_getN(2); + @$pb.TagNumber(3) + set play(PlayStatus v) { setField(3, v); } + @$pb.TagNumber(3) + $core.bool hasPlay() => $_has(2); + @$pb.TagNumber(3) + void clearPlay() => clearField(3); + @$pb.TagNumber(3) + PlayStatus ensurePlay() => $_ensure(2); + + @$pb.TagNumber(4) + StereoStatus get stereo => $_getN(3); + @$pb.TagNumber(4) + set stereo(StereoStatus v) { setField(4, v); } + @$pb.TagNumber(4) + $core.bool hasStereo() => $_has(3); + @$pb.TagNumber(4) + void clearStereo() => clearField(4); + @$pb.TagNumber(4) + StereoStatus ensureStereo() => $_ensure(3); + + @$pb.TagNumber(5) + ScanStatus get scan => $_getN(4); + @$pb.TagNumber(5) + set scan(ScanStatus v) { setField(5, v); } + @$pb.TagNumber(5) + $core.bool hasScan() => $_has(4); + @$pb.TagNumber(5) + void clearScan() => clearField(5); + @$pb.TagNumber(5) + ScanStatus ensureScan() => $_ensure(4); +} + + +const _omitFieldNames = $core.bool.fromEnvironment('protobuf.omit_field_names'); +const _omitMessageNames = $core.bool.fromEnvironment('protobuf.omit_message_names'); diff --git a/protos/lib/src/generated/radio.pbenum.dart b/protos/lib/src/generated/radio.pbenum.dart new file mode 100644 index 0000000..f22c535 --- /dev/null +++ b/protos/lib/src/generated/radio.pbenum.dart @@ -0,0 +1,70 @@ +// +// Generated code. Do not modify. +// source: radio.proto +// +// @dart = 2.12 + +// ignore_for_file: annotate_overrides, camel_case_types, comment_references +// ignore_for_file: constant_identifier_names, library_prefixes +// ignore_for_file: non_constant_identifier_names, prefer_final_fields +// ignore_for_file: unnecessary_import, unnecessary_this, unused_import + +import 'dart:core' as $core; + +import 'package:protobuf/protobuf.dart' as $pb; + +class Band extends $pb.ProtobufEnum { + static const Band BAND_UNSPECIFIED = Band._(0, _omitEnumNames ? '' : 'BAND_UNSPECIFIED'); + static const Band BAND_AM = Band._(1, _omitEnumNames ? '' : 'BAND_AM'); + static const Band BAND_FM = Band._(2, _omitEnumNames ? '' : 'BAND_FM'); + static const Band BAND_DBS = Band._(3, _omitEnumNames ? '' : 'BAND_DBS'); + + static const $core.List values = [ + BAND_UNSPECIFIED, + BAND_AM, + BAND_FM, + BAND_DBS, + ]; + + static final $core.Map<$core.int, Band> _byValue = $pb.ProtobufEnum.initByValue(values); + static Band? valueOf($core.int value) => _byValue[value]; + + const Band._($core.int v, $core.String n) : super(v, n); +} + +class StereoMode extends $pb.ProtobufEnum { + static const StereoMode STEREO_MODE_UNSPECIFIED = StereoMode._(0, _omitEnumNames ? '' : 'STEREO_MODE_UNSPECIFIED'); + static const StereoMode STEREO_MODE_MONO = StereoMode._(1, _omitEnumNames ? '' : 'STEREO_MODE_MONO'); + static const StereoMode STEREO_MODE_STEREO = StereoMode._(2, _omitEnumNames ? '' : 'STEREO_MODE_STEREO'); + + static const $core.List values = [ + STEREO_MODE_UNSPECIFIED, + STEREO_MODE_MONO, + STEREO_MODE_STEREO, + ]; + + static final $core.Map<$core.int, StereoMode> _byValue = $pb.ProtobufEnum.initByValue(values); + static StereoMode? valueOf($core.int value) => _byValue[value]; + + const StereoMode._($core.int v, $core.String n) : super(v, n); +} + +class ScanDirection extends $pb.ProtobufEnum { + static const ScanDirection SCAN_DIRECTION_UNSPECIFIED = ScanDirection._(0, _omitEnumNames ? '' : 'SCAN_DIRECTION_UNSPECIFIED'); + static const ScanDirection SCAN_DIRECTION_FORWARD = ScanDirection._(1, _omitEnumNames ? '' : 'SCAN_DIRECTION_FORWARD'); + static const ScanDirection SCAN_DIRECTION_BACKWARD = ScanDirection._(2, _omitEnumNames ? '' : 'SCAN_DIRECTION_BACKWARD'); + + static const $core.List values = [ + SCAN_DIRECTION_UNSPECIFIED, + SCAN_DIRECTION_FORWARD, + SCAN_DIRECTION_BACKWARD, + ]; + + static final $core.Map<$core.int, ScanDirection> _byValue = $pb.ProtobufEnum.initByValue(values); + static ScanDirection? valueOf($core.int value) => _byValue[value]; + + const ScanDirection._($core.int v, $core.String n) : super(v, n); +} + + +const _omitEnumNames = $core.bool.fromEnvironment('protobuf.omit_enum_names'); diff --git a/protos/lib/src/generated/radio.pbgrpc.dart b/protos/lib/src/generated/radio.pbgrpc.dart new file mode 100644 index 0000000..7e4233a --- /dev/null +++ b/protos/lib/src/generated/radio.pbgrpc.dart @@ -0,0 +1,359 @@ +// +// Generated code. Do not modify. +// source: radio.proto +// +// @dart = 2.12 + +// ignore_for_file: annotate_overrides, camel_case_types, comment_references +// ignore_for_file: constant_identifier_names, library_prefixes +// ignore_for_file: non_constant_identifier_names, prefer_final_fields +// ignore_for_file: unnecessary_import, unnecessary_this, unused_import + +import 'dart:async' as $async; +import 'dart:core' as $core; + +import 'package:grpc/service_api.dart' as $grpc; +import 'package:protobuf/protobuf.dart' as $pb; + +import 'radio.pb.dart' as $0; + +export 'radio.pb.dart'; + +@$pb.GrpcServiceName('automotivegradelinux.Radio') +class RadioClient extends $grpc.Client { + static final _$getFrequency = $grpc.ClientMethod<$0.GetFrequencyRequest, $0.GetFrequencyResponse>( + '/automotivegradelinux.Radio/GetFrequency', + ($0.GetFrequencyRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.GetFrequencyResponse.fromBuffer(value)); + static final _$setFrequency = $grpc.ClientMethod<$0.SetFrequencyRequest, $0.SetFrequencyResponse>( + '/automotivegradelinux.Radio/SetFrequency', + ($0.SetFrequencyRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.SetFrequencyResponse.fromBuffer(value)); + static final _$getBand = $grpc.ClientMethod<$0.GetBandRequest, $0.GetBandResponse>( + '/automotivegradelinux.Radio/GetBand', + ($0.GetBandRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.GetBandResponse.fromBuffer(value)); + static final _$setBand = $grpc.ClientMethod<$0.SetBandRequest, $0.SetBandResponse>( + '/automotivegradelinux.Radio/SetBand', + ($0.SetBandRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.SetBandResponse.fromBuffer(value)); + static final _$getBandSupported = $grpc.ClientMethod<$0.GetBandSupportedRequest, $0.GetBandSupportedResponse>( + '/automotivegradelinux.Radio/GetBandSupported', + ($0.GetBandSupportedRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.GetBandSupportedResponse.fromBuffer(value)); + static final _$getBandParameters = $grpc.ClientMethod<$0.GetBandParametersRequest, $0.GetBandParametersResponse>( + '/automotivegradelinux.Radio/GetBandParameters', + ($0.GetBandParametersRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.GetBandParametersResponse.fromBuffer(value)); + static final _$getStereoMode = $grpc.ClientMethod<$0.GetStereoModeRequest, $0.GetStereoModeResponse>( + '/automotivegradelinux.Radio/GetStereoMode', + ($0.GetStereoModeRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.GetStereoModeResponse.fromBuffer(value)); + static final _$setStereoMode = $grpc.ClientMethod<$0.SetStereoModeRequest, $0.SetStereoModeResponse>( + '/automotivegradelinux.Radio/SetStereoMode', + ($0.SetStereoModeRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.SetStereoModeResponse.fromBuffer(value)); + static final _$start = $grpc.ClientMethod<$0.StartRequest, $0.StartResponse>( + '/automotivegradelinux.Radio/Start', + ($0.StartRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.StartResponse.fromBuffer(value)); + static final _$stop = $grpc.ClientMethod<$0.StopRequest, $0.StopResponse>( + '/automotivegradelinux.Radio/Stop', + ($0.StopRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.StopResponse.fromBuffer(value)); + static final _$scanStart = $grpc.ClientMethod<$0.ScanStartRequest, $0.ScanStartResponse>( + '/automotivegradelinux.Radio/ScanStart', + ($0.ScanStartRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.ScanStartResponse.fromBuffer(value)); + static final _$scanStop = $grpc.ClientMethod<$0.ScanStopRequest, $0.ScanStopResponse>( + '/automotivegradelinux.Radio/ScanStop', + ($0.ScanStopRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.ScanStopResponse.fromBuffer(value)); + static final _$getRDS = $grpc.ClientMethod<$0.GetRDSRequest, $0.GetRDSResponse>( + '/automotivegradelinux.Radio/GetRDS', + ($0.GetRDSRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.GetRDSResponse.fromBuffer(value)); + static final _$getQuality = $grpc.ClientMethod<$0.GetQualityRequest, $0.GetQualityResponse>( + '/automotivegradelinux.Radio/GetQuality', + ($0.GetQualityRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.GetQualityResponse.fromBuffer(value)); + static final _$setAlternativeFrequency = $grpc.ClientMethod<$0.SetAlternativeFrequencyRequest, $0.SetAlternativeFrequencyResponse>( + '/automotivegradelinux.Radio/SetAlternativeFrequency', + ($0.SetAlternativeFrequencyRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.SetAlternativeFrequencyResponse.fromBuffer(value)); + static final _$getStatusEvents = $grpc.ClientMethod<$0.StatusRequest, $0.StatusResponse>( + '/automotivegradelinux.Radio/GetStatusEvents', + ($0.StatusRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.StatusResponse.fromBuffer(value)); + + RadioClient($grpc.ClientChannel channel, + {$grpc.CallOptions? options, + $core.Iterable<$grpc.ClientInterceptor>? interceptors}) + : super(channel, options: options, + interceptors: interceptors); + + $grpc.ResponseFuture<$0.GetFrequencyResponse> getFrequency($0.GetFrequencyRequest request, {$grpc.CallOptions? options}) { + return $createUnaryCall(_$getFrequency, request, options: options); + } + + $grpc.ResponseFuture<$0.SetFrequencyResponse> setFrequency($0.SetFrequencyRequest request, {$grpc.CallOptions? options}) { + return $createUnaryCall(_$setFrequency, request, options: options); + } + + $grpc.ResponseFuture<$0.GetBandResponse> getBand($0.GetBandRequest request, {$grpc.CallOptions? options}) { + return $createUnaryCall(_$getBand, request, options: options); + } + + $grpc.ResponseFuture<$0.SetBandResponse> setBand($0.SetBandRequest request, {$grpc.CallOptions? options}) { + return $createUnaryCall(_$setBand, request, options: options); + } + + $grpc.ResponseFuture<$0.GetBandSupportedResponse> getBandSupported($0.GetBandSupportedRequest request, {$grpc.CallOptions? options}) { + return $createUnaryCall(_$getBandSupported, request, options: options); + } + + $grpc.ResponseFuture<$0.GetBandParametersResponse> getBandParameters($0.GetBandParametersRequest request, {$grpc.CallOptions? options}) { + return $createUnaryCall(_$getBandParameters, request, options: options); + } + + $grpc.ResponseFuture<$0.GetStereoModeResponse> getStereoMode($0.GetStereoModeRequest request, {$grpc.CallOptions? options}) { + return $createUnaryCall(_$getStereoMode, request, options: options); + } + + $grpc.ResponseFuture<$0.SetStereoModeResponse> setStereoMode($0.SetStereoModeRequest request, {$grpc.CallOptions? options}) { + return $createUnaryCall(_$setStereoMode, request, options: options); + } + + $grpc.ResponseFuture<$0.StartResponse> start($0.StartRequest request, {$grpc.CallOptions? options}) { + return $createUnaryCall(_$start, request, options: options); + } + + $grpc.ResponseFuture<$0.StopResponse> stop($0.StopRequest request, {$grpc.CallOptions? options}) { + return $createUnaryCall(_$stop, request, options: options); + } + + $grpc.ResponseFuture<$0.ScanStartResponse> scanStart($0.ScanStartRequest request, {$grpc.CallOptions? options}) { + return $createUnaryCall(_$scanStart, request, options: options); + } + + $grpc.ResponseFuture<$0.ScanStopResponse> scanStop($0.ScanStopRequest request, {$grpc.CallOptions? options}) { + return $createUnaryCall(_$scanStop, request, options: options); + } + + $grpc.ResponseFuture<$0.GetRDSResponse> getRDS($0.GetRDSRequest request, {$grpc.CallOptions? options}) { + return $createUnaryCall(_$getRDS, request, options: options); + } + + $grpc.ResponseFuture<$0.GetQualityResponse> getQuality($0.GetQualityRequest request, {$grpc.CallOptions? options}) { + return $createUnaryCall(_$getQuality, request, options: options); + } + + $grpc.ResponseFuture<$0.SetAlternativeFrequencyResponse> setAlternativeFrequency($0.SetAlternativeFrequencyRequest request, {$grpc.CallOptions? options}) { + return $createUnaryCall(_$setAlternativeFrequency, request, options: options); + } + + $grpc.ResponseStream<$0.StatusResponse> getStatusEvents($0.StatusRequest request, {$grpc.CallOptions? options}) { + return $createStreamingCall(_$getStatusEvents, $async.Stream.fromIterable([request]), options: options); + } +} + +@$pb.GrpcServiceName('automotivegradelinux.Radio') +abstract class RadioServiceBase extends $grpc.Service { + $core.String get $name => 'automotivegradelinux.Radio'; + + RadioServiceBase() { + $addMethod($grpc.ServiceMethod<$0.GetFrequencyRequest, $0.GetFrequencyResponse>( + 'GetFrequency', + getFrequency_Pre, + false, + false, + ($core.List<$core.int> value) => $0.GetFrequencyRequest.fromBuffer(value), + ($0.GetFrequencyResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.SetFrequencyRequest, $0.SetFrequencyResponse>( + 'SetFrequency', + setFrequency_Pre, + false, + false, + ($core.List<$core.int> value) => $0.SetFrequencyRequest.fromBuffer(value), + ($0.SetFrequencyResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.GetBandRequest, $0.GetBandResponse>( + 'GetBand', + getBand_Pre, + false, + false, + ($core.List<$core.int> value) => $0.GetBandRequest.fromBuffer(value), + ($0.GetBandResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.SetBandRequest, $0.SetBandResponse>( + 'SetBand', + setBand_Pre, + false, + false, + ($core.List<$core.int> value) => $0.SetBandRequest.fromBuffer(value), + ($0.SetBandResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.GetBandSupportedRequest, $0.GetBandSupportedResponse>( + 'GetBandSupported', + getBandSupported_Pre, + false, + false, + ($core.List<$core.int> value) => $0.GetBandSupportedRequest.fromBuffer(value), + ($0.GetBandSupportedResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.GetBandParametersRequest, $0.GetBandParametersResponse>( + 'GetBandParameters', + getBandParameters_Pre, + false, + false, + ($core.List<$core.int> value) => $0.GetBandParametersRequest.fromBuffer(value), + ($0.GetBandParametersResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.GetStereoModeRequest, $0.GetStereoModeResponse>( + 'GetStereoMode', + getStereoMode_Pre, + false, + false, + ($core.List<$core.int> value) => $0.GetStereoModeRequest.fromBuffer(value), + ($0.GetStereoModeResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.SetStereoModeRequest, $0.SetStereoModeResponse>( + 'SetStereoMode', + setStereoMode_Pre, + false, + false, + ($core.List<$core.int> value) => $0.SetStereoModeRequest.fromBuffer(value), + ($0.SetStereoModeResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.StartRequest, $0.StartResponse>( + 'Start', + start_Pre, + false, + false, + ($core.List<$core.int> value) => $0.StartRequest.fromBuffer(value), + ($0.StartResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.StopRequest, $0.StopResponse>( + 'Stop', + stop_Pre, + false, + false, + ($core.List<$core.int> value) => $0.StopRequest.fromBuffer(value), + ($0.StopResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.ScanStartRequest, $0.ScanStartResponse>( + 'ScanStart', + scanStart_Pre, + false, + false, + ($core.List<$core.int> value) => $0.ScanStartRequest.fromBuffer(value), + ($0.ScanStartResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.ScanStopRequest, $0.ScanStopResponse>( + 'ScanStop', + scanStop_Pre, + false, + false, + ($core.List<$core.int> value) => $0.ScanStopRequest.fromBuffer(value), + ($0.ScanStopResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.GetRDSRequest, $0.GetRDSResponse>( + 'GetRDS', + getRDS_Pre, + false, + false, + ($core.List<$core.int> value) => $0.GetRDSRequest.fromBuffer(value), + ($0.GetRDSResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.GetQualityRequest, $0.GetQualityResponse>( + 'GetQuality', + getQuality_Pre, + false, + false, + ($core.List<$core.int> value) => $0.GetQualityRequest.fromBuffer(value), + ($0.GetQualityResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.SetAlternativeFrequencyRequest, $0.SetAlternativeFrequencyResponse>( + 'SetAlternativeFrequency', + setAlternativeFrequency_Pre, + false, + false, + ($core.List<$core.int> value) => $0.SetAlternativeFrequencyRequest.fromBuffer(value), + ($0.SetAlternativeFrequencyResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.StatusRequest, $0.StatusResponse>( + 'GetStatusEvents', + getStatusEvents_Pre, + false, + true, + ($core.List<$core.int> value) => $0.StatusRequest.fromBuffer(value), + ($0.StatusResponse value) => value.writeToBuffer())); + } + + $async.Future<$0.GetFrequencyResponse> getFrequency_Pre($grpc.ServiceCall call, $async.Future<$0.GetFrequencyRequest> request) async { + return getFrequency(call, await request); + } + + $async.Future<$0.SetFrequencyResponse> setFrequency_Pre($grpc.ServiceCall call, $async.Future<$0.SetFrequencyRequest> request) async { + return setFrequency(call, await request); + } + + $async.Future<$0.GetBandResponse> getBand_Pre($grpc.ServiceCall call, $async.Future<$0.GetBandRequest> request) async { + return getBand(call, await request); + } + + $async.Future<$0.SetBandResponse> setBand_Pre($grpc.ServiceCall call, $async.Future<$0.SetBandRequest> request) async { + return setBand(call, await request); + } + + $async.Future<$0.GetBandSupportedResponse> getBandSupported_Pre($grpc.ServiceCall call, $async.Future<$0.GetBandSupportedRequest> request) async { + return getBandSupported(call, await request); + } + + $async.Future<$0.GetBandParametersResponse> getBandParameters_Pre($grpc.ServiceCall call, $async.Future<$0.GetBandParametersRequest> request) async { + return getBandParameters(call, await request); + } + + $async.Future<$0.GetStereoModeResponse> getStereoMode_Pre($grpc.ServiceCall call, $async.Future<$0.GetStereoModeRequest> request) async { + return getStereoMode(call, await request); + } + + $async.Future<$0.SetStereoModeResponse> setStereoMode_Pre($grpc.ServiceCall call, $async.Future<$0.SetStereoModeRequest> request) async { + return setStereoMode(call, await request); + } + + $async.Future<$0.StartResponse> start_Pre($grpc.ServiceCall call, $async.Future<$0.StartRequest> request) async { + return start(call, await request); + } + + $async.Future<$0.StopResponse> stop_Pre($grpc.ServiceCall call, $async.Future<$0.StopRequest> request) async { + return stop(call, await request); + } + + $async.Future<$0.ScanStartResponse> scanStart_Pre($grpc.ServiceCall call, $async.Future<$0.ScanStartRequest> request) async { + return scanStart(call, await request); + } + + $async.Future<$0.ScanStopResponse> scanStop_Pre($grpc.ServiceCall call, $async.Future<$0.ScanStopRequest> request) async { + return scanStop(call, await request); + } + + $async.Future<$0.GetRDSResponse> getRDS_Pre($grpc.ServiceCall call, $async.Future<$0.GetRDSRequest> request) async { + return getRDS(call, await request); + } + + $async.Future<$0.GetQualityResponse> getQuality_Pre($grpc.ServiceCall call, $async.Future<$0.GetQualityRequest> request) async { + return getQuality(call, await request); + } + + $async.Future<$0.SetAlternativeFrequencyResponse> setAlternativeFrequency_Pre($grpc.ServiceCall call, $async.Future<$0.SetAlternativeFrequencyRequest> request) async { + return setAlternativeFrequency(call, await request); + } + + $async.Stream<$0.StatusResponse> getStatusEvents_Pre($grpc.ServiceCall call, $async.Future<$0.StatusRequest> request) async* { + yield* getStatusEvents(call, await request); + } + + $async.Future<$0.GetFrequencyResponse> getFrequency($grpc.ServiceCall call, $0.GetFrequencyRequest request); + $async.Future<$0.SetFrequencyResponse> setFrequency($grpc.ServiceCall call, $0.SetFrequencyRequest request); + $async.Future<$0.GetBandResponse> getBand($grpc.ServiceCall call, $0.GetBandRequest request); + $async.Future<$0.SetBandResponse> setBand($grpc.ServiceCall call, $0.SetBandRequest request); + $async.Future<$0.GetBandSupportedResponse> getBandSupported($grpc.ServiceCall call, $0.GetBandSupportedRequest request); + $async.Future<$0.GetBandParametersResponse> getBandParameters($grpc.ServiceCall call, $0.GetBandParametersRequest request); + $async.Future<$0.GetStereoModeResponse> getStereoMode($grpc.ServiceCall call, $0.GetStereoModeRequest request); + $async.Future<$0.SetStereoModeResponse> setStereoMode($grpc.ServiceCall call, $0.SetStereoModeRequest request); + $async.Future<$0.StartResponse> start($grpc.ServiceCall call, $0.StartRequest request); + $async.Future<$0.StopResponse> stop($grpc.ServiceCall call, $0.StopRequest request); + $async.Future<$0.ScanStartResponse> scanStart($grpc.ServiceCall call, $0.ScanStartRequest request); + $async.Future<$0.ScanStopResponse> scanStop($grpc.ServiceCall call, $0.ScanStopRequest request); + $async.Future<$0.GetRDSResponse> getRDS($grpc.ServiceCall call, $0.GetRDSRequest request); + $async.Future<$0.GetQualityResponse> getQuality($grpc.ServiceCall call, $0.GetQualityRequest request); + $async.Future<$0.SetAlternativeFrequencyResponse> setAlternativeFrequency($grpc.ServiceCall call, $0.SetAlternativeFrequencyRequest request); + $async.Stream<$0.StatusResponse> getStatusEvents($grpc.ServiceCall call, $0.StatusRequest request); +} diff --git a/protos/lib/src/generated/radio.pbjson.dart b/protos/lib/src/generated/radio.pbjson.dart new file mode 100644 index 0000000..75dac79 --- /dev/null +++ b/protos/lib/src/generated/radio.pbjson.dart @@ -0,0 +1,509 @@ +// +// Generated code. Do not modify. +// source: radio.proto +// +// @dart = 2.12 + +// ignore_for_file: annotate_overrides, camel_case_types, comment_references +// ignore_for_file: constant_identifier_names, library_prefixes +// ignore_for_file: non_constant_identifier_names, prefer_final_fields +// ignore_for_file: unnecessary_import, unnecessary_this, unused_import + +import 'dart:convert' as $convert; +import 'dart:core' as $core; +import 'dart:typed_data' as $typed_data; + +@$core.Deprecated('Use bandDescriptor instead') +const Band$json = { + '1': 'Band', + '2': [ + {'1': 'BAND_UNSPECIFIED', '2': 0}, + {'1': 'BAND_AM', '2': 1}, + {'1': 'BAND_FM', '2': 2}, + {'1': 'BAND_DBS', '2': 3}, + ], +}; + +/// Descriptor for `Band`. Decode as a `google.protobuf.EnumDescriptorProto`. +final $typed_data.Uint8List bandDescriptor = $convert.base64Decode( + 'CgRCYW5kEhQKEEJBTkRfVU5TUEVDSUZJRUQQABILCgdCQU5EX0FNEAESCwoHQkFORF9GTRACEg' + 'wKCEJBTkRfREJTEAM='); + +@$core.Deprecated('Use stereoModeDescriptor instead') +const StereoMode$json = { + '1': 'StereoMode', + '2': [ + {'1': 'STEREO_MODE_UNSPECIFIED', '2': 0}, + {'1': 'STEREO_MODE_MONO', '2': 1}, + {'1': 'STEREO_MODE_STEREO', '2': 2}, + ], +}; + +/// Descriptor for `StereoMode`. Decode as a `google.protobuf.EnumDescriptorProto`. +final $typed_data.Uint8List stereoModeDescriptor = $convert.base64Decode( + 'CgpTdGVyZW9Nb2RlEhsKF1NURVJFT19NT0RFX1VOU1BFQ0lGSUVEEAASFAoQU1RFUkVPX01PRE' + 'VfTU9OTxABEhYKElNURVJFT19NT0RFX1NURVJFTxAC'); + +@$core.Deprecated('Use scanDirectionDescriptor instead') +const ScanDirection$json = { + '1': 'ScanDirection', + '2': [ + {'1': 'SCAN_DIRECTION_UNSPECIFIED', '2': 0}, + {'1': 'SCAN_DIRECTION_FORWARD', '2': 1}, + {'1': 'SCAN_DIRECTION_BACKWARD', '2': 2}, + ], +}; + +/// Descriptor for `ScanDirection`. Decode as a `google.protobuf.EnumDescriptorProto`. +final $typed_data.Uint8List scanDirectionDescriptor = $convert.base64Decode( + 'Cg1TY2FuRGlyZWN0aW9uEh4KGlNDQU5fRElSRUNUSU9OX1VOU1BFQ0lGSUVEEAASGgoWU0NBTl' + '9ESVJFQ1RJT05fRk9SV0FSRBABEhsKF1NDQU5fRElSRUNUSU9OX0JBQ0tXQVJEEAI='); + +@$core.Deprecated('Use getFrequencyRequestDescriptor instead') +const GetFrequencyRequest$json = { + '1': 'GetFrequencyRequest', +}; + +/// Descriptor for `GetFrequencyRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List getFrequencyRequestDescriptor = $convert.base64Decode( + 'ChNHZXRGcmVxdWVuY3lSZXF1ZXN0'); + +@$core.Deprecated('Use getFrequencyResponseDescriptor instead') +const GetFrequencyResponse$json = { + '1': 'GetFrequencyResponse', + '2': [ + {'1': 'frequency', '3': 1, '4': 1, '5': 13, '10': 'frequency'}, + ], +}; + +/// Descriptor for `GetFrequencyResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List getFrequencyResponseDescriptor = $convert.base64Decode( + 'ChRHZXRGcmVxdWVuY3lSZXNwb25zZRIcCglmcmVxdWVuY3kYASABKA1SCWZyZXF1ZW5jeQ=='); + +@$core.Deprecated('Use setFrequencyRequestDescriptor instead') +const SetFrequencyRequest$json = { + '1': 'SetFrequencyRequest', + '2': [ + {'1': 'frequency', '3': 1, '4': 1, '5': 13, '10': 'frequency'}, + ], +}; + +/// Descriptor for `SetFrequencyRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List setFrequencyRequestDescriptor = $convert.base64Decode( + 'ChNTZXRGcmVxdWVuY3lSZXF1ZXN0EhwKCWZyZXF1ZW5jeRgBIAEoDVIJZnJlcXVlbmN5'); + +@$core.Deprecated('Use setFrequencyResponseDescriptor instead') +const SetFrequencyResponse$json = { + '1': 'SetFrequencyResponse', + '2': [ + {'1': 'frequency', '3': 1, '4': 1, '5': 13, '10': 'frequency'}, + ], +}; + +/// Descriptor for `SetFrequencyResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List setFrequencyResponseDescriptor = $convert.base64Decode( + 'ChRTZXRGcmVxdWVuY3lSZXNwb25zZRIcCglmcmVxdWVuY3kYASABKA1SCWZyZXF1ZW5jeQ=='); + +@$core.Deprecated('Use getBandRequestDescriptor instead') +const GetBandRequest$json = { + '1': 'GetBandRequest', +}; + +/// Descriptor for `GetBandRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List getBandRequestDescriptor = $convert.base64Decode( + 'Cg5HZXRCYW5kUmVxdWVzdA=='); + +@$core.Deprecated('Use getBandResponseDescriptor instead') +const GetBandResponse$json = { + '1': 'GetBandResponse', + '2': [ + {'1': 'band', '3': 1, '4': 1, '5': 14, '6': '.automotivegradelinux.Band', '10': 'band'}, + ], +}; + +/// Descriptor for `GetBandResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List getBandResponseDescriptor = $convert.base64Decode( + 'Cg9HZXRCYW5kUmVzcG9uc2USLgoEYmFuZBgBIAEoDjIaLmF1dG9tb3RpdmVncmFkZWxpbnV4Lk' + 'JhbmRSBGJhbmQ='); + +@$core.Deprecated('Use setBandRequestDescriptor instead') +const SetBandRequest$json = { + '1': 'SetBandRequest', + '2': [ + {'1': 'band', '3': 1, '4': 1, '5': 14, '6': '.automotivegradelinux.Band', '10': 'band'}, + ], +}; + +/// Descriptor for `SetBandRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List setBandRequestDescriptor = $convert.base64Decode( + 'Cg5TZXRCYW5kUmVxdWVzdBIuCgRiYW5kGAEgASgOMhouYXV0b21vdGl2ZWdyYWRlbGludXguQm' + 'FuZFIEYmFuZA=='); + +@$core.Deprecated('Use setBandResponseDescriptor instead') +const SetBandResponse$json = { + '1': 'SetBandResponse', + '2': [ + {'1': 'band', '3': 1, '4': 1, '5': 14, '6': '.automotivegradelinux.Band', '10': 'band'}, + ], +}; + +/// Descriptor for `SetBandResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List setBandResponseDescriptor = $convert.base64Decode( + 'Cg9TZXRCYW5kUmVzcG9uc2USLgoEYmFuZBgBIAEoDjIaLmF1dG9tb3RpdmVncmFkZWxpbnV4Lk' + 'JhbmRSBGJhbmQ='); + +@$core.Deprecated('Use getBandSupportedRequestDescriptor instead') +const GetBandSupportedRequest$json = { + '1': 'GetBandSupportedRequest', + '2': [ + {'1': 'band', '3': 1, '4': 1, '5': 14, '6': '.automotivegradelinux.Band', '10': 'band'}, + ], +}; + +/// Descriptor for `GetBandSupportedRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List getBandSupportedRequestDescriptor = $convert.base64Decode( + 'ChdHZXRCYW5kU3VwcG9ydGVkUmVxdWVzdBIuCgRiYW5kGAEgASgOMhouYXV0b21vdGl2ZWdyYW' + 'RlbGludXguQmFuZFIEYmFuZA=='); + +@$core.Deprecated('Use getBandSupportedResponseDescriptor instead') +const GetBandSupportedResponse$json = { + '1': 'GetBandSupportedResponse', + '2': [ + {'1': 'supported', '3': 1, '4': 1, '5': 8, '10': 'supported'}, + ], +}; + +/// Descriptor for `GetBandSupportedResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List getBandSupportedResponseDescriptor = $convert.base64Decode( + 'ChhHZXRCYW5kU3VwcG9ydGVkUmVzcG9uc2USHAoJc3VwcG9ydGVkGAEgASgIUglzdXBwb3J0ZW' + 'Q='); + +@$core.Deprecated('Use getBandParametersRequestDescriptor instead') +const GetBandParametersRequest$json = { + '1': 'GetBandParametersRequest', + '2': [ + {'1': 'band', '3': 1, '4': 1, '5': 14, '6': '.automotivegradelinux.Band', '10': 'band'}, + ], +}; + +/// Descriptor for `GetBandParametersRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List getBandParametersRequestDescriptor = $convert.base64Decode( + 'ChhHZXRCYW5kUGFyYW1ldGVyc1JlcXVlc3QSLgoEYmFuZBgBIAEoDjIaLmF1dG9tb3RpdmVncm' + 'FkZWxpbnV4LkJhbmRSBGJhbmQ='); + +@$core.Deprecated('Use getBandParametersResponseDescriptor instead') +const GetBandParametersResponse$json = { + '1': 'GetBandParametersResponse', + '2': [ + {'1': 'min', '3': 1, '4': 1, '5': 13, '10': 'min'}, + {'1': 'max', '3': 2, '4': 1, '5': 13, '10': 'max'}, + {'1': 'step', '3': 3, '4': 1, '5': 13, '10': 'step'}, + ], +}; + +/// Descriptor for `GetBandParametersResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List getBandParametersResponseDescriptor = $convert.base64Decode( + 'ChlHZXRCYW5kUGFyYW1ldGVyc1Jlc3BvbnNlEhAKA21pbhgBIAEoDVIDbWluEhAKA21heBgCIA' + 'EoDVIDbWF4EhIKBHN0ZXAYAyABKA1SBHN0ZXA='); + +@$core.Deprecated('Use getStereoModeRequestDescriptor instead') +const GetStereoModeRequest$json = { + '1': 'GetStereoModeRequest', +}; + +/// Descriptor for `GetStereoModeRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List getStereoModeRequestDescriptor = $convert.base64Decode( + 'ChRHZXRTdGVyZW9Nb2RlUmVxdWVzdA=='); + +@$core.Deprecated('Use getStereoModeResponseDescriptor instead') +const GetStereoModeResponse$json = { + '1': 'GetStereoModeResponse', + '2': [ + {'1': 'mode', '3': 1, '4': 1, '5': 14, '6': '.automotivegradelinux.StereoMode', '10': 'mode'}, + ], +}; + +/// Descriptor for `GetStereoModeResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List getStereoModeResponseDescriptor = $convert.base64Decode( + 'ChVHZXRTdGVyZW9Nb2RlUmVzcG9uc2USNAoEbW9kZRgBIAEoDjIgLmF1dG9tb3RpdmVncmFkZW' + 'xpbnV4LlN0ZXJlb01vZGVSBG1vZGU='); + +@$core.Deprecated('Use setStereoModeRequestDescriptor instead') +const SetStereoModeRequest$json = { + '1': 'SetStereoModeRequest', + '2': [ + {'1': 'mode', '3': 1, '4': 1, '5': 14, '6': '.automotivegradelinux.StereoMode', '10': 'mode'}, + ], +}; + +/// Descriptor for `SetStereoModeRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List setStereoModeRequestDescriptor = $convert.base64Decode( + 'ChRTZXRTdGVyZW9Nb2RlUmVxdWVzdBI0CgRtb2RlGAEgASgOMiAuYXV0b21vdGl2ZWdyYWRlbG' + 'ludXguU3RlcmVvTW9kZVIEbW9kZQ=='); + +@$core.Deprecated('Use setStereoModeResponseDescriptor instead') +const SetStereoModeResponse$json = { + '1': 'SetStereoModeResponse', + '2': [ + {'1': 'mode', '3': 1, '4': 1, '5': 14, '6': '.automotivegradelinux.StereoMode', '10': 'mode'}, + ], +}; + +/// Descriptor for `SetStereoModeResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List setStereoModeResponseDescriptor = $convert.base64Decode( + 'ChVTZXRTdGVyZW9Nb2RlUmVzcG9uc2USNAoEbW9kZRgBIAEoDjIgLmF1dG9tb3RpdmVncmFkZW' + 'xpbnV4LlN0ZXJlb01vZGVSBG1vZGU='); + +@$core.Deprecated('Use startRequestDescriptor instead') +const StartRequest$json = { + '1': 'StartRequest', +}; + +/// Descriptor for `StartRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List startRequestDescriptor = $convert.base64Decode( + 'CgxTdGFydFJlcXVlc3Q='); + +@$core.Deprecated('Use startResponseDescriptor instead') +const StartResponse$json = { + '1': 'StartResponse', +}; + +/// Descriptor for `StartResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List startResponseDescriptor = $convert.base64Decode( + 'Cg1TdGFydFJlc3BvbnNl'); + +@$core.Deprecated('Use stopRequestDescriptor instead') +const StopRequest$json = { + '1': 'StopRequest', +}; + +/// Descriptor for `StopRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List stopRequestDescriptor = $convert.base64Decode( + 'CgtTdG9wUmVxdWVzdA=='); + +@$core.Deprecated('Use stopResponseDescriptor instead') +const StopResponse$json = { + '1': 'StopResponse', +}; + +/// Descriptor for `StopResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List stopResponseDescriptor = $convert.base64Decode( + 'CgxTdG9wUmVzcG9uc2U='); + +@$core.Deprecated('Use scanStartRequestDescriptor instead') +const ScanStartRequest$json = { + '1': 'ScanStartRequest', + '2': [ + {'1': 'direction', '3': 1, '4': 1, '5': 14, '6': '.automotivegradelinux.ScanDirection', '10': 'direction'}, + ], +}; + +/// Descriptor for `ScanStartRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List scanStartRequestDescriptor = $convert.base64Decode( + 'ChBTY2FuU3RhcnRSZXF1ZXN0EkEKCWRpcmVjdGlvbhgBIAEoDjIjLmF1dG9tb3RpdmVncmFkZW' + 'xpbnV4LlNjYW5EaXJlY3Rpb25SCWRpcmVjdGlvbg=='); + +@$core.Deprecated('Use scanStartResponseDescriptor instead') +const ScanStartResponse$json = { + '1': 'ScanStartResponse', +}; + +/// Descriptor for `ScanStartResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List scanStartResponseDescriptor = $convert.base64Decode( + 'ChFTY2FuU3RhcnRSZXNwb25zZQ=='); + +@$core.Deprecated('Use scanStopRequestDescriptor instead') +const ScanStopRequest$json = { + '1': 'ScanStopRequest', +}; + +/// Descriptor for `ScanStopRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List scanStopRequestDescriptor = $convert.base64Decode( + 'Cg9TY2FuU3RvcFJlcXVlc3Q='); + +@$core.Deprecated('Use scanStopResponseDescriptor instead') +const ScanStopResponse$json = { + '1': 'ScanStopResponse', +}; + +/// Descriptor for `ScanStopResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List scanStopResponseDescriptor = $convert.base64Decode( + 'ChBTY2FuU3RvcFJlc3BvbnNl'); + +@$core.Deprecated('Use getRDSRequestDescriptor instead') +const GetRDSRequest$json = { + '1': 'GetRDSRequest', +}; + +/// Descriptor for `GetRDSRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List getRDSRequestDescriptor = $convert.base64Decode( + 'Cg1HZXRSRFNSZXF1ZXN0'); + +@$core.Deprecated('Use getRDSResponseDescriptor instead') +const GetRDSResponse$json = { + '1': 'GetRDSResponse', + '2': [ + {'1': 'name', '3': 1, '4': 1, '5': 9, '10': 'name'}, + {'1': 'radio_text', '3': 2, '4': 1, '5': 9, '10': 'radioText'}, + {'1': 'alternatives', '3': 3, '4': 1, '5': 9, '10': 'alternatives'}, + {'1': 'minute', '3': 4, '4': 1, '5': 9, '10': 'minute'}, + {'1': 'hour', '3': 5, '4': 1, '5': 9, '10': 'hour'}, + {'1': 'day', '3': 6, '4': 1, '5': 9, '10': 'day'}, + {'1': 'month', '3': 7, '4': 1, '5': 9, '10': 'month'}, + {'1': 'year', '3': 8, '4': 1, '5': 9, '10': 'year'}, + {'1': 'pi', '3': 9, '4': 1, '5': 9, '10': 'pi'}, + {'1': 'pty', '3': 10, '4': 1, '5': 9, '10': 'pty'}, + {'1': 'ta', '3': 11, '4': 1, '5': 9, '10': 'ta'}, + {'1': 'tp', '3': 12, '4': 1, '5': 9, '10': 'tp'}, + {'1': 'ms', '3': 13, '4': 1, '5': 9, '10': 'ms'}, + ], +}; + +/// Descriptor for `GetRDSResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List getRDSResponseDescriptor = $convert.base64Decode( + 'Cg5HZXRSRFNSZXNwb25zZRISCgRuYW1lGAEgASgJUgRuYW1lEh0KCnJhZGlvX3RleHQYAiABKA' + 'lSCXJhZGlvVGV4dBIiCgxhbHRlcm5hdGl2ZXMYAyABKAlSDGFsdGVybmF0aXZlcxIWCgZtaW51' + 'dGUYBCABKAlSBm1pbnV0ZRISCgRob3VyGAUgASgJUgRob3VyEhAKA2RheRgGIAEoCVIDZGF5Eh' + 'QKBW1vbnRoGAcgASgJUgVtb250aBISCgR5ZWFyGAggASgJUgR5ZWFyEg4KAnBpGAkgASgJUgJw' + 'aRIQCgNwdHkYCiABKAlSA3B0eRIOCgJ0YRgLIAEoCVICdGESDgoCdHAYDCABKAlSAnRwEg4KAm' + '1zGA0gASgJUgJtcw=='); + +@$core.Deprecated('Use getQualityRequestDescriptor instead') +const GetQualityRequest$json = { + '1': 'GetQualityRequest', +}; + +/// Descriptor for `GetQualityRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List getQualityRequestDescriptor = $convert.base64Decode( + 'ChFHZXRRdWFsaXR5UmVxdWVzdA=='); + +@$core.Deprecated('Use getQualityResponseDescriptor instead') +const GetQualityResponse$json = { + '1': 'GetQualityResponse', +}; + +/// Descriptor for `GetQualityResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List getQualityResponseDescriptor = $convert.base64Decode( + 'ChJHZXRRdWFsaXR5UmVzcG9uc2U='); + +@$core.Deprecated('Use setAlternativeFrequencyRequestDescriptor instead') +const SetAlternativeFrequencyRequest$json = { + '1': 'SetAlternativeFrequencyRequest', + '2': [ + {'1': 'frequency', '3': 1, '4': 1, '5': 13, '10': 'frequency'}, + ], +}; + +/// Descriptor for `SetAlternativeFrequencyRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List setAlternativeFrequencyRequestDescriptor = $convert.base64Decode( + 'Ch5TZXRBbHRlcm5hdGl2ZUZyZXF1ZW5jeVJlcXVlc3QSHAoJZnJlcXVlbmN5GAEgASgNUglmcm' + 'VxdWVuY3k='); + +@$core.Deprecated('Use setAlternativeFrequencyResponseDescriptor instead') +const SetAlternativeFrequencyResponse$json = { + '1': 'SetAlternativeFrequencyResponse', + '2': [ + {'1': 'frequency', '3': 1, '4': 1, '5': 13, '10': 'frequency'}, + ], +}; + +/// Descriptor for `SetAlternativeFrequencyResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List setAlternativeFrequencyResponseDescriptor = $convert.base64Decode( + 'Ch9TZXRBbHRlcm5hdGl2ZUZyZXF1ZW5jeVJlc3BvbnNlEhwKCWZyZXF1ZW5jeRgBIAEoDVIJZn' + 'JlcXVlbmN5'); + +@$core.Deprecated('Use statusRequestDescriptor instead') +const StatusRequest$json = { + '1': 'StatusRequest', +}; + +/// Descriptor for `StatusRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List statusRequestDescriptor = $convert.base64Decode( + 'Cg1TdGF0dXNSZXF1ZXN0'); + +@$core.Deprecated('Use bandStatusDescriptor instead') +const BandStatus$json = { + '1': 'BandStatus', + '2': [ + {'1': 'band', '3': 1, '4': 1, '5': 14, '6': '.automotivegradelinux.Band', '10': 'band'}, + ], +}; + +/// Descriptor for `BandStatus`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List bandStatusDescriptor = $convert.base64Decode( + 'CgpCYW5kU3RhdHVzEi4KBGJhbmQYASABKA4yGi5hdXRvbW90aXZlZ3JhZGVsaW51eC5CYW5kUg' + 'RiYW5k'); + +@$core.Deprecated('Use frequencyStatusDescriptor instead') +const FrequencyStatus$json = { + '1': 'FrequencyStatus', + '2': [ + {'1': 'frequency', '3': 1, '4': 1, '5': 13, '10': 'frequency'}, + ], +}; + +/// Descriptor for `FrequencyStatus`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List frequencyStatusDescriptor = $convert.base64Decode( + 'Cg9GcmVxdWVuY3lTdGF0dXMSHAoJZnJlcXVlbmN5GAEgASgNUglmcmVxdWVuY3k='); + +@$core.Deprecated('Use playStatusDescriptor instead') +const PlayStatus$json = { + '1': 'PlayStatus', + '2': [ + {'1': 'playing', '3': 1, '4': 1, '5': 8, '10': 'playing'}, + ], +}; + +/// Descriptor for `PlayStatus`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List playStatusDescriptor = $convert.base64Decode( + 'CgpQbGF5U3RhdHVzEhgKB3BsYXlpbmcYASABKAhSB3BsYXlpbmc='); + +@$core.Deprecated('Use scanStatusDescriptor instead') +const ScanStatus$json = { + '1': 'ScanStatus', + '2': [ + {'1': 'station_found', '3': 1, '4': 1, '5': 8, '10': 'stationFound'}, + ], +}; + +/// Descriptor for `ScanStatus`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List scanStatusDescriptor = $convert.base64Decode( + 'CgpTY2FuU3RhdHVzEiMKDXN0YXRpb25fZm91bmQYASABKAhSDHN0YXRpb25Gb3VuZA=='); + +@$core.Deprecated('Use stereoStatusDescriptor instead') +const StereoStatus$json = { + '1': 'StereoStatus', + '2': [ + {'1': 'mode', '3': 1, '4': 1, '5': 14, '6': '.automotivegradelinux.StereoMode', '10': 'mode'}, + ], +}; + +/// Descriptor for `StereoStatus`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List stereoStatusDescriptor = $convert.base64Decode( + 'CgxTdGVyZW9TdGF0dXMSNAoEbW9kZRgBIAEoDjIgLmF1dG9tb3RpdmVncmFkZWxpbnV4LlN0ZX' + 'Jlb01vZGVSBG1vZGU='); + +@$core.Deprecated('Use statusResponseDescriptor instead') +const StatusResponse$json = { + '1': 'StatusResponse', + '2': [ + {'1': 'band', '3': 1, '4': 1, '5': 11, '6': '.automotivegradelinux.BandStatus', '9': 0, '10': 'band'}, + {'1': 'frequency', '3': 2, '4': 1, '5': 11, '6': '.automotivegradelinux.FrequencyStatus', '9': 0, '10': 'frequency'}, + {'1': 'play', '3': 3, '4': 1, '5': 11, '6': '.automotivegradelinux.PlayStatus', '9': 0, '10': 'play'}, + {'1': 'stereo', '3': 4, '4': 1, '5': 11, '6': '.automotivegradelinux.StereoStatus', '9': 0, '10': 'stereo'}, + {'1': 'scan', '3': 5, '4': 1, '5': 11, '6': '.automotivegradelinux.ScanStatus', '9': 0, '10': 'scan'}, + ], + '8': [ + {'1': 'status'}, + ], +}; + +/// Descriptor for `StatusResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List statusResponseDescriptor = $convert.base64Decode( + 'Cg5TdGF0dXNSZXNwb25zZRI2CgRiYW5kGAEgASgLMiAuYXV0b21vdGl2ZWdyYWRlbGludXguQm' + 'FuZFN0YXR1c0gAUgRiYW5kEkUKCWZyZXF1ZW5jeRgCIAEoCzIlLmF1dG9tb3RpdmVncmFkZWxp' + 'bnV4LkZyZXF1ZW5jeVN0YXR1c0gAUglmcmVxdWVuY3kSNgoEcGxheRgDIAEoCzIgLmF1dG9tb3' + 'RpdmVncmFkZWxpbnV4LlBsYXlTdGF0dXNIAFIEcGxheRI8CgZzdGVyZW8YBCABKAsyIi5hdXRv' + 'bW90aXZlZ3JhZGVsaW51eC5TdGVyZW9TdGF0dXNIAFIGc3RlcmVvEjYKBHNjYW4YBSABKAsyIC' + '5hdXRvbW90aXZlZ3JhZGVsaW51eC5TY2FuU3RhdHVzSABSBHNjYW5CCAoGc3RhdHVz'); + diff --git a/protos/lib/src/generated/todo.pb.dart b/protos/lib/src/generated/todo.pb.dart deleted file mode 100644 index d42a385..0000000 --- a/protos/lib/src/generated/todo.pb.dart +++ /dev/null @@ -1,146 +0,0 @@ -// -// Generated code. Do not modify. -// source: todo.proto -// -// @dart = 2.12 - -// ignore_for_file: annotate_overrides, camel_case_types, comment_references -// ignore_for_file: constant_identifier_names, library_prefixes -// ignore_for_file: non_constant_identifier_names, prefer_final_fields -// ignore_for_file: unnecessary_import, unnecessary_this, unused_import - -import 'dart:core' as $core; - -import 'package:protobuf/protobuf.dart' as $pb; - -class Todo extends $pb.GeneratedMessage { - factory Todo({ - $core.int? id, - $core.String? title, - $core.bool? completed, - }) { - final $result = create(); - if (id != null) { - $result.id = id; - } - if (title != null) { - $result.title = title; - } - if (completed != null) { - $result.completed = completed; - } - return $result; - } - Todo._() : super(); - factory Todo.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory Todo.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); - - static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Todo', createEmptyInstance: create) - ..a<$core.int>(1, _omitFieldNames ? '' : 'id', $pb.PbFieldType.O3) - ..aOS(2, _omitFieldNames ? '' : 'title') - ..aOB(3, _omitFieldNames ? '' : 'completed') - ..hasRequiredFields = false - ; - - @$core.Deprecated( - 'Using this can add significant overhead to your binary. ' - 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' - 'Will be removed in next major version') - Todo clone() => Todo()..mergeFromMessage(this); - @$core.Deprecated( - 'Using this can add significant overhead to your binary. ' - 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' - 'Will be removed in next major version') - Todo copyWith(void Function(Todo) updates) => super.copyWith((message) => updates(message as Todo)) as Todo; - - $pb.BuilderInfo get info_ => _i; - - @$core.pragma('dart2js:noInline') - static Todo create() => Todo._(); - Todo createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); - @$core.pragma('dart2js:noInline') - static Todo getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); - static Todo? _defaultInstance; - - @$pb.TagNumber(1) - $core.int get id => $_getIZ(0); - @$pb.TagNumber(1) - set id($core.int v) { $_setSignedInt32(0, v); } - @$pb.TagNumber(1) - $core.bool hasId() => $_has(0); - @$pb.TagNumber(1) - void clearId() => clearField(1); - - @$pb.TagNumber(2) - $core.String get title => $_getSZ(1); - @$pb.TagNumber(2) - set title($core.String v) { $_setString(1, v); } - @$pb.TagNumber(2) - $core.bool hasTitle() => $_has(1); - @$pb.TagNumber(2) - void clearTitle() => clearField(2); - - @$pb.TagNumber(3) - $core.bool get completed => $_getBF(2); - @$pb.TagNumber(3) - set completed($core.bool v) { $_setBool(2, v); } - @$pb.TagNumber(3) - $core.bool hasCompleted() => $_has(2); - @$pb.TagNumber(3) - void clearCompleted() => clearField(3); -} - -class GetTodoByIdRequest extends $pb.GeneratedMessage { - factory GetTodoByIdRequest({ - $core.int? id, - }) { - final $result = create(); - if (id != null) { - $result.id = id; - } - return $result; - } - GetTodoByIdRequest._() : super(); - factory GetTodoByIdRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory GetTodoByIdRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); - - static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetTodoByIdRequest', createEmptyInstance: create) - ..a<$core.int>(1, _omitFieldNames ? '' : 'id', $pb.PbFieldType.O3) - ..hasRequiredFields = false - ; - - @$core.Deprecated( - 'Using this can add significant overhead to your binary. ' - 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' - 'Will be removed in next major version') - GetTodoByIdRequest clone() => GetTodoByIdRequest()..mergeFromMessage(this); - @$core.Deprecated( - 'Using this can add significant overhead to your binary. ' - 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' - 'Will be removed in next major version') - GetTodoByIdRequest copyWith(void Function(GetTodoByIdRequest) updates) => super.copyWith((message) => updates(message as GetTodoByIdRequest)) as GetTodoByIdRequest; - - $pb.BuilderInfo get info_ => _i; - - @$core.pragma('dart2js:noInline') - static GetTodoByIdRequest create() => GetTodoByIdRequest._(); - GetTodoByIdRequest createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); - @$core.pragma('dart2js:noInline') - static GetTodoByIdRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); - static GetTodoByIdRequest? _defaultInstance; - - @$pb.TagNumber(1) - $core.int get id => $_getIZ(0); - @$pb.TagNumber(1) - set id($core.int v) { $_setSignedInt32(0, v); } - @$pb.TagNumber(1) - $core.bool hasId() => $_has(0); - @$pb.TagNumber(1) - void clearId() => clearField(1); -} - - -const _omitFieldNames = $core.bool.fromEnvironment('protobuf.omit_field_names'); -const _omitMessageNames = $core.bool.fromEnvironment('protobuf.omit_message_names'); diff --git a/protos/lib/src/generated/todo.pbenum.dart b/protos/lib/src/generated/todo.pbenum.dart deleted file mode 100644 index 9569c62..0000000 --- a/protos/lib/src/generated/todo.pbenum.dart +++ /dev/null @@ -1,11 +0,0 @@ -// -// Generated code. Do not modify. -// source: todo.proto -// -// @dart = 2.12 - -// ignore_for_file: annotate_overrides, camel_case_types, comment_references -// ignore_for_file: constant_identifier_names, library_prefixes -// ignore_for_file: non_constant_identifier_names, prefer_final_fields -// ignore_for_file: unnecessary_import, unnecessary_this, unused_import - diff --git a/protos/lib/src/generated/todo.pbgrpc.dart b/protos/lib/src/generated/todo.pbgrpc.dart deleted file mode 100644 index 35e0860..0000000 --- a/protos/lib/src/generated/todo.pbgrpc.dart +++ /dev/null @@ -1,79 +0,0 @@ -// -// Generated code. Do not modify. -// source: todo.proto -// -// @dart = 2.12 - -// ignore_for_file: annotate_overrides, camel_case_types, comment_references -// ignore_for_file: constant_identifier_names, library_prefixes -// ignore_for_file: non_constant_identifier_names, prefer_final_fields -// ignore_for_file: unnecessary_import, unnecessary_this, unused_import - -import 'dart:async' as $async; -import 'dart:core' as $core; - -import 'package:grpc/service_api.dart' as $grpc; -import 'package:protobuf/protobuf.dart' as $pb; - -import 'todo.pb.dart' as $0; - -export 'todo.pb.dart'; - -@$pb.GrpcServiceName('TodoService') -class TodoServiceClient extends $grpc.Client { - static final _$getTodo = $grpc.ClientMethod<$0.GetTodoByIdRequest, $0.Todo>( - '/TodoService/getTodo', - ($0.GetTodoByIdRequest value) => value.writeToBuffer(), - ($core.List<$core.int> value) => $0.Todo.fromBuffer(value)); - static final _$getTodoStream = $grpc.ClientMethod<$0.GetTodoByIdRequest, $0.Todo>( - '/TodoService/getTodoStream', - ($0.GetTodoByIdRequest value) => value.writeToBuffer(), - ($core.List<$core.int> value) => $0.Todo.fromBuffer(value)); - - TodoServiceClient($grpc.ClientChannel channel, - {$grpc.CallOptions? options, - $core.Iterable<$grpc.ClientInterceptor>? interceptors}) - : super(channel, options: options, - interceptors: interceptors); - - $grpc.ResponseFuture<$0.Todo> getTodo($0.GetTodoByIdRequest request, {$grpc.CallOptions? options}) { - return $createUnaryCall(_$getTodo, request, options: options); - } - - $grpc.ResponseStream<$0.Todo> getTodoStream($0.GetTodoByIdRequest request, {$grpc.CallOptions? options}) { - return $createStreamingCall(_$getTodoStream, $async.Stream.fromIterable([request]), options: options); - } -} - -@$pb.GrpcServiceName('TodoService') -abstract class TodoServiceBase extends $grpc.Service { - $core.String get $name => 'TodoService'; - - TodoServiceBase() { - $addMethod($grpc.ServiceMethod<$0.GetTodoByIdRequest, $0.Todo>( - 'getTodo', - getTodo_Pre, - false, - false, - ($core.List<$core.int> value) => $0.GetTodoByIdRequest.fromBuffer(value), - ($0.Todo value) => value.writeToBuffer())); - $addMethod($grpc.ServiceMethod<$0.GetTodoByIdRequest, $0.Todo>( - 'getTodoStream', - getTodoStream_Pre, - false, - true, - ($core.List<$core.int> value) => $0.GetTodoByIdRequest.fromBuffer(value), - ($0.Todo value) => value.writeToBuffer())); - } - - $async.Future<$0.Todo> getTodo_Pre($grpc.ServiceCall call, $async.Future<$0.GetTodoByIdRequest> request) async { - return getTodo(call, await request); - } - - $async.Stream<$0.Todo> getTodoStream_Pre($grpc.ServiceCall call, $async.Future<$0.GetTodoByIdRequest> request) async* { - yield* getTodoStream(call, await request); - } - - $async.Future<$0.Todo> getTodo($grpc.ServiceCall call, $0.GetTodoByIdRequest request); - $async.Stream<$0.Todo> getTodoStream($grpc.ServiceCall call, $0.GetTodoByIdRequest request); -} diff --git a/protos/lib/src/generated/todo.pbjson.dart b/protos/lib/src/generated/todo.pbjson.dart deleted file mode 100644 index 8d6afaa..0000000 --- a/protos/lib/src/generated/todo.pbjson.dart +++ /dev/null @@ -1,42 +0,0 @@ -// -// Generated code. Do not modify. -// source: todo.proto -// -// @dart = 2.12 - -// ignore_for_file: annotate_overrides, camel_case_types, comment_references -// ignore_for_file: constant_identifier_names, library_prefixes -// ignore_for_file: non_constant_identifier_names, prefer_final_fields -// ignore_for_file: unnecessary_import, unnecessary_this, unused_import - -import 'dart:convert' as $convert; -import 'dart:core' as $core; -import 'dart:typed_data' as $typed_data; - -@$core.Deprecated('Use todoDescriptor instead') -const Todo$json = { - '1': 'Todo', - '2': [ - {'1': 'id', '3': 1, '4': 1, '5': 5, '10': 'id'}, - {'1': 'title', '3': 2, '4': 1, '5': 9, '10': 'title'}, - {'1': 'completed', '3': 3, '4': 1, '5': 8, '10': 'completed'}, - ], -}; - -/// Descriptor for `Todo`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List todoDescriptor = $convert.base64Decode( - 'CgRUb2RvEg4KAmlkGAEgASgFUgJpZBIUCgV0aXRsZRgCIAEoCVIFdGl0bGUSHAoJY29tcGxldG' - 'VkGAMgASgIUgljb21wbGV0ZWQ='); - -@$core.Deprecated('Use getTodoByIdRequestDescriptor instead') -const GetTodoByIdRequest$json = { - '1': 'GetTodoByIdRequest', - '2': [ - {'1': 'id', '3': 1, '4': 1, '5': 5, '10': 'id'}, - ], -}; - -/// Descriptor for `GetTodoByIdRequest`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List getTodoByIdRequestDescriptor = $convert.base64Decode( - 'ChJHZXRUb2RvQnlJZFJlcXVlc3QSDgoCaWQYASABKAVSAmlk'); - diff --git a/protos/lib/val-api.dart b/protos/lib/val-api.dart new file mode 100644 index 0000000..de6dfac --- /dev/null +++ b/protos/lib/val-api.dart @@ -0,0 +1,16 @@ +library val_api; + +export 'src/generated/google/protobuf/timestamp.pb.dart'; +export 'src/generated/google/protobuf/timestamp.pbenum.dart'; +export 'src/generated/google/protobuf/timestamp.pbjson.dart'; + +export 'src/generated/kuksa/val/v1/types.pb.dart'; +export 'src/generated/kuksa/val/v1/types.pbenum.dart'; +export 'src/generated/kuksa/val/v1/types.pbjson.dart'; + +export 'src/generated/kuksa/val/v1/val.pb.dart'; +export 'src/generated/kuksa/val/v1/val.pbenum.dart'; +export 'src/generated/kuksa/val/v1/val.pbjson.dart'; +export 'src/generated/kuksa/val/v1/val.pbgrpc.dart'; + +export 'package:grpc/grpc.dart'; diff --git a/protos/protos/radio.proto b/protos/protos/radio.proto new file mode 100644 index 0000000..c7ee16f --- /dev/null +++ b/protos/protos/radio.proto @@ -0,0 +1,205 @@ +syntax = "proto3"; + +package automotivegradelinux; + +service Radio { + rpc GetFrequency(GetFrequencyRequest) returns (GetFrequencyResponse) {} + rpc SetFrequency(SetFrequencyRequest) returns (SetFrequencyResponse) {} + + rpc GetBand(GetBandRequest) returns (GetBandResponse) {} + rpc SetBand(SetBandRequest) returns (SetBandResponse) {} + + rpc GetBandSupported(GetBandSupportedRequest) returns (GetBandSupportedResponse) {} + rpc GetBandParameters(GetBandParametersRequest) returns (GetBandParametersResponse) {} + + rpc GetStereoMode(GetStereoModeRequest) returns (GetStereoModeResponse) {} + rpc SetStereoMode(SetStereoModeRequest) returns (SetStereoModeResponse) {} + + rpc Start(StartRequest) returns (StartResponse) {} + rpc Stop(StopRequest) returns (StopResponse) {} + + rpc ScanStart(ScanStartRequest) returns (ScanStartResponse) {} + rpc ScanStop(ScanStopRequest) returns (ScanStopResponse) {} + + rpc GetRDS(GetRDSRequest) returns (GetRDSResponse) {} + + rpc GetQuality(GetQualityRequest) returns (GetQualityResponse) {} + + rpc SetAlternativeFrequency(SetAlternativeFrequencyRequest) returns (SetAlternativeFrequencyResponse) {} + + rpc GetStatusEvents(StatusRequest) returns (stream StatusResponse) {} +} + +message GetFrequencyRequest { +} + +message GetFrequencyResponse { + uint32 frequency = 1; +} + +message SetFrequencyRequest { + uint32 frequency = 1; +} + +message SetFrequencyResponse { + uint32 frequency = 1; +} + +message GetBandRequest { +} + +enum Band { + BAND_UNSPECIFIED = 0; + BAND_AM = 1; + BAND_FM = 2; + BAND_DBS = 3; +} + +message GetBandResponse { + Band band = 1; +} + +message SetBandRequest { + Band band = 1; +} + +message SetBandResponse { + Band band = 1; +} + +message GetBandSupportedRequest { + Band band = 1; +} + +message GetBandSupportedResponse { + bool supported = 1; +} + +message GetBandParametersRequest { + Band band = 1; +} + +message GetBandParametersResponse { + uint32 min = 1; + uint32 max = 2; + uint32 step = 3; +} + +enum StereoMode { + STEREO_MODE_UNSPECIFIED = 0; + STEREO_MODE_MONO = 1; + STEREO_MODE_STEREO = 2; +} + +message GetStereoModeRequest { +} + +message GetStereoModeResponse { + StereoMode mode = 1; +} + +message SetStereoModeRequest { + StereoMode mode = 1; +} + +message SetStereoModeResponse { + StereoMode mode = 1; +} + +message StartRequest { +} + +message StartResponse { +} + +message StopRequest { +} + +message StopResponse { +} + +enum ScanDirection { + SCAN_DIRECTION_UNSPECIFIED = 0; + SCAN_DIRECTION_FORWARD = 1; + SCAN_DIRECTION_BACKWARD = 2; +} + +message ScanStartRequest { + ScanDirection direction = 1; +} + +message ScanStartResponse { +} + +message ScanStopRequest { +} + +message ScanStopResponse { +} + +message GetRDSRequest { +} + +// NOTE: This is a placeholder and will be revised! +message GetRDSResponse { + string name = 1; + string radio_text = 2; + string alternatives = 3; + string minute = 4; + string hour = 5; + string day = 6; + string month = 7; + string year = 8; + string pi = 9; + string pty = 10; + string ta = 11; + string tp = 12; + string ms = 13; +} + +message GetQualityRequest { +} + +message GetQualityResponse { +} + +message SetAlternativeFrequencyRequest { + uint32 frequency = 1; +} + +message SetAlternativeFrequencyResponse { + uint32 frequency = 1; +} + +message StatusRequest { +} + +message BandStatus { + Band band = 1; +} + +message FrequencyStatus { + uint32 frequency = 1; +} + +message PlayStatus { + bool playing = 1; +} + +message ScanStatus { + bool station_found = 1; +} + +message StereoStatus { + StereoMode mode = 1; +} + +message StatusResponse { + oneof status { + BandStatus band = 1; + FrequencyStatus frequency = 2; + PlayStatus play = 3; + StereoStatus stereo = 4; + ScanStatus scan = 5; + } +} diff --git a/protos/protos/todo.proto b/protos/protos/todo.proto deleted file mode 100644 index 9152814..0000000 --- a/protos/protos/todo.proto +++ /dev/null @@ -1,16 +0,0 @@ -syntax = 'proto3'; - -message Todo { - int32 id = 1; - string title = 2; - bool completed = 3; -} - -message GetTodoByIdRequest { - int32 id = 1; -} -service TodoService { - rpc getTodo(GetTodoByIdRequest) returns (Todo); - rpc getTodoStream(GetTodoByIdRequest) returns (stream Todo); -} - -- cgit 1.2.3-korg