index.html
Main Page
|
modules.html
Modules
|
namespaces.html
Namespace List
|
hierarchy.html
Class Hierarchy
|
annotated.html
Data Structures
|
dirs.html
Directories
|
files.html
File List
|
namespacemembers.html
Namespace Members
|
functions.html
Data Fields
|
pages.html
Related Pages
dir_000004.html
dbus
dbus-string-private.h
00001
/* -*- mode: C; c-file-style: "gnu" -*- */
00002
/* dbus-string-private.h String utility class (internal to D-BUS implementation)
00003
*
00004
* Copyright (C) 2002, 2003  Red Hat, Inc.
00005
*
00006
* Licensed under the Academic Free License version 2.1
00007
*
00008
* This program is free software; you can redistribute it and/or modify
00009
* it under the terms of the GNU General Public License as published by
00010
* the Free Software Foundation; either version 2 of the License, or
00011
* (at your option) any later version.
00012
*
00013
* This program is distributed in the hope that it will be useful,
00014
* but WITHOUT ANY WARRANTY; without even the implied warranty of
00015
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00016
* GNU General Public License for more details.
00017
*
00018
* You should have received a copy of the GNU General Public License
00019
* along with this program; if not, write to the Free Software
00020
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00021
*
00022
*/
00023
00024
#ifndef DBUS_STRING_PRIVATE_H
00025
#define DBUS_STRING_PRIVATE_H
00026
00027
#include <config.h>
00028
00029
#include <dbus/dbus-memory.h>
00030
#include <dbus/dbus-types.h>
00031
00032
#ifndef DBUS_CAN_USE_DBUS_STRING_PRIVATE
00033
#error "Don't go including dbus-string-private.h for no good reason"
00034
#endif
00035
00036
group__DBusMacros.html#ga0
DBUS_BEGIN_DECLS
00037
structDBusRealString.html
00044
typedef
struct
00045
{
structDBusRealString.html#o0
00046
unsigned
char
*str;
structDBusRealString.html#o1
00047
int
len;
structDBusRealString.html#o2
00048
int
allocated;
structDBusRealString.html#o3
00049
int
max_length;
structDBusRealString.html#o4
00050
unsigned
int
constant : 1;
structDBusRealString.html#o5
00051
unsigned
int
locked : 1;
structDBusRealString.html#o6
00052
unsigned
int
invalid : 1;
structDBusRealString.html#o7
00053
unsigned
int
align_offset : 3;
00054 }
structDBusRealString.html
DBusRealString
;
00055
00056
group__DBusStringInternals.html#ga0
00071
#define _DBUS_STRING_MAX_MAX_LENGTH (_DBUS_INT32_MAX - _DBUS_STRING_ALLOCATION_PADDING)
00072
group__DBusStringInternals.html#ga1
00078
#define DBUS_GENERIC_STRING_PREAMBLE(real) _dbus_assert ((real) != NULL); _dbus_assert (!(real)->invalid); _dbus_assert ((real)->len >= 0); _dbus_assert ((real)->allocated >= 0); _dbus_assert ((real)->max_length >= 0); _dbus_assert ((real)->len <= ((real)->allocated - _DBUS_STRING_ALLOCATION_PADDING)); _dbus_assert ((real)->len <= (real)->max_length)
00079
group__DBusStringInternals.html#ga2
00086
#define DBUS_STRING_PREAMBLE(str) DBusRealString *real = (DBusRealString*) str; \
00087
DBUS_GENERIC_STRING_PREAMBLE (real);                                          \
00088
_dbus_assert (!(real)->constant);                                             \
00089
_dbus_assert (!(real)->locked)
00090
group__DBusStringInternals.html#ga3
00098
#define DBUS_LOCKED_STRING_PREAMBLE(str) DBusRealString *real = (DBusRealString*) str; \
00099
DBUS_GENERIC_STRING_PREAMBLE (real);                                                 \
00100
_dbus_assert (!(real)->constant)
00101
group__DBusStringInternals.html#ga4
00107
#define DBUS_CONST_STRING_PREAMBLE(str) const DBusRealString *real = (DBusRealString*) str; \
00108
DBUS_GENERIC_STRING_PREAMBLE (real)
00109
00112
group__DBusMacros.html#ga1
DBUS_END_DECLS
00113
00114
#endif
/* DBUS_STRING_PRIVATE_H */
Generated on Tue Sep 13 01:28:07 2005 for D-BUS by
http://www.doxygen.org/index.html
doxygen
1.4.4
