1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- import 'dart:typed_data';
- ///Not used for now.
- class VidUsDataWriter {
- final BytesBuilder _builder = BytesBuilder();
- Uint8List get data => _builder.toBytes();
- void writeString(String value) {
- var data = value.codeUnits;
- var length = data.length * 2;
- writeInt(length);
- for (var codeUnit in data) {
- _builder.addByte(codeUnit & 0xff);
- _builder.addByte((codeUnit >> 8) & 0xff);
- }
- }
- void writeInt(int value) {
- var data = Uint8List(4);
- data.buffer.asByteData().setInt32(0, value, Endian.little);
- _builder.add(data);
- }
- void writeInt16(int value) {
- var data = Uint8List(2);
- data.buffer.asByteData().setInt16(0, value, Endian.little);
- _builder.add(data);
- }
- void writeInt64(int value) {
- var data = Uint8List(8);
- data.buffer.asByteData().setInt64(0, value, Endian.little);
- _builder.add(data);
- }
- void writeFloat(double value) {
- var data = Uint8List(4);
- data.buffer.asByteData().setFloat32(0, value, Endian.little);
- _builder.add(data);
- }
- void writeDouble(double value) {
- var data = Uint8List(8);
- data.buffer.asByteData().setFloat64(0, value, Endian.little);
- _builder.add(data);
- }
- void writeBool(bool value) {
- _builder.addByte(value ? 1 : 0);
- }
- void writeByte(int value) {
- _builder.addByte(value);
- }
- void writeBytes(Uint8List value) {
- writeInt(value.length);
- _builder.add(value);
- }
- void writeLongs(Int64List value) {
- _builder.add(value.buffer.asUint8List());
- }
- }
|