root/ext/mbstring/libmbfl/mbfl/mbfl_memory_device.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /*
   2  * "streamable kanji code filter and converter"
   3  * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved.
   4  *
   5  * LICENSE NOTICES
   6  *
   7  * This file is part of "streamable kanji code filter and converter",
   8  * which is distributed under the terms of GNU Lesser General Public
   9  * License (version 2) as published by the Free Software Foundation.
  10  *
  11  * This software is distributed in the hope that it will be useful,
  12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14  * GNU Lesser General Public License for more details.
  15  *
  16  * You should have received a copy of the GNU Lesser General Public
  17  * License along with "streamable kanji code filter and converter";
  18  * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
  19  * Suite 330, Boston, MA  02111-1307  USA
  20  *
  21  * The author of this file:
  22  *
  23  */
  24 /*
  25  * The source code included in this files was separated from mbfilter.h
  26  * by Moriyoshi Koizumi <moriyoshi@php.net> on 20 Dec 2002. The file
  27  * mbfilter.h is included in this package .
  28  *
  29  */
  30 
  31 #ifndef MBFL_MEMORY_DEVICE_H
  32 #define MBFL_MEMORY_DEVICE_H
  33 
  34 #include "mbfl_defs.h"
  35 #include "mbfl_string.h"
  36 
  37 #define MBFL_MEMORY_DEVICE_ALLOC_SIZE   64
  38 
  39 typedef struct _mbfl_memory_device {
  40         unsigned char *buffer;
  41         int length;
  42         int pos;
  43         int allocsz;
  44 } mbfl_memory_device;
  45 
  46 typedef struct _mbfl_wchar_device {
  47         unsigned int *buffer;
  48         int length;
  49         int pos;
  50         int allocsz;
  51 } mbfl_wchar_device;
  52 
  53 MBFLAPI extern void mbfl_memory_device_init(mbfl_memory_device *device, int initsz, int allocsz);
  54 MBFLAPI extern void mbfl_memory_device_realloc(mbfl_memory_device *device, int initsz, int allocsz);
  55 MBFLAPI extern void mbfl_memory_device_clear(mbfl_memory_device *device);
  56 MBFLAPI extern void mbfl_memory_device_reset(mbfl_memory_device *device);
  57 MBFLAPI extern mbfl_string * mbfl_memory_device_result(mbfl_memory_device *device, mbfl_string *result);
  58 MBFLAPI extern void mbfl_memory_device_unput(mbfl_memory_device *device);
  59 MBFLAPI extern int mbfl_memory_device_output(int c, void *data);
  60 MBFLAPI extern int mbfl_memory_device_output2(int c, void *data);
  61 MBFLAPI extern int mbfl_memory_device_output4(int c, void *data);
  62 MBFLAPI extern int mbfl_memory_device_strcat(mbfl_memory_device *device, const char *psrc);
  63 MBFLAPI extern int mbfl_memory_device_strncat(mbfl_memory_device *device, const char *psrc, int len);
  64 MBFLAPI extern int mbfl_memory_device_devcat(mbfl_memory_device *dest, mbfl_memory_device *src);
  65 
  66 MBFLAPI extern void mbfl_wchar_device_init(mbfl_wchar_device *device);
  67 MBFLAPI extern int mbfl_wchar_device_output(int c, void *data);
  68 MBFLAPI extern void mbfl_wchar_device_clear(mbfl_wchar_device *device);
  69 
  70 
  71 
  72 #endif /* MBFL_MEMORY_DEVICE_H */
  73 

/* [<][>][^][v][top][bottom][index][help] */