QXmpp  Version: 1.5.5
QXmppCallStream.h
1 // SPDX-FileCopyrightText: 2019 Niels Ole Salscheider <niels_ole@salscheider-online.de>
2 //
3 // SPDX-License-Identifier: LGPL-2.1-or-later
4 
5 #ifndef QXMPPCALLSTREAM_H
6 #define QXMPPCALLSTREAM_H
7 
8 #include <QXmppGlobal.h>
9 
10 #include <functional>
11 
12 #include <QObject>
13 
14 typedef struct _GstPad GstPad;
15 typedef struct _GstElement GstElement;
16 
17 class QXmppCallStreamPrivate;
18 class QXmppIceConnection;
19 class QXmppCall;
20 class QXmppCallPrivate;
21 
22 class QXMPP_EXPORT QXmppCallStream : public QObject
23 {
24  Q_OBJECT
25 
26 public:
27  QString creator() const;
28  QString media() const;
29  QString name() const;
30  int id() const;
31  void setReceivePadCallback(std::function<void(GstPad *)> cb);
32  void setSendPadCallback(std::function<void(GstPad *)> cb);
33 
34 private:
35  QXmppCallStream(GstElement *pipeline, GstElement *rtpbin,
36  QString media, QString creator, QString name, int id);
37 
38  QXmppCallStreamPrivate *d;
39 
40  friend class QXmppCall;
41  friend class QXmppCallPrivate;
42 };
43 
44 #endif
Definition: QXmppCallStream.h:23
Definition: QXmppCall.h:21
The QXmppIceConnection class represents a set of UDP sockets capable of performing Interactive Connec...
Definition: QXmppStun.h:224