QtGStreamer  1.2.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
pad.h
1 /*
2  Copyright (C) 2009-2010 George Kiagiadakis <kiagiadakis.george@gmail.com>
3 
4  This library is free software; you can redistribute it and/or modify
5  it under the terms of the GNU Lesser General Public License as published
6  by the Free Software Foundation; either version 2.1 of the License, or
7  (at your option) any later version.
8 
9  This program is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  GNU Lesser General Public License for more details.
13 
14  You should have received a copy of the GNU Lesser General Public License
15  along with this program. If not, see <http://www.gnu.org/licenses/>.
16 */
17 #ifndef QGST_PAD_H
18 #define QGST_PAD_H
19 
20 #include "object.h"
21 
22 namespace QGst {
23 
27 class QTGSTREAMER_EXPORT Pad : public Object
28 {
29  QGST_WRAPPER(Pad)
30 public:
31  static PadPtr create(PadDirection direction, const char *name = NULL);
32 
33  PadDirection direction() const;
34 
39  ElementPtr parentElement() const;
40  PadPtr peer() const;
41 
42  bool isLinked() const;
43  bool canLink(const PadPtr & sink) const;
44  PadLinkReturn link(const PadPtr & sink);
45  bool unlink(const PadPtr & sink);
46 
47  CapsPtr currentCaps() const;
48  CapsPtr allowedCaps() const;
49  CapsPtr padTemplateCaps() const;
50 
51  bool isActive() const;
52  bool setActive(bool active);
53 
54  bool isBlocked() const;
55  bool isBlocking() const;
56 
57  bool query(const QueryPtr & query);
58  bool sendEvent(const EventPtr & event);
59 };
60 
61 }
62 
63 QGST_REGISTER_TYPE(QGst::Pad)
64 
65 #endif
Smart pointer class for working with wrapper classes that support reference counting.
Definition: global.h:56
Wrapper class for GstObject.
Definition: object.h:28
Wrapper class for GstPad.
Definition: pad.h:27