[Telepathy-commits] [telepathy-qt4/master] StreamedMediaChannel: Added streamsForType method.
Andre Moreira Magalhaes (andrunko)
andre.magalhaes at collabora.co.uk
Thu Mar 19 16:55:07 PDT 2009
---
TelepathyQt4/Client/streamed-media-channel.cpp | 19 +++++++++++++++++++
TelepathyQt4/Client/streamed-media-channel.h | 1 +
2 files changed, 20 insertions(+), 0 deletions(-)
diff --git a/TelepathyQt4/Client/streamed-media-channel.cpp b/TelepathyQt4/Client/streamed-media-channel.cpp
index 6c71c6f..b3b30a1 100644
--- a/TelepathyQt4/Client/streamed-media-channel.cpp
+++ b/TelepathyQt4/Client/streamed-media-channel.cpp
@@ -563,6 +563,25 @@ MediaStreams StreamedMediaChannel::streams() const
return mPriv->streams.values();
}
+MediaStreams StreamedMediaChannel::streamsForType(Telepathy::MediaStreamType type) const
+{
+ if (!isReady(FeatureStreams)) {
+ warning() << "Trying to retrieve streams from streamed media channel, but "
+ "streams was not requested or the request did not finish yet. "
+ "Use becomeReady(FeatureStreams)";
+ return MediaStreams();
+ }
+
+ QHash<uint, MediaStreamPtr> allStreams = mPriv->streams;
+ MediaStreams streams;
+ foreach (const MediaStreamPtr &stream, allStreams) {
+ if (stream->type() == type) {
+ streams.append(stream);
+ }
+ }
+ return streams;
+}
+
bool StreamedMediaChannel::awaitingLocalAnswer() const
{
return groupSelfHandleIsLocalPending();
diff --git a/TelepathyQt4/Client/streamed-media-channel.h b/TelepathyQt4/Client/streamed-media-channel.h
index f28700b..38eebbc 100644
--- a/TelepathyQt4/Client/streamed-media-channel.h
+++ b/TelepathyQt4/Client/streamed-media-channel.h
@@ -139,6 +139,7 @@ public:
~StreamedMediaChannel();
MediaStreams streams() const;
+ MediaStreams streamsForType(Telepathy::MediaStreamType type) const;
bool awaitingLocalAnswer() const;
bool awaitingRemoteAnswer() const;
--
1.5.6.5
More information about the telepathy-commits
mailing list