sl@0: /* -*- mode: C; c-file-style: "gnu" -*- */ sl@0: /* dbus-signatures.h utility functions for D-Bus types sl@0: * sl@0: * Copyright (C) 2005 Red Hat Inc. sl@0: * Portion Copyright © 2008 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. sl@0: * Licensed under the Academic Free License version 2.1 sl@0: * sl@0: * This program is free software; you can redistribute it and/or modify sl@0: * it under the terms of the GNU General Public License as published by sl@0: * the Free Software Foundation; either version 2 of the License, or sl@0: * (at your option) any later version. sl@0: * sl@0: * This program is distributed in the hope that it will be useful, sl@0: * but WITHOUT ANY WARRANTY; without even the implied warranty of sl@0: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the sl@0: * GNU General Public License for more details. sl@0: * sl@0: * You should have received a copy of the GNU General Public License sl@0: * along with this program; if not, write to the Free Software sl@0: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA sl@0: * sl@0: */ sl@0: #if !defined (DBUS_INSIDE_DBUS_H) && !defined (DBUS_COMPILATION) sl@0: #error "Only can be included directly, this file may disappear or change contents." sl@0: #endif sl@0: sl@0: #ifndef DBUS_SIGNATURES_H sl@0: #define DBUS_SIGNATURES_H sl@0: sl@0: #include sl@0: #include sl@0: #include sl@0: sl@0: DBUS_BEGIN_DECLS sl@0: sl@0: /** sl@0: * @addtogroup DBusSignature sl@0: * @{ sl@0: */ sl@0: sl@0: /** sl@0: * DBusSignatureIter struct; contains no public fields sl@0: */ sl@0: typedef struct sl@0: { sl@0: void *dummy1; /**< Don't use this */ sl@0: void *dummy2; /**< Don't use this */ sl@0: dbus_uint32_t dummy8; /**< Don't use this */ sl@0: int dummy12; /**< Don't use this */ sl@0: int dummy17; /**< Don't use this */ sl@0: } DBusSignatureIter; sl@0: sl@0: #ifdef __SYMBIAN32__ sl@0: IMPORT_C sl@0: #endif sl@0: void dbus_signature_iter_init (DBusSignatureIter *iter, sl@0: const char *signature); sl@0: sl@0: #ifdef __SYMBIAN32__ sl@0: IMPORT_C sl@0: #endif sl@0: int dbus_signature_iter_get_current_type (const DBusSignatureIter *iter); sl@0: sl@0: #ifdef __SYMBIAN32__ sl@0: IMPORT_C sl@0: #endif sl@0: char * dbus_signature_iter_get_signature (const DBusSignatureIter *iter); sl@0: sl@0: #ifdef __SYMBIAN32__ sl@0: IMPORT_C sl@0: #endif sl@0: int dbus_signature_iter_get_element_type (const DBusSignatureIter *iter); sl@0: sl@0: #ifdef __SYMBIAN32__ sl@0: IMPORT_C sl@0: #endif sl@0: dbus_bool_t dbus_signature_iter_next (DBusSignatureIter *iter); sl@0: sl@0: #ifdef __SYMBIAN32__ sl@0: IMPORT_C sl@0: #endif sl@0: void dbus_signature_iter_recurse (const DBusSignatureIter *iter, sl@0: DBusSignatureIter *subiter); sl@0: sl@0: #ifdef __SYMBIAN32__ sl@0: IMPORT_C sl@0: #endif sl@0: dbus_bool_t dbus_signature_validate (const char *signature, sl@0: DBusError *error); sl@0: sl@0: #ifdef __SYMBIAN32__ sl@0: IMPORT_C sl@0: #endif sl@0: dbus_bool_t dbus_signature_validate_single (const char *signature, sl@0: DBusError *error); sl@0: sl@0: #ifdef __SYMBIAN32__ sl@0: IMPORT_C sl@0: #endif sl@0: dbus_bool_t dbus_type_is_basic (int typecode); sl@0: #ifdef __SYMBIAN32__ sl@0: IMPORT_C sl@0: #endif sl@0: dbus_bool_t dbus_type_is_container (int typecode); sl@0: #ifdef __SYMBIAN32__ sl@0: IMPORT_C sl@0: #endif sl@0: dbus_bool_t dbus_type_is_fixed (int typecode); sl@0: sl@0: /** @} */ sl@0: sl@0: DBUS_END_DECLS sl@0: sl@0: #endif /* DBUS_SIGNATURE_H */