/* generate_extra_defs.h * * Copyright (C) 2001 The Free Software Foundation * * 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 . */ #include #include #include #if defined (_MSC_VER) && !defined (GLIBMM_GEN_EXTRA_DEFS_STATIC) #if defined (GLIBMM_GEN_EXTRA_DEFS_BUILD) #define GLIBMM_GEN_EXTRA_DEFS_API __declspec (dllexport) #else #define GLIBMM_GEN_EXTRA_DEFS_API __declspec (dllimport) #endif #else #define GLIBMM_GEN_EXTRA_DEFS_API #endif /** Function pointer type for functions that determine if a GType is a pointer * type. */ using GTypeIsAPointerFunc = bool(*)(GType gtype); /** Default extra defs utility function to determine if a GType is a pointer * type. * @param gtype The GType. * @return true if the GType is a GObject or a boxed type, false otherwise. */ GLIBMM_GEN_EXTRA_DEFS_API bool gtype_is_a_pointer(GType gtype); GLIBMM_GEN_EXTRA_DEFS_API std::string get_defs(GType gtype, GTypeIsAPointerFunc is_a_pointer_func = gtype_is_a_pointer); GLIBMM_GEN_EXTRA_DEFS_API std::string get_property_with_node_name( GParamSpec* pParamSpec, const std::string& strObjectName, const std::string& strNodeName); GLIBMM_GEN_EXTRA_DEFS_API std::string get_properties(GType gtype); GLIBMM_GEN_EXTRA_DEFS_API std::string get_type_name(GType gtype, GTypeIsAPointerFunc is_a_pointer_func = gtype_is_a_pointer); GLIBMM_GEN_EXTRA_DEFS_API std::string get_type_name_parameter( GType gtype, GTypeIsAPointerFunc is_a_pointer_func = gtype_is_a_pointer); GLIBMM_GEN_EXTRA_DEFS_API std::string get_type_name_signal( GType gtype, GTypeIsAPointerFunc is_a_pointer_func = gtype_is_a_pointer); GLIBMM_GEN_EXTRA_DEFS_API std::string get_signals(GType gtype, GTypeIsAPointerFunc is_a_pointer_func = gtype_is_a_pointer);