Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenstream.h
Go to the documentation of this file.
00001 /* 00002 * Copyright 2007 Jacek Caban for CodeWeavers 00003 * 00004 * This library is free software; you can redistribute it and/or 00005 * modify it under the terms of the GNU Lesser General Public 00006 * License as published by the Free Software Foundation; either 00007 * version 2.1 of the License, or (at your option) any later version. 00008 * 00009 * This library is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00012 * Lesser General Public License for more details. 00013 * 00014 * You should have received a copy of the GNU Lesser General Public 00015 * License along with this library; if not, write to the Free Software 00016 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 00017 */ 00018 00019 #ifndef HHCTRL_STREAM_H 00020 #define HHCTRL_STREAM_H 00021 00022 #define BLOCK_SIZE 0x1000 00023 00024 typedef struct { 00025 char *buf; 00026 int size; 00027 int len; 00028 } strbuf_t; 00029 00030 typedef struct { 00031 IStream *str; 00032 char buf[BLOCK_SIZE]; 00033 ULONG size; 00034 ULONG p; 00035 } stream_t; 00036 00037 void strbuf_init(strbuf_t *buf); 00038 void strbuf_zero(strbuf_t *buf); 00039 void strbuf_free(strbuf_t *buf); 00040 void strbuf_append(strbuf_t *buf, const char *data, int len); 00041 void stream_init(stream_t *stream, IStream *str); 00042 BOOL stream_chr(stream_t *stream, strbuf_t *buf, char c); 00043 void get_node_name(strbuf_t *node, strbuf_t *name); 00044 BOOL next_content(stream_t *stream, strbuf_t *buf); 00045 BOOL next_node(stream_t *stream, strbuf_t *buf); 00046 const char *get_attr(const char *node, const char *name, int *len); 00047 00048 #endif Generated on Fri May 25 2012 04:21:59 for ReactOS by
1.7.6.1
|