participant to parent (TrackPublication)

This commit is contained in:
Hiroshi Horie
2021-12-03 00:57:42 +07:00
parent 2fe32f7d72
commit 4c66704427
6 changed files with 53 additions and 32 deletions
+10 -4
View File
@@ -1,10 +1,11 @@
import 'package:meta/meta.dart';
import '../extensions.dart';
import '../participant/participant.dart';
import '../proto/livekit_models.pb.dart' as lk_models;
import '../support/disposable.dart';
import '../types.dart';
import '../track/track.dart';
import '../types.dart';
/// Represents a track that's published to the server. This class contains
/// metadata associated with tracks.
@@ -18,8 +19,12 @@ abstract class TrackPublication extends Disposable {
final lk_models.TrackType kind;
final TrackSource source;
// Relevant type must be implemented
abstract Track? track;
// Track? get track => _track;
// Relevant type must be implemented
/// The [Participant] this publication belongs to.
abstract final Participant participant;
// metadata-muted
bool _muted = false;
@@ -30,8 +35,9 @@ abstract class TrackPublication extends Disposable {
bool get subscribed => track != null;
TrackPublication.fromInfo(lk_models.TrackInfo info)
: sid = info.sid,
TrackPublication({
required lk_models.TrackInfo info,
}) : sid = info.sid,
name = info.name,
kind = info.type,
source = info.source.toLKType() {