return casted list for videoTracks/audioTracks/subscribedTracks

This commit is contained in:
Hiroshi Horie
2021-11-30 12:37:13 +07:00
parent c71bcaeaf8
commit 9e0a3b19fe
3 changed files with 36 additions and 13 deletions
+11 -13
View File
@@ -74,8 +74,17 @@ abstract class Participant extends DisposableChangeNotifier
ConnectionQuality get connectionQuality => _connectionQuality;
/// tracks that are subscribed to
List<TrackPublication> get subscribedTracks =>
trackPublications.values.where((e) => e.subscribed).toList();
List<TrackPublication> get subscribedTracks => trackPublications.values
.where((e) => e.subscribed)
.toList();
List<TrackPublication> get videoTracks => trackPublications.values
.where((e) => e.kind == lk_models.TrackType.VIDEO)
.toList();
List<TrackPublication> get audioTracks => trackPublications.values
.where((e) => e.kind == lk_models.TrackType.AUDIO)
.toList();
/// for internal use
/// {@nodoc}
@@ -178,17 +187,6 @@ abstract class Participant extends DisposableChangeNotifier
bool operator ==(Object other) => other is Participant && sid == other.sid;
}
// Convenience extension
extension ParticipantExt on Participant {
List<TrackPublication> get videoTracks => trackPublications.values
.where((e) => e.kind == lk_models.TrackType.VIDEO)
.toList();
List<TrackPublication> get audioTracks => trackPublications.values
.where((e) => e.kind == lk_models.TrackType.AUDIO)
.toList();
}
extension ParticipantTrackSourceExt on Participant {
bool isCameraEnabled() {
return !(getTrackPublicationBySource(TrackSource.camera)?.muted ?? true);