/* glibmm - a C++ wrapper for the GLib toolkit
*
* Copyright 2002 The gtkmm Development Team
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see .
*/
#ifndef _GLIBMM_H
#define _GLIBMM_H
/** @mainpage glibmm Reference Manual
*
* @section description Description
*
* glibmm is the official C++ interface for the popular cross-platform library %Glib.
* It provides non-UI API that is not available in standard C++ and makes it
* possible for gtkmm to wrap GObject-based APIs.
* See also the
* Programming with gtkmm book for a tutorial on programming with gtkmm and
* glibmm.
*
* @section features Features
*
* - Glib::ustring: A UTF-8 string class that can be used interchangably with std::string. Plus @ref
* StringUtils
* - Glib::RefPtr: A reference-counting smartpointer, for use with Glib::ObjectBase or similar
* - @ref CharsetConv
* - Glib::Regex: Regular expression string matching.
* - Glib::KeyFile: Parsing and writing of key files (similar to .ini files)
* - Glib::Checksum
* - Glib::Date, Glib::Timer, Glib::TimeVal
* - Glib::Dispatcher: Inter-thread communication
* - @ref FileUtils and @ref UriUtils
* - @ref MainLoop
* - @ref Spawn
* - @ref Threads
* - @ref MiscUtils
*
* giomm (part of the glibmm project) also contains:
* - Asynchronous IO. See Gio::File and the @ref Streams.
* - @ref NetworkIO
* - @ref DBus
* - Gio::Settings for application settings.
*
* @section basics Basic Usage
*
* Include the glibmm header, plus giomm if necessary:
* @code
* #include
* #include
* @endcode
* (You may include individual headers, such as @c glibmm/ustring.h instead.)
*
* If your source file is @c program.cc, you can compile it with:
* @code
* g++ program.cc -o program `pkg-config --cflags --libs glibmm-2.4 giomm-2.4`
* @endcode
*
* Alternatively, if using autoconf, use the following in @c configure.ac:
* @code
* PKG_CHECK_MODULES([GLIBMM], [glibmm-2.4 giomm-2.4])
* @endcode
* Then use the generated @c GLIBMM_CFLAGS and @c GLIBMM_LIBS variables in the
* project Makefile.am files. For example:
* @code
* program_CPPFLAGS = $(GLIBMM_CFLAGS)
* program_LDADD = $(GLIBMM_LIBS)
* @endcode
*/
#include
//#include //This must be included by the application, after system headers such as
//.
// Include this first because we need it to be the first thing to include ,
// so we can do an undef trick to still use deprecated API in the header:
#include
#include
#include
#include
#include
#ifndef GLIBMM_INCLUDED_FROM_WRAP_INIT_CC
// wrap_init.cc includes this file after it has cleared G_GNUC_CONST.
#include
#endif
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#endif /* _GLIBMM_H */