/usr/include/sigc++-2.0/sigc++/sigc++.h is in libsigc++-2.0-dev 2.10.0-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 | /*
* Copyright 2003, The libsigc++ 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, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
*/
#ifndef SIGCXX_SIGCXX_H
#define SIGCXX_SIGCXX_H
/** @mainpage libsigc++ Reference Manual
*
* @section description Description
*
* libsigc++ provides a typesafe (at compile time) callback system for standard
* C++. It allows you to define signals and to connect those signals to any
* callback function, either a global or a member function, regardless of whether
* it is static or virtual. It also contains adaptor classes for connection of
* dissimilar callbacks.
*
* For instance, see the @ref signal "Signals", @ref sigcfunctors "Functors",
* @ref slot "Slots" and @ref adaptors "Adaptors".
*
* See also the
* <a href="http://libsigc.sourceforge.net/libsigc2/docs/manual/html/index.html">libsigc++ tutorial</a>,
* the <a href="http://libsigc.sourceforge.net/">libsigc++ website</a>, and
* the <a href="http://library.gnome.org/devel/gtkmm-tutorial/unstable/chapter-signals.html">Signals appendix of the Programming with gtkmm book</a>.
*
* @section features Features
*
* - Compile-time typesafe callbacks (also faster than run time checks)
* - Type-safety violations report the line number correctly with template names
* (no tracing template failures into headers)
* - No compiler extensions or meta compilers required
* - Proper handling of dynamic objects and signals (deleted objects will not
* cause crashes)
* - Extendable API at any level: signal, slot, connection and trackable
* - Extensions do not require alteration of basic components
* - User-definable accumulators
* - A variety of adaptors to change the callback signature: bind, hide,
* retype, and compose
*
* @section basics Basic Usage
*
* Include the libsigc++ header:
* @code
* #include <sigc++/sigc++.h>
* @endcode
* (You may include individual headers, such as @c sigc++/bind.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 sigc++-2.0`
* @endcode
*
* @subsection autotools Using Autotools
*
* Alternatively, if using autoconf, use the following in @c configure.ac:
* @code
* PKG_CHECK_MODULES([DEPS], [sigc++-2.0])
* @endcode
* Then use the generated @c DEPS_CFLAGS and @c DEPS_LIBS variables
* in the project @c Makefile.am files. For example:
* @code
* yourprogram_CPPFLAGS = $(DEPS_CFLAGS)
* yourprogram_LDADD = $(DEPS_LIBS)
* @endcode
*
* Your @c PKG_CHECK_MODULES() call should also mention any other libraries that
* you need to use via pkg-config.
*
* @subsection cmake Using CMake
*
* If using CMake, use the following in @c CMakeList.txt:
* @code
* include(FindPkgConfig)
* pkg_check_modules(DEPS REQUIRED sigc++-2.0)
* include_directories(${DEPS_INCLUDE_DIRS})
* target_link_libraries(yourprogram ${DEPS_LIBRARIES})
* @endcode
*
* Your @c pkg_check_modules() call should also mention any other libraries that
* you need to use via pkg-config.
*
* @section scope Scope of Documentation
*
* libsigc++ contains many template functions and template classes/structs,
* some with many specializations. This reference manual does not show all
* specializations of those templates that hardly any user will use directly.
*/
#include <sigc++/signal.h>
#include <sigc++/connection.h>
#include <sigc++/trackable.h>
#include <sigc++/adaptors/adaptors.h>
#include <sigc++/functors/functors.h>
#endif /* SIGCXX_SIGCXX_H */
|