Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1098)

Unified Diff: mojo/dart/packages/mojo_services/lib/mojo/media/media_types.mojom.dart

Issue 1509323002: Mojom updates for Motown. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: mojo/dart/packages/mojo_services/lib/mojo/media/media_types.mojom.dart
diff --git a/mojo/dart/packages/mojo_services/lib/mojo/media/media_types.mojom.dart b/mojo/dart/packages/mojo_services/lib/mojo/media/media_types.mojom.dart
new file mode 100644
index 0000000000000000000000000000000000000000..358decafa1f133128b30761f7ae4271ea4a6acb9
--- /dev/null
+++ b/mojo/dart/packages/mojo_services/lib/mojo/media/media_types.mojom.dart
@@ -0,0 +1,2153 @@
+// Copyright 2014 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+library media_types_mojom;
+
+import 'dart:async';
+
+import 'package:mojo/bindings.dart' as bindings;
+import 'package:mojo/core.dart' as core;
+class MediaTypeScheme extends bindings.MojoEnum {
+ static const UNKNOWN = const MediaTypeScheme._(0);
+ static const NONE = const MediaTypeScheme._(1);
+ static const ANY_ELEMENTARY = const MediaTypeScheme._(2);
+ static const ANY_AUDIO = const MediaTypeScheme._(3);
+ static const ANY_VIDEO = const MediaTypeScheme._(4);
+ static const ANY_SUBPICTURE = const MediaTypeScheme._(5);
+ static const ANY_TEXT = const MediaTypeScheme._(6);
+ static const ANY_MULTIPLEXED = const MediaTypeScheme._(7);
+ static const ANY = const MediaTypeScheme._(8);
+ static const MULTIPLEXED = const MediaTypeScheme._(9);
+ static const LPCM = const MediaTypeScheme._(10);
+ static const COMPRESSED_AUDIO = const MediaTypeScheme._(11);
+ static const VIDEO = const MediaTypeScheme._(12);
+
+ const MediaTypeScheme._(int v) : super(v);
+
+ static const Map<String, MediaTypeScheme> valuesMap = const {
+ "UNKNOWN": UNKNOWN,
+ "NONE": NONE,
+ "ANY_ELEMENTARY": ANY_ELEMENTARY,
+ "ANY_AUDIO": ANY_AUDIO,
+ "ANY_VIDEO": ANY_VIDEO,
+ "ANY_SUBPICTURE": ANY_SUBPICTURE,
+ "ANY_TEXT": ANY_TEXT,
+ "ANY_MULTIPLEXED": ANY_MULTIPLEXED,
+ "ANY": ANY,
+ "MULTIPLEXED": MULTIPLEXED,
+ "LPCM": LPCM,
+ "COMPRESSED_AUDIO": COMPRESSED_AUDIO,
+ "VIDEO": VIDEO,
+ };
+ static const List<MediaTypeScheme> values = const [
+ UNKNOWN,
+ NONE,
+ ANY_ELEMENTARY,
+ ANY_AUDIO,
+ ANY_VIDEO,
+ ANY_SUBPICTURE,
+ ANY_TEXT,
+ ANY_MULTIPLEXED,
+ ANY,
+ MULTIPLEXED,
+ LPCM,
+ COMPRESSED_AUDIO,
+ VIDEO,
+ ];
+
+ static MediaTypeScheme valueOf(String name) => valuesMap[name];
+
+ factory MediaTypeScheme(int v) {
+ switch (v) {
+ case 0:
+ return UNKNOWN;
+ case 1:
+ return NONE;
+ case 2:
+ return ANY_ELEMENTARY;
+ case 3:
+ return ANY_AUDIO;
+ case 4:
+ return ANY_VIDEO;
+ case 5:
+ return ANY_SUBPICTURE;
+ case 6:
+ return ANY_TEXT;
+ case 7:
+ return ANY_MULTIPLEXED;
+ case 8:
+ return ANY;
+ case 9:
+ return MULTIPLEXED;
+ case 10:
+ return LPCM;
+ case 11:
+ return COMPRESSED_AUDIO;
+ case 12:
+ return VIDEO;
+ default:
+ return null;
+ }
+ }
+
+ static MediaTypeScheme decode(bindings.Decoder decoder0, int offset) {
+ int v = decoder0.decodeUint32(offset);
+ MediaTypeScheme result = new MediaTypeScheme(v);
+ if (result == null) {
+ throw new bindings.MojoCodecError(
+ 'Bad value $v for enum MediaTypeScheme.');
+ }
+ return result;
+ }
+
+ String toString() {
+ switch(this) {
+ case UNKNOWN:
+ return 'MediaTypeScheme.UNKNOWN';
+ case NONE:
+ return 'MediaTypeScheme.NONE';
+ case ANY_ELEMENTARY:
+ return 'MediaTypeScheme.ANY_ELEMENTARY';
+ case ANY_AUDIO:
+ return 'MediaTypeScheme.ANY_AUDIO';
+ case ANY_VIDEO:
+ return 'MediaTypeScheme.ANY_VIDEO';
+ case ANY_SUBPICTURE:
+ return 'MediaTypeScheme.ANY_SUBPICTURE';
+ case ANY_TEXT:
+ return 'MediaTypeScheme.ANY_TEXT';
+ case ANY_MULTIPLEXED:
+ return 'MediaTypeScheme.ANY_MULTIPLEXED';
+ case ANY:
+ return 'MediaTypeScheme.ANY';
+ case MULTIPLEXED:
+ return 'MediaTypeScheme.MULTIPLEXED';
+ case LPCM:
+ return 'MediaTypeScheme.LPCM';
+ case COMPRESSED_AUDIO:
+ return 'MediaTypeScheme.COMPRESSED_AUDIO';
+ case VIDEO:
+ return 'MediaTypeScheme.VIDEO';
+ }
+ }
+
+ int toJson() => value;
+}
+class BoolRange extends bindings.MojoEnum {
+ static const FALSE = const BoolRange._(0);
+ static const TRUE = const BoolRange._(1);
+ static const EITHER = const BoolRange._(2);
+
+ const BoolRange._(int v) : super(v);
+
+ static const Map<String, BoolRange> valuesMap = const {
+ "FALSE": FALSE,
+ "TRUE": TRUE,
+ "EITHER": EITHER,
+ };
+ static const List<BoolRange> values = const [
+ FALSE,
+ TRUE,
+ EITHER,
+ ];
+
+ static BoolRange valueOf(String name) => valuesMap[name];
+
+ factory BoolRange(int v) {
+ switch (v) {
+ case 0:
+ return FALSE;
+ case 1:
+ return TRUE;
+ case 2:
+ return EITHER;
+ default:
+ return null;
+ }
+ }
+
+ static BoolRange decode(bindings.Decoder decoder0, int offset) {
+ int v = decoder0.decodeUint32(offset);
+ BoolRange result = new BoolRange(v);
+ if (result == null) {
+ throw new bindings.MojoCodecError(
+ 'Bad value $v for enum BoolRange.');
+ }
+ return result;
+ }
+
+ String toString() {
+ switch(this) {
+ case FALSE:
+ return 'BoolRange.FALSE';
+ case TRUE:
+ return 'BoolRange.TRUE';
+ case EITHER:
+ return 'BoolRange.EITHER';
+ }
+ }
+
+ int toJson() => value;
+}
+class LpcmSampleFormat extends bindings.MojoEnum {
+ static const UNKNOWN = const LpcmSampleFormat._(0);
+ static const ANY = const LpcmSampleFormat._(1);
+ static const UNSIGNED_8 = const LpcmSampleFormat._(2);
+ static const SIGNED_16 = const LpcmSampleFormat._(3);
+ static const SIGNED_16_LITTLE_ENDIAN = const LpcmSampleFormat._(4);
+ static const SIGNED_16_BIG_ENDIAN = const LpcmSampleFormat._(5);
+ static const SIGNED_24_IN_32 = const LpcmSampleFormat._(6);
+ static const SIGNED_24_IN_32_LITTLE_ENDIAN = const LpcmSampleFormat._(7);
+ static const SIGNED_24_IN_32_BIG_ENDIAN = const LpcmSampleFormat._(8);
+ static const FLOAT = const LpcmSampleFormat._(9);
+
+ const LpcmSampleFormat._(int v) : super(v);
+
+ static const Map<String, LpcmSampleFormat> valuesMap = const {
+ "UNKNOWN": UNKNOWN,
+ "ANY": ANY,
+ "UNSIGNED_8": UNSIGNED_8,
+ "SIGNED_16": SIGNED_16,
+ "SIGNED_16_LITTLE_ENDIAN": SIGNED_16_LITTLE_ENDIAN,
+ "SIGNED_16_BIG_ENDIAN": SIGNED_16_BIG_ENDIAN,
+ "SIGNED_24_IN_32": SIGNED_24_IN_32,
+ "SIGNED_24_IN_32_LITTLE_ENDIAN": SIGNED_24_IN_32_LITTLE_ENDIAN,
+ "SIGNED_24_IN_32_BIG_ENDIAN": SIGNED_24_IN_32_BIG_ENDIAN,
+ "FLOAT": FLOAT,
+ };
+ static const List<LpcmSampleFormat> values = const [
+ UNKNOWN,
+ ANY,
+ UNSIGNED_8,
+ SIGNED_16,
+ SIGNED_16_LITTLE_ENDIAN,
+ SIGNED_16_BIG_ENDIAN,
+ SIGNED_24_IN_32,
+ SIGNED_24_IN_32_LITTLE_ENDIAN,
+ SIGNED_24_IN_32_BIG_ENDIAN,
+ FLOAT,
+ ];
+
+ static LpcmSampleFormat valueOf(String name) => valuesMap[name];
+
+ factory LpcmSampleFormat(int v) {
+ switch (v) {
+ case 0:
+ return UNKNOWN;
+ case 1:
+ return ANY;
+ case 2:
+ return UNSIGNED_8;
+ case 3:
+ return SIGNED_16;
+ case 4:
+ return SIGNED_16_LITTLE_ENDIAN;
+ case 5:
+ return SIGNED_16_BIG_ENDIAN;
+ case 6:
+ return SIGNED_24_IN_32;
+ case 7:
+ return SIGNED_24_IN_32_LITTLE_ENDIAN;
+ case 8:
+ return SIGNED_24_IN_32_BIG_ENDIAN;
+ case 9:
+ return FLOAT;
+ default:
+ return null;
+ }
+ }
+
+ static LpcmSampleFormat decode(bindings.Decoder decoder0, int offset) {
+ int v = decoder0.decodeUint32(offset);
+ LpcmSampleFormat result = new LpcmSampleFormat(v);
+ if (result == null) {
+ throw new bindings.MojoCodecError(
+ 'Bad value $v for enum LpcmSampleFormat.');
+ }
+ return result;
+ }
+
+ String toString() {
+ switch(this) {
+ case UNKNOWN:
+ return 'LpcmSampleFormat.UNKNOWN';
+ case ANY:
+ return 'LpcmSampleFormat.ANY';
+ case UNSIGNED_8:
+ return 'LpcmSampleFormat.UNSIGNED_8';
+ case SIGNED_16:
+ return 'LpcmSampleFormat.SIGNED_16';
+ case SIGNED_16_LITTLE_ENDIAN:
+ return 'LpcmSampleFormat.SIGNED_16_LITTLE_ENDIAN';
+ case SIGNED_16_BIG_ENDIAN:
+ return 'LpcmSampleFormat.SIGNED_16_BIG_ENDIAN';
+ case SIGNED_24_IN_32:
+ return 'LpcmSampleFormat.SIGNED_24_IN_32';
+ case SIGNED_24_IN_32_LITTLE_ENDIAN:
+ return 'LpcmSampleFormat.SIGNED_24_IN_32_LITTLE_ENDIAN';
+ case SIGNED_24_IN_32_BIG_ENDIAN:
+ return 'LpcmSampleFormat.SIGNED_24_IN_32_BIG_ENDIAN';
+ case FLOAT:
+ return 'LpcmSampleFormat.FLOAT';
+ }
+ }
+
+ int toJson() => value;
+}
+class AudioEncoding extends bindings.MojoEnum {
+ static const UNKNOWN = const AudioEncoding._(0);
+ static const ANY = const AudioEncoding._(1);
+ static const VORBIS = const AudioEncoding._(2);
+
+ const AudioEncoding._(int v) : super(v);
+
+ static const Map<String, AudioEncoding> valuesMap = const {
+ "UNKNOWN": UNKNOWN,
+ "ANY": ANY,
+ "VORBIS": VORBIS,
+ };
+ static const List<AudioEncoding> values = const [
+ UNKNOWN,
+ ANY,
+ VORBIS,
+ ];
+
+ static AudioEncoding valueOf(String name) => valuesMap[name];
+
+ factory AudioEncoding(int v) {
+ switch (v) {
+ case 0:
+ return UNKNOWN;
+ case 1:
+ return ANY;
+ case 2:
+ return VORBIS;
+ default:
+ return null;
+ }
+ }
+
+ static AudioEncoding decode(bindings.Decoder decoder0, int offset) {
+ int v = decoder0.decodeUint32(offset);
+ AudioEncoding result = new AudioEncoding(v);
+ if (result == null) {
+ throw new bindings.MojoCodecError(
+ 'Bad value $v for enum AudioEncoding.');
+ }
+ return result;
+ }
+
+ String toString() {
+ switch(this) {
+ case UNKNOWN:
+ return 'AudioEncoding.UNKNOWN';
+ case ANY:
+ return 'AudioEncoding.ANY';
+ case VORBIS:
+ return 'AudioEncoding.VORBIS';
+ }
+ }
+
+ int toJson() => value;
+}
+class VideoEncoding extends bindings.MojoEnum {
+ static const UNKNOWN = const VideoEncoding._(0);
+ static const ANY = const VideoEncoding._(1);
+ static const THEORA = const VideoEncoding._(2);
+ static const VP8 = const VideoEncoding._(3);
+
+ const VideoEncoding._(int v) : super(v);
+
+ static const Map<String, VideoEncoding> valuesMap = const {
+ "UNKNOWN": UNKNOWN,
+ "ANY": ANY,
+ "THEORA": THEORA,
+ "VP8": VP8,
+ };
+ static const List<VideoEncoding> values = const [
+ UNKNOWN,
+ ANY,
+ THEORA,
+ VP8,
+ ];
+
+ static VideoEncoding valueOf(String name) => valuesMap[name];
+
+ factory VideoEncoding(int v) {
+ switch (v) {
+ case 0:
+ return UNKNOWN;
+ case 1:
+ return ANY;
+ case 2:
+ return THEORA;
+ case 3:
+ return VP8;
+ default:
+ return null;
+ }
+ }
+
+ static VideoEncoding decode(bindings.Decoder decoder0, int offset) {
+ int v = decoder0.decodeUint32(offset);
+ VideoEncoding result = new VideoEncoding(v);
+ if (result == null) {
+ throw new bindings.MojoCodecError(
+ 'Bad value $v for enum VideoEncoding.');
+ }
+ return result;
+ }
+
+ String toString() {
+ switch(this) {
+ case UNKNOWN:
+ return 'VideoEncoding.UNKNOWN';
+ case ANY:
+ return 'VideoEncoding.ANY';
+ case THEORA:
+ return 'VideoEncoding.THEORA';
+ case VP8:
+ return 'VideoEncoding.VP8';
+ }
+ }
+
+ int toJson() => value;
+}
+class VideoProfile extends bindings.MojoEnum {
+ static const UNKNOWN = const VideoProfile._(0);
+ static const NOT_APPLICABLE = const VideoProfile._(1);
+ static const H264_BASELINE = const VideoProfile._(2);
+ static const H264_MAIN = const VideoProfile._(3);
+ static const H264_EXTENDED = const VideoProfile._(4);
+ static const H264_HIGH = const VideoProfile._(5);
+ static const H264_HIGH10 = const VideoProfile._(6);
+ static const H264_HIGH422 = const VideoProfile._(7);
+ static const H264_HIGH444_PREDICTIVE = const VideoProfile._(8);
+ static const H264_SCALABLE_BASELINE = const VideoProfile._(9);
+ static const H264_SCALABLE_HIGH = const VideoProfile._(10);
+ static const H264_STEREO_HIGH = const VideoProfile._(11);
+ static const H264_MULTIVIEW_HIGH = const VideoProfile._(12);
+
+ const VideoProfile._(int v) : super(v);
+
+ static const Map<String, VideoProfile> valuesMap = const {
+ "UNKNOWN": UNKNOWN,
+ "NOT_APPLICABLE": NOT_APPLICABLE,
+ "H264_BASELINE": H264_BASELINE,
+ "H264_MAIN": H264_MAIN,
+ "H264_EXTENDED": H264_EXTENDED,
+ "H264_HIGH": H264_HIGH,
+ "H264_HIGH10": H264_HIGH10,
+ "H264_HIGH422": H264_HIGH422,
+ "H264_HIGH444_PREDICTIVE": H264_HIGH444_PREDICTIVE,
+ "H264_SCALABLE_BASELINE": H264_SCALABLE_BASELINE,
+ "H264_SCALABLE_HIGH": H264_SCALABLE_HIGH,
+ "H264_STEREO_HIGH": H264_STEREO_HIGH,
+ "H264_MULTIVIEW_HIGH": H264_MULTIVIEW_HIGH,
+ };
+ static const List<VideoProfile> values = const [
+ UNKNOWN,
+ NOT_APPLICABLE,
+ H264_BASELINE,
+ H264_MAIN,
+ H264_EXTENDED,
+ H264_HIGH,
+ H264_HIGH10,
+ H264_HIGH422,
+ H264_HIGH444_PREDICTIVE,
+ H264_SCALABLE_BASELINE,
+ H264_SCALABLE_HIGH,
+ H264_STEREO_HIGH,
+ H264_MULTIVIEW_HIGH,
+ ];
+
+ static VideoProfile valueOf(String name) => valuesMap[name];
+
+ factory VideoProfile(int v) {
+ switch (v) {
+ case 0:
+ return UNKNOWN;
+ case 1:
+ return NOT_APPLICABLE;
+ case 2:
+ return H264_BASELINE;
+ case 3:
+ return H264_MAIN;
+ case 4:
+ return H264_EXTENDED;
+ case 5:
+ return H264_HIGH;
+ case 6:
+ return H264_HIGH10;
+ case 7:
+ return H264_HIGH422;
+ case 8:
+ return H264_HIGH444_PREDICTIVE;
+ case 9:
+ return H264_SCALABLE_BASELINE;
+ case 10:
+ return H264_SCALABLE_HIGH;
+ case 11:
+ return H264_STEREO_HIGH;
+ case 12:
+ return H264_MULTIVIEW_HIGH;
+ default:
+ return null;
+ }
+ }
+
+ static VideoProfile decode(bindings.Decoder decoder0, int offset) {
+ int v = decoder0.decodeUint32(offset);
+ VideoProfile result = new VideoProfile(v);
+ if (result == null) {
+ throw new bindings.MojoCodecError(
+ 'Bad value $v for enum VideoProfile.');
+ }
+ return result;
+ }
+
+ String toString() {
+ switch(this) {
+ case UNKNOWN:
+ return 'VideoProfile.UNKNOWN';
+ case NOT_APPLICABLE:
+ return 'VideoProfile.NOT_APPLICABLE';
+ case H264_BASELINE:
+ return 'VideoProfile.H264_BASELINE';
+ case H264_MAIN:
+ return 'VideoProfile.H264_MAIN';
+ case H264_EXTENDED:
+ return 'VideoProfile.H264_EXTENDED';
+ case H264_HIGH:
+ return 'VideoProfile.H264_HIGH';
+ case H264_HIGH10:
+ return 'VideoProfile.H264_HIGH10';
+ case H264_HIGH422:
+ return 'VideoProfile.H264_HIGH422';
+ case H264_HIGH444_PREDICTIVE:
+ return 'VideoProfile.H264_HIGH444_PREDICTIVE';
+ case H264_SCALABLE_BASELINE:
+ return 'VideoProfile.H264_SCALABLE_BASELINE';
+ case H264_SCALABLE_HIGH:
+ return 'VideoProfile.H264_SCALABLE_HIGH';
+ case H264_STEREO_HIGH:
+ return 'VideoProfile.H264_STEREO_HIGH';
+ case H264_MULTIVIEW_HIGH:
+ return 'VideoProfile.H264_MULTIVIEW_HIGH';
+ }
+ }
+
+ int toJson() => value;
+}
+class PixelFormat extends bindings.MojoEnum {
+ static const UNKNOWN = const PixelFormat._(0);
+ static const I420 = const PixelFormat._(1);
+ static const YV12 = const PixelFormat._(2);
+ static const YV16 = const PixelFormat._(3);
+ static const YV12A = const PixelFormat._(4);
+ static const YV24 = const PixelFormat._(5);
+ static const NV12 = const PixelFormat._(6);
+ static const NV21 = const PixelFormat._(7);
+ static const UYVY = const PixelFormat._(8);
+ static const YUY2 = const PixelFormat._(9);
+ static const ARGB = const PixelFormat._(10);
+ static const XRGB = const PixelFormat._(11);
+ static const RGB24 = const PixelFormat._(12);
+ static const RGB32 = const PixelFormat._(13);
+ static const MJPEG = const PixelFormat._(14);
+ static const MT21 = const PixelFormat._(15);
+
+ const PixelFormat._(int v) : super(v);
+
+ static const Map<String, PixelFormat> valuesMap = const {
+ "UNKNOWN": UNKNOWN,
+ "I420": I420,
+ "YV12": YV12,
+ "YV16": YV16,
+ "YV12A": YV12A,
+ "YV24": YV24,
+ "NV12": NV12,
+ "NV21": NV21,
+ "UYVY": UYVY,
+ "YUY2": YUY2,
+ "ARGB": ARGB,
+ "XRGB": XRGB,
+ "RGB24": RGB24,
+ "RGB32": RGB32,
+ "MJPEG": MJPEG,
+ "MT21": MT21,
+ };
+ static const List<PixelFormat> values = const [
+ UNKNOWN,
+ I420,
+ YV12,
+ YV16,
+ YV12A,
+ YV24,
+ NV12,
+ NV21,
+ UYVY,
+ YUY2,
+ ARGB,
+ XRGB,
+ RGB24,
+ RGB32,
+ MJPEG,
+ MT21,
+ ];
+
+ static PixelFormat valueOf(String name) => valuesMap[name];
+
+ factory PixelFormat(int v) {
+ switch (v) {
+ case 0:
+ return UNKNOWN;
+ case 1:
+ return I420;
+ case 2:
+ return YV12;
+ case 3:
+ return YV16;
+ case 4:
+ return YV12A;
+ case 5:
+ return YV24;
+ case 6:
+ return NV12;
+ case 7:
+ return NV21;
+ case 8:
+ return UYVY;
+ case 9:
+ return YUY2;
+ case 10:
+ return ARGB;
+ case 11:
+ return XRGB;
+ case 12:
+ return RGB24;
+ case 13:
+ return RGB32;
+ case 14:
+ return MJPEG;
+ case 15:
+ return MT21;
+ default:
+ return null;
+ }
+ }
+
+ static PixelFormat decode(bindings.Decoder decoder0, int offset) {
+ int v = decoder0.decodeUint32(offset);
+ PixelFormat result = new PixelFormat(v);
+ if (result == null) {
+ throw new bindings.MojoCodecError(
+ 'Bad value $v for enum PixelFormat.');
+ }
+ return result;
+ }
+
+ String toString() {
+ switch(this) {
+ case UNKNOWN:
+ return 'PixelFormat.UNKNOWN';
+ case I420:
+ return 'PixelFormat.I420';
+ case YV12:
+ return 'PixelFormat.YV12';
+ case YV16:
+ return 'PixelFormat.YV16';
+ case YV12A:
+ return 'PixelFormat.YV12A';
+ case YV24:
+ return 'PixelFormat.YV24';
+ case NV12:
+ return 'PixelFormat.NV12';
+ case NV21:
+ return 'PixelFormat.NV21';
+ case UYVY:
+ return 'PixelFormat.UYVY';
+ case YUY2:
+ return 'PixelFormat.YUY2';
+ case ARGB:
+ return 'PixelFormat.ARGB';
+ case XRGB:
+ return 'PixelFormat.XRGB';
+ case RGB24:
+ return 'PixelFormat.RGB24';
+ case RGB32:
+ return 'PixelFormat.RGB32';
+ case MJPEG:
+ return 'PixelFormat.MJPEG';
+ case MT21:
+ return 'PixelFormat.MT21';
+ }
+ }
+
+ int toJson() => value;
+}
+class ColorSpace extends bindings.MojoEnum {
+ static const UNKNOWN = const ColorSpace._(0);
+ static const NOT_APPLICABLE = const ColorSpace._(1);
+ static const JPEG = const ColorSpace._(2);
+ static const HD_REC709 = const ColorSpace._(3);
+ static const SD_REC601 = const ColorSpace._(4);
+
+ const ColorSpace._(int v) : super(v);
+
+ static const Map<String, ColorSpace> valuesMap = const {
+ "UNKNOWN": UNKNOWN,
+ "NOT_APPLICABLE": NOT_APPLICABLE,
+ "JPEG": JPEG,
+ "HD_REC709": HD_REC709,
+ "SD_REC601": SD_REC601,
+ };
+ static const List<ColorSpace> values = const [
+ UNKNOWN,
+ NOT_APPLICABLE,
+ JPEG,
+ HD_REC709,
+ SD_REC601,
+ ];
+
+ static ColorSpace valueOf(String name) => valuesMap[name];
+
+ factory ColorSpace(int v) {
+ switch (v) {
+ case 0:
+ return UNKNOWN;
+ case 1:
+ return NOT_APPLICABLE;
+ case 2:
+ return JPEG;
+ case 3:
+ return HD_REC709;
+ case 4:
+ return SD_REC601;
+ default:
+ return null;
+ }
+ }
+
+ static ColorSpace decode(bindings.Decoder decoder0, int offset) {
+ int v = decoder0.decodeUint32(offset);
+ ColorSpace result = new ColorSpace(v);
+ if (result == null) {
+ throw new bindings.MojoCodecError(
+ 'Bad value $v for enum ColorSpace.');
+ }
+ return result;
+ }
+
+ String toString() {
+ switch(this) {
+ case UNKNOWN:
+ return 'ColorSpace.UNKNOWN';
+ case NOT_APPLICABLE:
+ return 'ColorSpace.NOT_APPLICABLE';
+ case JPEG:
+ return 'ColorSpace.JPEG';
+ case HD_REC709:
+ return 'ColorSpace.HD_REC709';
+ case SD_REC601:
+ return 'ColorSpace.SD_REC601';
+ }
+ }
+
+ int toJson() => value;
+}
+
+
+
+class MediaType extends bindings.Struct {
+ static const List<bindings.StructDataHeader> kVersions = const [
+ const bindings.StructDataHeader(32, 0)
+ ];
+ MediaTypeScheme scheme = null;
+ MediaTypeDetails details = null;
+
+ MediaType() : super(kVersions.last.size);
+
+ static MediaType deserialize(bindings.Message message) {
+ var decoder = new bindings.Decoder(message);
+ var result = decode(decoder);
+ if (decoder.excessHandles != null) {
+ decoder.excessHandles.forEach((h) => h.close());
+ }
+ return result;
+ }
+
+ static MediaType decode(bindings.Decoder decoder0) {
+ if (decoder0 == null) {
+ return null;
+ }
+ MediaType result = new MediaType();
+
+ var mainDataHeader = decoder0.decodeStructDataHeader();
+ if (mainDataHeader.version <= kVersions.last.version) {
+ // Scan in reverse order to optimize for more recent versions.
+ for (int i = kVersions.length - 1; i >= 0; --i) {
+ if (mainDataHeader.version >= kVersions[i].version) {
+ if (mainDataHeader.size == kVersions[i].size) {
+ // Found a match.
+ break;
+ }
+ throw new bindings.MojoCodecError(
+ 'Header size doesn\'t correspond to known version size.');
+ }
+ }
+ } else if (mainDataHeader.size < kVersions.last.size) {
+ throw new bindings.MojoCodecError(
+ 'Message newer than the last known version cannot be shorter than '
+ 'required by the last known version.');
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.scheme = MediaTypeScheme.decode(decoder0, 8);
+ if (result.scheme == null) {
+ throw new bindings.MojoCodecError(
+ 'Trying to decode null union for non-nullable MediaTypeScheme.');
+ }
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.details = MediaTypeDetails.decode(decoder0, 16);
+ }
+ return result;
+ }
+
+ void encode(bindings.Encoder encoder) {
+ var encoder0 = encoder.getStructEncoderAtOffset(kVersions.last);
+
+ encoder0.encodeEnum(scheme, 8);
+
+ encoder0.encodeUnion(details, 16, true);
+ }
+
+ String toString() {
+ return "MediaType("
+ "scheme: $scheme" ", "
+ "details: $details" ")";
+ }
+
+ Map toJson() {
+ Map map = new Map();
+ map["scheme"] = scheme;
+ map["details"] = details;
+ return map;
+ }
+}
+
+
+class MediaTypeSet extends bindings.Struct {
+ static const List<bindings.StructDataHeader> kVersions = const [
+ const bindings.StructDataHeader(32, 0)
+ ];
+ MediaTypeScheme scheme = null;
+ MediaTypeSetDetails details = null;
+
+ MediaTypeSet() : super(kVersions.last.size);
+
+ static MediaTypeSet deserialize(bindings.Message message) {
+ var decoder = new bindings.Decoder(message);
+ var result = decode(decoder);
+ if (decoder.excessHandles != null) {
+ decoder.excessHandles.forEach((h) => h.close());
+ }
+ return result;
+ }
+
+ static MediaTypeSet decode(bindings.Decoder decoder0) {
+ if (decoder0 == null) {
+ return null;
+ }
+ MediaTypeSet result = new MediaTypeSet();
+
+ var mainDataHeader = decoder0.decodeStructDataHeader();
+ if (mainDataHeader.version <= kVersions.last.version) {
+ // Scan in reverse order to optimize for more recent versions.
+ for (int i = kVersions.length - 1; i >= 0; --i) {
+ if (mainDataHeader.version >= kVersions[i].version) {
+ if (mainDataHeader.size == kVersions[i].size) {
+ // Found a match.
+ break;
+ }
+ throw new bindings.MojoCodecError(
+ 'Header size doesn\'t correspond to known version size.');
+ }
+ }
+ } else if (mainDataHeader.size < kVersions.last.size) {
+ throw new bindings.MojoCodecError(
+ 'Message newer than the last known version cannot be shorter than '
+ 'required by the last known version.');
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.scheme = MediaTypeScheme.decode(decoder0, 8);
+ if (result.scheme == null) {
+ throw new bindings.MojoCodecError(
+ 'Trying to decode null union for non-nullable MediaTypeScheme.');
+ }
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.details = MediaTypeSetDetails.decode(decoder0, 16);
+ }
+ return result;
+ }
+
+ void encode(bindings.Encoder encoder) {
+ var encoder0 = encoder.getStructEncoderAtOffset(kVersions.last);
+
+ encoder0.encodeEnum(scheme, 8);
+
+ encoder0.encodeUnion(details, 16, true);
+ }
+
+ String toString() {
+ return "MediaTypeSet("
+ "scheme: $scheme" ", "
+ "details: $details" ")";
+ }
+
+ Map toJson() {
+ Map map = new Map();
+ map["scheme"] = scheme;
+ map["details"] = details;
+ return map;
+ }
+}
+
+
+class LpcmMediaTypeDetails extends bindings.Struct {
+ static const List<bindings.StructDataHeader> kVersions = const [
+ const bindings.StructDataHeader(24, 0)
+ ];
+ LpcmSampleFormat sampleFormat = null;
+ bool interleaved = false;
+ int channels = 0;
+ int framesPerSecond = 0;
+
+ LpcmMediaTypeDetails() : super(kVersions.last.size);
+
+ static LpcmMediaTypeDetails deserialize(bindings.Message message) {
+ var decoder = new bindings.Decoder(message);
+ var result = decode(decoder);
+ if (decoder.excessHandles != null) {
+ decoder.excessHandles.forEach((h) => h.close());
+ }
+ return result;
+ }
+
+ static LpcmMediaTypeDetails decode(bindings.Decoder decoder0) {
+ if (decoder0 == null) {
+ return null;
+ }
+ LpcmMediaTypeDetails result = new LpcmMediaTypeDetails();
+
+ var mainDataHeader = decoder0.decodeStructDataHeader();
+ if (mainDataHeader.version <= kVersions.last.version) {
+ // Scan in reverse order to optimize for more recent versions.
+ for (int i = kVersions.length - 1; i >= 0; --i) {
+ if (mainDataHeader.version >= kVersions[i].version) {
+ if (mainDataHeader.size == kVersions[i].size) {
+ // Found a match.
+ break;
+ }
+ throw new bindings.MojoCodecError(
+ 'Header size doesn\'t correspond to known version size.');
+ }
+ }
+ } else if (mainDataHeader.size < kVersions.last.size) {
+ throw new bindings.MojoCodecError(
+ 'Message newer than the last known version cannot be shorter than '
+ 'required by the last known version.');
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.sampleFormat = LpcmSampleFormat.decode(decoder0, 8);
+ if (result.sampleFormat == null) {
+ throw new bindings.MojoCodecError(
+ 'Trying to decode null union for non-nullable LpcmSampleFormat.');
+ }
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.interleaved = decoder0.decodeBool(12, 0);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.channels = decoder0.decodeUint8(13);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.framesPerSecond = decoder0.decodeUint32(16);
+ }
+ return result;
+ }
+
+ void encode(bindings.Encoder encoder) {
+ var encoder0 = encoder.getStructEncoderAtOffset(kVersions.last);
+
+ encoder0.encodeEnum(sampleFormat, 8);
+
+ encoder0.encodeBool(interleaved, 12, 0);
+
+ encoder0.encodeUint8(channels, 13);
+
+ encoder0.encodeUint32(framesPerSecond, 16);
+ }
+
+ String toString() {
+ return "LpcmMediaTypeDetails("
+ "sampleFormat: $sampleFormat" ", "
+ "interleaved: $interleaved" ", "
+ "channels: $channels" ", "
+ "framesPerSecond: $framesPerSecond" ")";
+ }
+
+ Map toJson() {
+ Map map = new Map();
+ map["sampleFormat"] = sampleFormat;
+ map["interleaved"] = interleaved;
+ map["channels"] = channels;
+ map["framesPerSecond"] = framesPerSecond;
+ return map;
+ }
+}
+
+
+class LpcmMediaTypeSetDetails extends bindings.Struct {
+ static const List<bindings.StructDataHeader> kVersions = const [
+ const bindings.StructDataHeader(32, 0)
+ ];
+ LpcmSampleFormat sampleFormat = null;
+ BoolRange interleaved = null;
+ int minChannels = 0;
+ int maxChannels = 0;
+ int minFramesPerSecond = 0;
+ int maxFramesPerSecond = 0;
+
+ LpcmMediaTypeSetDetails() : super(kVersions.last.size);
+
+ static LpcmMediaTypeSetDetails deserialize(bindings.Message message) {
+ var decoder = new bindings.Decoder(message);
+ var result = decode(decoder);
+ if (decoder.excessHandles != null) {
+ decoder.excessHandles.forEach((h) => h.close());
+ }
+ return result;
+ }
+
+ static LpcmMediaTypeSetDetails decode(bindings.Decoder decoder0) {
+ if (decoder0 == null) {
+ return null;
+ }
+ LpcmMediaTypeSetDetails result = new LpcmMediaTypeSetDetails();
+
+ var mainDataHeader = decoder0.decodeStructDataHeader();
+ if (mainDataHeader.version <= kVersions.last.version) {
+ // Scan in reverse order to optimize for more recent versions.
+ for (int i = kVersions.length - 1; i >= 0; --i) {
+ if (mainDataHeader.version >= kVersions[i].version) {
+ if (mainDataHeader.size == kVersions[i].size) {
+ // Found a match.
+ break;
+ }
+ throw new bindings.MojoCodecError(
+ 'Header size doesn\'t correspond to known version size.');
+ }
+ }
+ } else if (mainDataHeader.size < kVersions.last.size) {
+ throw new bindings.MojoCodecError(
+ 'Message newer than the last known version cannot be shorter than '
+ 'required by the last known version.');
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.sampleFormat = LpcmSampleFormat.decode(decoder0, 8);
+ if (result.sampleFormat == null) {
+ throw new bindings.MojoCodecError(
+ 'Trying to decode null union for non-nullable LpcmSampleFormat.');
+ }
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.interleaved = BoolRange.decode(decoder0, 12);
+ if (result.interleaved == null) {
+ throw new bindings.MojoCodecError(
+ 'Trying to decode null union for non-nullable BoolRange.');
+ }
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.minChannels = decoder0.decodeUint8(16);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.maxChannels = decoder0.decodeUint8(17);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.minFramesPerSecond = decoder0.decodeUint32(20);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.maxFramesPerSecond = decoder0.decodeUint32(24);
+ }
+ return result;
+ }
+
+ void encode(bindings.Encoder encoder) {
+ var encoder0 = encoder.getStructEncoderAtOffset(kVersions.last);
+
+ encoder0.encodeEnum(sampleFormat, 8);
+
+ encoder0.encodeEnum(interleaved, 12);
+
+ encoder0.encodeUint8(minChannels, 16);
+
+ encoder0.encodeUint8(maxChannels, 17);
+
+ encoder0.encodeUint32(minFramesPerSecond, 20);
+
+ encoder0.encodeUint32(maxFramesPerSecond, 24);
+ }
+
+ String toString() {
+ return "LpcmMediaTypeSetDetails("
+ "sampleFormat: $sampleFormat" ", "
+ "interleaved: $interleaved" ", "
+ "minChannels: $minChannels" ", "
+ "maxChannels: $maxChannels" ", "
+ "minFramesPerSecond: $minFramesPerSecond" ", "
+ "maxFramesPerSecond: $maxFramesPerSecond" ")";
+ }
+
+ Map toJson() {
+ Map map = new Map();
+ map["sampleFormat"] = sampleFormat;
+ map["interleaved"] = interleaved;
+ map["minChannels"] = minChannels;
+ map["maxChannels"] = maxChannels;
+ map["minFramesPerSecond"] = minFramesPerSecond;
+ map["maxFramesPerSecond"] = maxFramesPerSecond;
+ return map;
+ }
+}
+
+
+class MultiplexedMediaTypeDetails extends bindings.Struct {
+ static const List<bindings.StructDataHeader> kVersions = const [
+ const bindings.StructDataHeader(24, 0)
+ ];
+ MediaType multiplexType = null;
+ List<MediaType> substreamTypes = null;
+
+ MultiplexedMediaTypeDetails() : super(kVersions.last.size);
+
+ static MultiplexedMediaTypeDetails deserialize(bindings.Message message) {
+ var decoder = new bindings.Decoder(message);
+ var result = decode(decoder);
+ if (decoder.excessHandles != null) {
+ decoder.excessHandles.forEach((h) => h.close());
+ }
+ return result;
+ }
+
+ static MultiplexedMediaTypeDetails decode(bindings.Decoder decoder0) {
+ if (decoder0 == null) {
+ return null;
+ }
+ MultiplexedMediaTypeDetails result = new MultiplexedMediaTypeDetails();
+
+ var mainDataHeader = decoder0.decodeStructDataHeader();
+ if (mainDataHeader.version <= kVersions.last.version) {
+ // Scan in reverse order to optimize for more recent versions.
+ for (int i = kVersions.length - 1; i >= 0; --i) {
+ if (mainDataHeader.version >= kVersions[i].version) {
+ if (mainDataHeader.size == kVersions[i].size) {
+ // Found a match.
+ break;
+ }
+ throw new bindings.MojoCodecError(
+ 'Header size doesn\'t correspond to known version size.');
+ }
+ }
+ } else if (mainDataHeader.size < kVersions.last.size) {
+ throw new bindings.MojoCodecError(
+ 'Message newer than the last known version cannot be shorter than '
+ 'required by the last known version.');
+ }
+ if (mainDataHeader.version >= 0) {
+
+ var decoder1 = decoder0.decodePointer(8, false);
+ result.multiplexType = MediaType.decode(decoder1);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ var decoder1 = decoder0.decodePointer(16, false);
+ {
+ var si1 = decoder1.decodeDataHeaderForPointerArray(bindings.kUnspecifiedArrayLength);
+ result.substreamTypes = new List<MediaType>(si1.numElements);
+ for (int i1 = 0; i1 < si1.numElements; ++i1) {
+
+ var decoder2 = decoder1.decodePointer(bindings.ArrayDataHeader.kHeaderSize + bindings.kPointerSize * i1, false);
+ result.substreamTypes[i1] = MediaType.decode(decoder2);
+ }
+ }
+ }
+ return result;
+ }
+
+ void encode(bindings.Encoder encoder) {
+ var encoder0 = encoder.getStructEncoderAtOffset(kVersions.last);
+
+ encoder0.encodeStruct(multiplexType, 8, false);
+
+ if (substreamTypes == null) {
+ encoder0.encodeNullPointer(16, false);
+ } else {
+ var encoder1 = encoder0.encodePointerArray(substreamTypes.length, 16, bindings.kUnspecifiedArrayLength);
+ for (int i0 = 0; i0 < substreamTypes.length; ++i0) {
+
+ encoder1.encodeStruct(substreamTypes[i0], bindings.ArrayDataHeader.kHeaderSize + bindings.kPointerSize * i0, false);
+ }
+ }
+ }
+
+ String toString() {
+ return "MultiplexedMediaTypeDetails("
+ "multiplexType: $multiplexType" ", "
+ "substreamTypes: $substreamTypes" ")";
+ }
+
+ Map toJson() {
+ Map map = new Map();
+ map["multiplexType"] = multiplexType;
+ map["substreamTypes"] = substreamTypes;
+ return map;
+ }
+}
+
+
+class MultiplexedMediaTypeSetDetails extends bindings.Struct {
+ static const List<bindings.StructDataHeader> kVersions = const [
+ const bindings.StructDataHeader(24, 0)
+ ];
+ MediaTypeSet multiplexTypeSet = null;
+ List<MediaTypeSet> substreamTypeSets = null;
+
+ MultiplexedMediaTypeSetDetails() : super(kVersions.last.size);
+
+ static MultiplexedMediaTypeSetDetails deserialize(bindings.Message message) {
+ var decoder = new bindings.Decoder(message);
+ var result = decode(decoder);
+ if (decoder.excessHandles != null) {
+ decoder.excessHandles.forEach((h) => h.close());
+ }
+ return result;
+ }
+
+ static MultiplexedMediaTypeSetDetails decode(bindings.Decoder decoder0) {
+ if (decoder0 == null) {
+ return null;
+ }
+ MultiplexedMediaTypeSetDetails result = new MultiplexedMediaTypeSetDetails();
+
+ var mainDataHeader = decoder0.decodeStructDataHeader();
+ if (mainDataHeader.version <= kVersions.last.version) {
+ // Scan in reverse order to optimize for more recent versions.
+ for (int i = kVersions.length - 1; i >= 0; --i) {
+ if (mainDataHeader.version >= kVersions[i].version) {
+ if (mainDataHeader.size == kVersions[i].size) {
+ // Found a match.
+ break;
+ }
+ throw new bindings.MojoCodecError(
+ 'Header size doesn\'t correspond to known version size.');
+ }
+ }
+ } else if (mainDataHeader.size < kVersions.last.size) {
+ throw new bindings.MojoCodecError(
+ 'Message newer than the last known version cannot be shorter than '
+ 'required by the last known version.');
+ }
+ if (mainDataHeader.version >= 0) {
+
+ var decoder1 = decoder0.decodePointer(8, false);
+ result.multiplexTypeSet = MediaTypeSet.decode(decoder1);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ var decoder1 = decoder0.decodePointer(16, false);
+ {
+ var si1 = decoder1.decodeDataHeaderForPointerArray(bindings.kUnspecifiedArrayLength);
+ result.substreamTypeSets = new List<MediaTypeSet>(si1.numElements);
+ for (int i1 = 0; i1 < si1.numElements; ++i1) {
+
+ var decoder2 = decoder1.decodePointer(bindings.ArrayDataHeader.kHeaderSize + bindings.kPointerSize * i1, false);
+ result.substreamTypeSets[i1] = MediaTypeSet.decode(decoder2);
+ }
+ }
+ }
+ return result;
+ }
+
+ void encode(bindings.Encoder encoder) {
+ var encoder0 = encoder.getStructEncoderAtOffset(kVersions.last);
+
+ encoder0.encodeStruct(multiplexTypeSet, 8, false);
+
+ if (substreamTypeSets == null) {
+ encoder0.encodeNullPointer(16, false);
+ } else {
+ var encoder1 = encoder0.encodePointerArray(substreamTypeSets.length, 16, bindings.kUnspecifiedArrayLength);
+ for (int i0 = 0; i0 < substreamTypeSets.length; ++i0) {
+
+ encoder1.encodeStruct(substreamTypeSets[i0], bindings.ArrayDataHeader.kHeaderSize + bindings.kPointerSize * i0, false);
+ }
+ }
+ }
+
+ String toString() {
+ return "MultiplexedMediaTypeSetDetails("
+ "multiplexTypeSet: $multiplexTypeSet" ", "
+ "substreamTypeSets: $substreamTypeSets" ")";
+ }
+
+ Map toJson() {
+ Map map = new Map();
+ map["multiplexTypeSet"] = multiplexTypeSet;
+ map["substreamTypeSets"] = substreamTypeSets;
+ return map;
+ }
+}
+
+
+class CompressedAudioMediaTypeDetails extends bindings.Struct {
+ static const List<bindings.StructDataHeader> kVersions = const [
+ const bindings.StructDataHeader(32, 0)
+ ];
+ AudioEncoding encoding = null;
+ LpcmSampleFormat sampleFormat = null;
+ bool interleaved = false;
+ int channels = 0;
+ int framesPerSecond = 0;
+ String extraDataBase64 = null;
+
+ CompressedAudioMediaTypeDetails() : super(kVersions.last.size);
+
+ static CompressedAudioMediaTypeDetails deserialize(bindings.Message message) {
+ var decoder = new bindings.Decoder(message);
+ var result = decode(decoder);
+ if (decoder.excessHandles != null) {
+ decoder.excessHandles.forEach((h) => h.close());
+ }
+ return result;
+ }
+
+ static CompressedAudioMediaTypeDetails decode(bindings.Decoder decoder0) {
+ if (decoder0 == null) {
+ return null;
+ }
+ CompressedAudioMediaTypeDetails result = new CompressedAudioMediaTypeDetails();
+
+ var mainDataHeader = decoder0.decodeStructDataHeader();
+ if (mainDataHeader.version <= kVersions.last.version) {
+ // Scan in reverse order to optimize for more recent versions.
+ for (int i = kVersions.length - 1; i >= 0; --i) {
+ if (mainDataHeader.version >= kVersions[i].version) {
+ if (mainDataHeader.size == kVersions[i].size) {
+ // Found a match.
+ break;
+ }
+ throw new bindings.MojoCodecError(
+ 'Header size doesn\'t correspond to known version size.');
+ }
+ }
+ } else if (mainDataHeader.size < kVersions.last.size) {
+ throw new bindings.MojoCodecError(
+ 'Message newer than the last known version cannot be shorter than '
+ 'required by the last known version.');
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.encoding = AudioEncoding.decode(decoder0, 8);
+ if (result.encoding == null) {
+ throw new bindings.MojoCodecError(
+ 'Trying to decode null union for non-nullable AudioEncoding.');
+ }
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.sampleFormat = LpcmSampleFormat.decode(decoder0, 12);
+ if (result.sampleFormat == null) {
+ throw new bindings.MojoCodecError(
+ 'Trying to decode null union for non-nullable LpcmSampleFormat.');
+ }
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.interleaved = decoder0.decodeBool(16, 0);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.channels = decoder0.decodeUint8(17);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.framesPerSecond = decoder0.decodeUint32(20);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.extraDataBase64 = decoder0.decodeString(24, false);
+ }
+ return result;
+ }
+
+ void encode(bindings.Encoder encoder) {
+ var encoder0 = encoder.getStructEncoderAtOffset(kVersions.last);
+
+ encoder0.encodeEnum(encoding, 8);
+
+ encoder0.encodeEnum(sampleFormat, 12);
+
+ encoder0.encodeBool(interleaved, 16, 0);
+
+ encoder0.encodeUint8(channels, 17);
+
+ encoder0.encodeUint32(framesPerSecond, 20);
+
+ encoder0.encodeString(extraDataBase64, 24, false);
+ }
+
+ String toString() {
+ return "CompressedAudioMediaTypeDetails("
+ "encoding: $encoding" ", "
+ "sampleFormat: $sampleFormat" ", "
+ "interleaved: $interleaved" ", "
+ "channels: $channels" ", "
+ "framesPerSecond: $framesPerSecond" ", "
+ "extraDataBase64: $extraDataBase64" ")";
+ }
+
+ Map toJson() {
+ Map map = new Map();
+ map["encoding"] = encoding;
+ map["sampleFormat"] = sampleFormat;
+ map["interleaved"] = interleaved;
+ map["channels"] = channels;
+ map["framesPerSecond"] = framesPerSecond;
+ map["extraDataBase64"] = extraDataBase64;
+ return map;
+ }
+}
+
+
+class CompressedAudioMediaTypeSetDetails extends bindings.Struct {
+ static const List<bindings.StructDataHeader> kVersions = const [
+ const bindings.StructDataHeader(32, 0)
+ ];
+ AudioEncoding encoding = null;
+ LpcmSampleFormat sampleFormat = null;
+ BoolRange interleaved = null;
+ int minChannels = 0;
+ int maxChannels = 0;
+ int minFramesPerSecond = 0;
+ int maxFramesPerSecond = 0;
+
+ CompressedAudioMediaTypeSetDetails() : super(kVersions.last.size);
+
+ static CompressedAudioMediaTypeSetDetails deserialize(bindings.Message message) {
+ var decoder = new bindings.Decoder(message);
+ var result = decode(decoder);
+ if (decoder.excessHandles != null) {
+ decoder.excessHandles.forEach((h) => h.close());
+ }
+ return result;
+ }
+
+ static CompressedAudioMediaTypeSetDetails decode(bindings.Decoder decoder0) {
+ if (decoder0 == null) {
+ return null;
+ }
+ CompressedAudioMediaTypeSetDetails result = new CompressedAudioMediaTypeSetDetails();
+
+ var mainDataHeader = decoder0.decodeStructDataHeader();
+ if (mainDataHeader.version <= kVersions.last.version) {
+ // Scan in reverse order to optimize for more recent versions.
+ for (int i = kVersions.length - 1; i >= 0; --i) {
+ if (mainDataHeader.version >= kVersions[i].version) {
+ if (mainDataHeader.size == kVersions[i].size) {
+ // Found a match.
+ break;
+ }
+ throw new bindings.MojoCodecError(
+ 'Header size doesn\'t correspond to known version size.');
+ }
+ }
+ } else if (mainDataHeader.size < kVersions.last.size) {
+ throw new bindings.MojoCodecError(
+ 'Message newer than the last known version cannot be shorter than '
+ 'required by the last known version.');
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.encoding = AudioEncoding.decode(decoder0, 8);
+ if (result.encoding == null) {
+ throw new bindings.MojoCodecError(
+ 'Trying to decode null union for non-nullable AudioEncoding.');
+ }
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.sampleFormat = LpcmSampleFormat.decode(decoder0, 12);
+ if (result.sampleFormat == null) {
+ throw new bindings.MojoCodecError(
+ 'Trying to decode null union for non-nullable LpcmSampleFormat.');
+ }
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.interleaved = BoolRange.decode(decoder0, 16);
+ if (result.interleaved == null) {
+ throw new bindings.MojoCodecError(
+ 'Trying to decode null union for non-nullable BoolRange.');
+ }
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.minChannels = decoder0.decodeUint8(20);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.maxChannels = decoder0.decodeUint8(21);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.minFramesPerSecond = decoder0.decodeUint32(24);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.maxFramesPerSecond = decoder0.decodeUint32(28);
+ }
+ return result;
+ }
+
+ void encode(bindings.Encoder encoder) {
+ var encoder0 = encoder.getStructEncoderAtOffset(kVersions.last);
+
+ encoder0.encodeEnum(encoding, 8);
+
+ encoder0.encodeEnum(sampleFormat, 12);
+
+ encoder0.encodeEnum(interleaved, 16);
+
+ encoder0.encodeUint8(minChannels, 20);
+
+ encoder0.encodeUint8(maxChannels, 21);
+
+ encoder0.encodeUint32(minFramesPerSecond, 24);
+
+ encoder0.encodeUint32(maxFramesPerSecond, 28);
+ }
+
+ String toString() {
+ return "CompressedAudioMediaTypeSetDetails("
+ "encoding: $encoding" ", "
+ "sampleFormat: $sampleFormat" ", "
+ "interleaved: $interleaved" ", "
+ "minChannels: $minChannels" ", "
+ "maxChannels: $maxChannels" ", "
+ "minFramesPerSecond: $minFramesPerSecond" ", "
+ "maxFramesPerSecond: $maxFramesPerSecond" ")";
+ }
+
+ Map toJson() {
+ Map map = new Map();
+ map["encoding"] = encoding;
+ map["sampleFormat"] = sampleFormat;
+ map["interleaved"] = interleaved;
+ map["minChannels"] = minChannels;
+ map["maxChannels"] = maxChannels;
+ map["minFramesPerSecond"] = minFramesPerSecond;
+ map["maxFramesPerSecond"] = maxFramesPerSecond;
+ return map;
+ }
+}
+
+
+class VideoMediaTypeDetails extends bindings.Struct {
+ static const List<bindings.StructDataHeader> kVersions = const [
+ const bindings.StructDataHeader(48, 0)
+ ];
+ VideoEncoding encoding = null;
+ VideoProfile profile = null;
+ PixelFormat pixelFormat = null;
+ ColorSpace colorSpace = null;
+ int width = 0;
+ int height = 0;
+ int codedWidth = 0;
+ int codedHeight = 0;
+ String extraDataBase64 = null;
+
+ VideoMediaTypeDetails() : super(kVersions.last.size);
+
+ static VideoMediaTypeDetails deserialize(bindings.Message message) {
+ var decoder = new bindings.Decoder(message);
+ var result = decode(decoder);
+ if (decoder.excessHandles != null) {
+ decoder.excessHandles.forEach((h) => h.close());
+ }
+ return result;
+ }
+
+ static VideoMediaTypeDetails decode(bindings.Decoder decoder0) {
+ if (decoder0 == null) {
+ return null;
+ }
+ VideoMediaTypeDetails result = new VideoMediaTypeDetails();
+
+ var mainDataHeader = decoder0.decodeStructDataHeader();
+ if (mainDataHeader.version <= kVersions.last.version) {
+ // Scan in reverse order to optimize for more recent versions.
+ for (int i = kVersions.length - 1; i >= 0; --i) {
+ if (mainDataHeader.version >= kVersions[i].version) {
+ if (mainDataHeader.size == kVersions[i].size) {
+ // Found a match.
+ break;
+ }
+ throw new bindings.MojoCodecError(
+ 'Header size doesn\'t correspond to known version size.');
+ }
+ }
+ } else if (mainDataHeader.size < kVersions.last.size) {
+ throw new bindings.MojoCodecError(
+ 'Message newer than the last known version cannot be shorter than '
+ 'required by the last known version.');
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.encoding = VideoEncoding.decode(decoder0, 8);
+ if (result.encoding == null) {
+ throw new bindings.MojoCodecError(
+ 'Trying to decode null union for non-nullable VideoEncoding.');
+ }
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.profile = VideoProfile.decode(decoder0, 12);
+ if (result.profile == null) {
+ throw new bindings.MojoCodecError(
+ 'Trying to decode null union for non-nullable VideoProfile.');
+ }
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.pixelFormat = PixelFormat.decode(decoder0, 16);
+ if (result.pixelFormat == null) {
+ throw new bindings.MojoCodecError(
+ 'Trying to decode null union for non-nullable PixelFormat.');
+ }
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.colorSpace = ColorSpace.decode(decoder0, 20);
+ if (result.colorSpace == null) {
+ throw new bindings.MojoCodecError(
+ 'Trying to decode null union for non-nullable ColorSpace.');
+ }
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.width = decoder0.decodeUint32(24);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.height = decoder0.decodeUint32(28);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.codedWidth = decoder0.decodeUint32(32);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.codedHeight = decoder0.decodeUint32(36);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.extraDataBase64 = decoder0.decodeString(40, false);
+ }
+ return result;
+ }
+
+ void encode(bindings.Encoder encoder) {
+ var encoder0 = encoder.getStructEncoderAtOffset(kVersions.last);
+
+ encoder0.encodeEnum(encoding, 8);
+
+ encoder0.encodeEnum(profile, 12);
+
+ encoder0.encodeEnum(pixelFormat, 16);
+
+ encoder0.encodeEnum(colorSpace, 20);
+
+ encoder0.encodeUint32(width, 24);
+
+ encoder0.encodeUint32(height, 28);
+
+ encoder0.encodeUint32(codedWidth, 32);
+
+ encoder0.encodeUint32(codedHeight, 36);
+
+ encoder0.encodeString(extraDataBase64, 40, false);
+ }
+
+ String toString() {
+ return "VideoMediaTypeDetails("
+ "encoding: $encoding" ", "
+ "profile: $profile" ", "
+ "pixelFormat: $pixelFormat" ", "
+ "colorSpace: $colorSpace" ", "
+ "width: $width" ", "
+ "height: $height" ", "
+ "codedWidth: $codedWidth" ", "
+ "codedHeight: $codedHeight" ", "
+ "extraDataBase64: $extraDataBase64" ")";
+ }
+
+ Map toJson() {
+ Map map = new Map();
+ map["encoding"] = encoding;
+ map["profile"] = profile;
+ map["pixelFormat"] = pixelFormat;
+ map["colorSpace"] = colorSpace;
+ map["width"] = width;
+ map["height"] = height;
+ map["codedWidth"] = codedWidth;
+ map["codedHeight"] = codedHeight;
+ map["extraDataBase64"] = extraDataBase64;
+ return map;
+ }
+}
+
+
+class VideoMediaTypeSetDetails extends bindings.Struct {
+ static const List<bindings.StructDataHeader> kVersions = const [
+ const bindings.StructDataHeader(32, 0)
+ ];
+ VideoEncoding encoding = null;
+ int minWidth = 0;
+ int maxWidth = 0;
+ int minHeight = 0;
+ int maxHeight = 0;
+
+ VideoMediaTypeSetDetails() : super(kVersions.last.size);
+
+ static VideoMediaTypeSetDetails deserialize(bindings.Message message) {
+ var decoder = new bindings.Decoder(message);
+ var result = decode(decoder);
+ if (decoder.excessHandles != null) {
+ decoder.excessHandles.forEach((h) => h.close());
+ }
+ return result;
+ }
+
+ static VideoMediaTypeSetDetails decode(bindings.Decoder decoder0) {
+ if (decoder0 == null) {
+ return null;
+ }
+ VideoMediaTypeSetDetails result = new VideoMediaTypeSetDetails();
+
+ var mainDataHeader = decoder0.decodeStructDataHeader();
+ if (mainDataHeader.version <= kVersions.last.version) {
+ // Scan in reverse order to optimize for more recent versions.
+ for (int i = kVersions.length - 1; i >= 0; --i) {
+ if (mainDataHeader.version >= kVersions[i].version) {
+ if (mainDataHeader.size == kVersions[i].size) {
+ // Found a match.
+ break;
+ }
+ throw new bindings.MojoCodecError(
+ 'Header size doesn\'t correspond to known version size.');
+ }
+ }
+ } else if (mainDataHeader.size < kVersions.last.size) {
+ throw new bindings.MojoCodecError(
+ 'Message newer than the last known version cannot be shorter than '
+ 'required by the last known version.');
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.encoding = VideoEncoding.decode(decoder0, 8);
+ if (result.encoding == null) {
+ throw new bindings.MojoCodecError(
+ 'Trying to decode null union for non-nullable VideoEncoding.');
+ }
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.minWidth = decoder0.decodeUint32(12);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.maxWidth = decoder0.decodeUint32(16);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.minHeight = decoder0.decodeUint32(20);
+ }
+ if (mainDataHeader.version >= 0) {
+
+ result.maxHeight = decoder0.decodeUint32(24);
+ }
+ return result;
+ }
+
+ void encode(bindings.Encoder encoder) {
+ var encoder0 = encoder.getStructEncoderAtOffset(kVersions.last);
+
+ encoder0.encodeEnum(encoding, 8);
+
+ encoder0.encodeUint32(minWidth, 12);
+
+ encoder0.encodeUint32(maxWidth, 16);
+
+ encoder0.encodeUint32(minHeight, 20);
+
+ encoder0.encodeUint32(maxHeight, 24);
+ }
+
+ String toString() {
+ return "VideoMediaTypeSetDetails("
+ "encoding: $encoding" ", "
+ "minWidth: $minWidth" ", "
+ "maxWidth: $maxWidth" ", "
+ "minHeight: $minHeight" ", "
+ "maxHeight: $maxHeight" ")";
+ }
+
+ Map toJson() {
+ Map map = new Map();
+ map["encoding"] = encoding;
+ map["minWidth"] = minWidth;
+ map["maxWidth"] = maxWidth;
+ map["minHeight"] = minHeight;
+ map["maxHeight"] = maxHeight;
+ return map;
+ }
+}
+
+
+
+enum MediaTypeDetailsTag {
+ multiplexed,
+ lpcm,
+ compressedAudio,
+ video,
+ unknown
+}
+
+class MediaTypeDetails extends bindings.Union {
+ static final _tag_to_int = const {
+ MediaTypeDetailsTag.multiplexed: 0,
+ MediaTypeDetailsTag.lpcm: 1,
+ MediaTypeDetailsTag.compressedAudio: 2,
+ MediaTypeDetailsTag.video: 3,
+ };
+
+ static final _int_to_tag = const {
+ 0: MediaTypeDetailsTag.multiplexed,
+ 1: MediaTypeDetailsTag.lpcm,
+ 2: MediaTypeDetailsTag.compressedAudio,
+ 3: MediaTypeDetailsTag.video,
+ };
+
+ var _data;
+ MediaTypeDetailsTag _tag = MediaTypeDetailsTag.unknown;
+
+ MediaTypeDetailsTag get tag => _tag;
+ MultiplexedMediaTypeDetails get multiplexed {
+ if (_tag != MediaTypeDetailsTag.multiplexed) {
+ throw new bindings.UnsetUnionTagError(_tag, MediaTypeDetailsTag.multiplexed);
+ }
+ return _data;
+ }
+
+ set multiplexed(MultiplexedMediaTypeDetails value) {
+ _tag = MediaTypeDetailsTag.multiplexed;
+ _data = value;
+ }
+ LpcmMediaTypeDetails get lpcm {
+ if (_tag != MediaTypeDetailsTag.lpcm) {
+ throw new bindings.UnsetUnionTagError(_tag, MediaTypeDetailsTag.lpcm);
+ }
+ return _data;
+ }
+
+ set lpcm(LpcmMediaTypeDetails value) {
+ _tag = MediaTypeDetailsTag.lpcm;
+ _data = value;
+ }
+ CompressedAudioMediaTypeDetails get compressedAudio {
+ if (_tag != MediaTypeDetailsTag.compressedAudio) {
+ throw new bindings.UnsetUnionTagError(_tag, MediaTypeDetailsTag.compressedAudio);
+ }
+ return _data;
+ }
+
+ set compressedAudio(CompressedAudioMediaTypeDetails value) {
+ _tag = MediaTypeDetailsTag.compressedAudio;
+ _data = value;
+ }
+ VideoMediaTypeDetails get video {
+ if (_tag != MediaTypeDetailsTag.video) {
+ throw new bindings.UnsetUnionTagError(_tag, MediaTypeDetailsTag.video);
+ }
+ return _data;
+ }
+
+ set video(VideoMediaTypeDetails value) {
+ _tag = MediaTypeDetailsTag.video;
+ _data = value;
+ }
+
+ static MediaTypeDetails decode(bindings.Decoder decoder0, int offset) {
+ int size = decoder0.decodeUint32(offset);
+ if (size == 0) {
+ return null;
+ }
+ MediaTypeDetails result = new MediaTypeDetails();
+
+ // TODO(azani): Handle unknown union member.
+ MediaTypeDetailsTag tag = _int_to_tag[decoder0.decodeUint32(offset + 4)];
+ switch (tag) {
+ case MediaTypeDetailsTag.multiplexed:
+
+ var decoder1 = decoder0.decodePointer(offset + 8, false);
+ result.multiplexed = MultiplexedMediaTypeDetails.decode(decoder1);
+ break;
+ case MediaTypeDetailsTag.lpcm:
+
+ var decoder1 = decoder0.decodePointer(offset + 8, false);
+ result.lpcm = LpcmMediaTypeDetails.decode(decoder1);
+ break;
+ case MediaTypeDetailsTag.compressedAudio:
+
+ var decoder1 = decoder0.decodePointer(offset + 8, false);
+ result.compressedAudio = CompressedAudioMediaTypeDetails.decode(decoder1);
+ break;
+ case MediaTypeDetailsTag.video:
+
+ var decoder1 = decoder0.decodePointer(offset + 8, false);
+ result.video = VideoMediaTypeDetails.decode(decoder1);
+ break;
+ }
+
+ return result;
+ }
+
+ void encode(bindings.Encoder encoder0, int offset) {
+ // TODO(azani): Error when trying to encode an unknown member.
+ encoder0.encodeUint32(16, offset);
+ encoder0.encodeUint32(_tag_to_int[_tag], offset + 4);
+ switch (_tag) {
+ case MediaTypeDetailsTag.multiplexed:
+
+ encoder0.encodeStruct(multiplexed, offset + 8, false);
+ break;
+ case MediaTypeDetailsTag.lpcm:
+
+ encoder0.encodeStruct(lpcm, offset + 8, false);
+ break;
+ case MediaTypeDetailsTag.compressedAudio:
+
+ encoder0.encodeStruct(compressedAudio, offset + 8, false);
+ break;
+ case MediaTypeDetailsTag.video:
+
+ encoder0.encodeStruct(video, offset + 8, false);
+ break;
+ }
+ }
+
+ String toString() {
+ String result = "MediaTypeDetails(";
+ switch (_tag) {
+ case MediaTypeDetailsTag.multiplexed:
+ result += "multiplexed";
+ break;
+ case MediaTypeDetailsTag.lpcm:
+ result += "lpcm";
+ break;
+ case MediaTypeDetailsTag.compressedAudio:
+ result += "compressedAudio";
+ break;
+ case MediaTypeDetailsTag.video:
+ result += "video";
+ break;
+ default:
+ result += "unknown";
+ }
+ result += ": $_data)";
+ return result;
+ }
+}
+
+
+enum MediaTypeSetDetailsTag {
+ multiplexed,
+ lpcm,
+ compressedAudio,
+ video,
+ unknown
+}
+
+class MediaTypeSetDetails extends bindings.Union {
+ static final _tag_to_int = const {
+ MediaTypeSetDetailsTag.multiplexed: 0,
+ MediaTypeSetDetailsTag.lpcm: 1,
+ MediaTypeSetDetailsTag.compressedAudio: 2,
+ MediaTypeSetDetailsTag.video: 3,
+ };
+
+ static final _int_to_tag = const {
+ 0: MediaTypeSetDetailsTag.multiplexed,
+ 1: MediaTypeSetDetailsTag.lpcm,
+ 2: MediaTypeSetDetailsTag.compressedAudio,
+ 3: MediaTypeSetDetailsTag.video,
+ };
+
+ var _data;
+ MediaTypeSetDetailsTag _tag = MediaTypeSetDetailsTag.unknown;
+
+ MediaTypeSetDetailsTag get tag => _tag;
+ MultiplexedMediaTypeSetDetails get multiplexed {
+ if (_tag != MediaTypeSetDetailsTag.multiplexed) {
+ throw new bindings.UnsetUnionTagError(_tag, MediaTypeSetDetailsTag.multiplexed);
+ }
+ return _data;
+ }
+
+ set multiplexed(MultiplexedMediaTypeSetDetails value) {
+ _tag = MediaTypeSetDetailsTag.multiplexed;
+ _data = value;
+ }
+ LpcmMediaTypeSetDetails get lpcm {
+ if (_tag != MediaTypeSetDetailsTag.lpcm) {
+ throw new bindings.UnsetUnionTagError(_tag, MediaTypeSetDetailsTag.lpcm);
+ }
+ return _data;
+ }
+
+ set lpcm(LpcmMediaTypeSetDetails value) {
+ _tag = MediaTypeSetDetailsTag.lpcm;
+ _data = value;
+ }
+ CompressedAudioMediaTypeSetDetails get compressedAudio {
+ if (_tag != MediaTypeSetDetailsTag.compressedAudio) {
+ throw new bindings.UnsetUnionTagError(_tag, MediaTypeSetDetailsTag.compressedAudio);
+ }
+ return _data;
+ }
+
+ set compressedAudio(CompressedAudioMediaTypeSetDetails value) {
+ _tag = MediaTypeSetDetailsTag.compressedAudio;
+ _data = value;
+ }
+ VideoMediaTypeSetDetails get video {
+ if (_tag != MediaTypeSetDetailsTag.video) {
+ throw new bindings.UnsetUnionTagError(_tag, MediaTypeSetDetailsTag.video);
+ }
+ return _data;
+ }
+
+ set video(VideoMediaTypeSetDetails value) {
+ _tag = MediaTypeSetDetailsTag.video;
+ _data = value;
+ }
+
+ static MediaTypeSetDetails decode(bindings.Decoder decoder0, int offset) {
+ int size = decoder0.decodeUint32(offset);
+ if (size == 0) {
+ return null;
+ }
+ MediaTypeSetDetails result = new MediaTypeSetDetails();
+
+ // TODO(azani): Handle unknown union member.
+ MediaTypeSetDetailsTag tag = _int_to_tag[decoder0.decodeUint32(offset + 4)];
+ switch (tag) {
+ case MediaTypeSetDetailsTag.multiplexed:
+
+ var decoder1 = decoder0.decodePointer(offset + 8, false);
+ result.multiplexed = MultiplexedMediaTypeSetDetails.decode(decoder1);
+ break;
+ case MediaTypeSetDetailsTag.lpcm:
+
+ var decoder1 = decoder0.decodePointer(offset + 8, false);
+ result.lpcm = LpcmMediaTypeSetDetails.decode(decoder1);
+ break;
+ case MediaTypeSetDetailsTag.compressedAudio:
+
+ var decoder1 = decoder0.decodePointer(offset + 8, false);
+ result.compressedAudio = CompressedAudioMediaTypeSetDetails.decode(decoder1);
+ break;
+ case MediaTypeSetDetailsTag.video:
+
+ var decoder1 = decoder0.decodePointer(offset + 8, false);
+ result.video = VideoMediaTypeSetDetails.decode(decoder1);
+ break;
+ }
+
+ return result;
+ }
+
+ void encode(bindings.Encoder encoder0, int offset) {
+ // TODO(azani): Error when trying to encode an unknown member.
+ encoder0.encodeUint32(16, offset);
+ encoder0.encodeUint32(_tag_to_int[_tag], offset + 4);
+ switch (_tag) {
+ case MediaTypeSetDetailsTag.multiplexed:
+
+ encoder0.encodeStruct(multiplexed, offset + 8, false);
+ break;
+ case MediaTypeSetDetailsTag.lpcm:
+
+ encoder0.encodeStruct(lpcm, offset + 8, false);
+ break;
+ case MediaTypeSetDetailsTag.compressedAudio:
+
+ encoder0.encodeStruct(compressedAudio, offset + 8, false);
+ break;
+ case MediaTypeSetDetailsTag.video:
+
+ encoder0.encodeStruct(video, offset + 8, false);
+ break;
+ }
+ }
+
+ String toString() {
+ String result = "MediaTypeSetDetails(";
+ switch (_tag) {
+ case MediaTypeSetDetailsTag.multiplexed:
+ result += "multiplexed";
+ break;
+ case MediaTypeSetDetailsTag.lpcm:
+ result += "lpcm";
+ break;
+ case MediaTypeSetDetailsTag.compressedAudio:
+ result += "compressedAudio";
+ break;
+ case MediaTypeSetDetailsTag.video:
+ result += "video";
+ break;
+ default:
+ result += "unknown";
+ }
+ result += ": $_data)";
+ return result;
+ }
+}
+

Powered by Google App Engine
This is Rietveld 408576698