ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

stream.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 doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.