- Main Page
- Modules
- Namespaces
- Classes
- Files

# format.h

Go to the documentation of this file.

    00001 // -*- c++ -*-
    00002 // Generated by gtkmmproc -- DO NOT MODIFY!
    00003 #ifndef _GSTREAMERMM_FORMAT_H
    00004 #define _GSTREAMERMM_FORMAT_H
    00005
    00006
    00007 #include <glibmm.h>
    00008
    00009 /* gstreamermm - a C++ wrapper for gstreamer
    00010  *
    00011  * Copyright 2008 The gstreamermm Development Team
    00012  *
    00013  * This library is free software; you can redistribute it and/or
    00014  * modify it under the terms of the GNU Lesser General Public
    00015  * License as published by the Free Software Foundation; either
    00016  * version 2.1 of the License, or (at your option) any later version.
    00017  *
    00018  * This library is distributed in the hope that it will be useful,
    00019  * but WITHOUT ANY WARRANTY; without even the implied warranty of
    00020  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    00021  * Lesser General Public License for more details.
    00022  *
    00023  * You should have received a copy of the GNU Lesser General Public
    00024  * License along with this library; if not, write to the Free
    00025  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
    00026  */
    00027
    00028 #include <gst/gstformat.h>
    00029
    00030
    00031 namespace Gst
    00032 {
    00033
    00034 //Gst::IteratorBasic<> forward declaration.
    00035 template <class CppType>
    00036 class IteratorBasic;
    00037
    00043 enum Format
    00044 {
    00045   FORMAT_UNDEFINED,
    00046   FORMAT_DEFAULT,
    00047   FORMAT_BYTES,
    00048   FORMAT_TIME,
    00049   FORMAT_BUFFERS,
    00050   FORMAT_PERCENT
    00051 };
    00052
    00053 } // namespace Gst
    00054
    00055
    00056 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00057 namespace Glib
    00058 {
    00059
    00060 template <>
    00061 class Value<Gst::Format> : public Glib::Value_Enum<Gst::Format>
    00062 {
    00063 public:
    00064   static GType value_type() G_GNUC_CONST;
    00065 };
    00066
    00067 } // namespace Glib
    00068 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00069
    00070
    00071 namespace Gst
    00072 {
    00073
    00074
    00078 class FormatDefinition
    00079 {
    00080   public:
    00081 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00082   typedef FormatDefinition CppObjectType;
    00083   typedef GstFormatDefinition BaseObjectType;
    00084 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00085
    00086 private:
    00087
    00088
    00089 public:
    00091   FormatDefinition();
    00092
    00097   FormatDefinition(const GstFormatDefinition* castitem);
    00098
    00100   Gst::Format         value;
    00101
    00103   Glib::ustring       nick;
    00104
    00106   Glib::ustring       description;
    00107
    00109   Glib::QueryQuark    quark;
    00110
    00111
    00112 };
    00113
    00114 namespace Enums
    00115 {
    00116
    00122 Glib::ustring get_name(Format format);
    00123
    00129 Glib::QueryQuark get_quark(Format format);
    00130
    00131 } //namespace Enums
    00132
    00141 Format register_format(const Glib::ustring& nick, const Glib::ustring&
    00142 description);
    00143
    00150 Format get_format(const Glib::ustring& nick);
    00151
    00158 bool formats_contain(const Glib::ArrayHandle<Format>& formats, Format format);
    00159
    00167 bool get_format_details(Format format, FormatDefinition& def);
    00168
    00172 IteratorBasic<const FormatDefinition> iterate_format_definitions();
    00173
    00174 } //namespace Gst
    00175
    00176
    00177 #endif /* _GSTREAMERMM_FORMAT_H */
    00178