/*!
* This file is part of CameraPlus.
*
- * Copyright (C) 2012 Mohammed Sameer <msameer@foolab.org>
+ * Copyright (C) 2012-2013 Mohammed Sameer <msameer@foolab.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
#include <gst/gst.h>
#include <QList>
-GstElement *qt_cam_analysis_bin_create(QList<GstElement *>& children, const char *name);
-GstElement *qt_cam_analysis_bin_create(GstElement *child, const char *name);
+class QtCamAnalysisBinPrivate;
+class QStringList;
+class QString;
+
+class QtCamAnalysisBin {
+public:
+ ~QtCamAnalysisBin();
+
+ static QtCamAnalysisBin *create(const QStringList& factories, const char *name);
+
+ void setBlocked(bool blocked);
+ bool isBlocked() const;
+
+ GstElement *bin();
+
+ QList<GstElement *> lookup(const QString& factory);
+
+private:
+ QtCamAnalysisBin(QtCamAnalysisBinPrivate *d);
+
+ QtCamAnalysisBinPrivate *d_ptr;
+};
#endif /* QT_CAM_ANALYSIS_BIN_H */