[Telepathy-commits] [telepathy-qt4/master] StreamedMediaChannel: Added removeStreams/requestStreams.
Andre Moreira Magalhaes (andrunko)
andre.magalhaes at collabora.co.uk
Tue Mar 10 23:01:04 PDT 2009
---
TelepathyQt4/Client/streamed-media-channel.cpp | 31 ++++++++++++++++++++++-
TelepathyQt4/Client/streamed-media-channel.h | 4 +--
2 files changed, 30 insertions(+), 5 deletions(-)
diff --git a/TelepathyQt4/Client/streamed-media-channel.cpp b/TelepathyQt4/Client/streamed-media-channel.cpp
index 8279be3..3318488 100644
--- a/TelepathyQt4/Client/streamed-media-channel.cpp
+++ b/TelepathyQt4/Client/streamed-media-channel.cpp
@@ -131,8 +131,7 @@ Telepathy::MediaStreamPendingSend MediaStream::pendingSend() const
PendingOperation *MediaStream::remove()
{
- return new PendingVoidMethodCall(this,
- mPriv->channel->streamedMediaInterface()->RemoveStreams(Telepathy::UIntList() << mPriv->id));
+ return mPriv->channel->removeStreams(Telepathy::UIntList() << mPriv->id);
}
PendingOperation *MediaStream::requestStreamDirection(
@@ -289,6 +288,34 @@ PendingOperation *StreamedMediaChannel::acceptCall()
return groupAddSelfHandle();
}
+PendingOperation *StreamedMediaChannel::removeStreams(MediaStreams streams)
+{
+ Telepathy::UIntList ids;
+ foreach (const QSharedPointer<MediaStream> &stream, streams) {
+ ids << stream->id();
+ }
+ return removeStreams(ids);
+}
+
+PendingOperation *StreamedMediaChannel::removeStreams(const Telepathy::UIntList &ids)
+{
+ return new PendingVoidMethodCall(this,
+ streamedMediaInterface()->RemoveStreams(ids));
+}
+
+PendingOperation *StreamedMediaChannel::requestStreams(
+ QSharedPointer<Telepathy::Client::Contact> contact,
+ QList<Telepathy::MediaStreamType> types)
+{
+ Telepathy::UIntList l;
+ foreach (Telepathy::MediaStreamType type, types) {
+ l << type;
+ }
+ return new PendingVoidMethodCall(this,
+ streamedMediaInterface()->RequestStreams(
+ contact->handle()[0], l));
+}
+
void StreamedMediaChannel::gotStreams(QDBusPendingCallWatcher *watcher)
{
QDBusPendingReply<QVariantMap> reply = *watcher;
diff --git a/TelepathyQt4/Client/streamed-media-channel.h b/TelepathyQt4/Client/streamed-media-channel.h
index b4b4897..b6dd950 100644
--- a/TelepathyQt4/Client/streamed-media-channel.h
+++ b/TelepathyQt4/Client/streamed-media-channel.h
@@ -107,14 +107,12 @@ public:
PendingOperation *acceptCall();
-#if 0
PendingOperation *removeStreams(MediaStreams streams);
- PendingOperation *removeStreams(QSet<uint> streams);
+ PendingOperation *removeStreams(const Telepathy::UIntList &ids);
PendingOperation *requestStreams(
QSharedPointer<Telepathy::Client::Contact> contact,
QList<Telepathy::MediaStreamType> types);
-#endif
Q_SIGNALS:
void streamAdded(const QSharedPointer<Telepathy::Client::MediaStream> &stream);
--
1.5.6.5
More information about the telepathy-commits
mailing list