AudioStreamBegin.fromReader constructor

AudioStreamBegin.fromReader(
  1. TeleportObjectReader reader
)

Implementation

factory AudioStreamBegin.fromReader(TeleportObjectReader reader) {
    final instance = AudioStreamBegin();
    TeleportField? field;
    while ((field = reader.next()) != null) {
        if (field!.isNull) continue;
        switch (field.fieldId) {
            case fieldIdStreamId: {
                instance.streamId = field.asString();
                break;
            }
            case fieldIdDescription: {
                instance.description = field.asString();
                break;
            }
            case fieldIdSourceType: {
                instance.sourceType = field.asString();
                break;
            }
            case fieldIdCodec: {
                instance.codec = AudioCodec.fromValue(field.asInt32());
                break;
            }
            case fieldIdCodecDetails: {
                instance.codecDetails = field.asString();
                break;
            }
            case fieldIdSampleRate: {
                instance.sampleRate = field.asInt32();
                break;
            }
            case fieldIdChannels: {
                instance.channels = field.asInt32();
                break;
            }
            case fieldIdShapeSets: {
                final ar = field.asArray();
                final list = <AudioShapeSet>[];
                TeleportArrayElement? el;
                while ((el = ar.next()) != null) {
                    list.add(AudioShapeSet.fromReader(el!.asObject()));
                }
                instance.shapeSets = list;
                break;
            }
            case fieldIdCorrelationId: {
                instance.correlationId = field.asString();
                break;
            }
        }
    }
    return instance;
}