mirror of
https://github.com/NishiOwO/tkwww.git
synced 2025-04-22 01:04:40 +00:00
61 lines
1.8 KiB
C
61 lines
1.8 KiB
C
/* The Stream class definition -- libwww
|
|
STREAM OBJECT DEFINITION
|
|
|
|
A Stream object is something which accepts a stream of text.
|
|
|
|
The creation methods will vary on the type of Stream Object. All creation methods
|
|
return a pointer to the stream type below.
|
|
|
|
As you can see, but the methods used to write to the stream and close it are pointed to
|
|
be the object itself.
|
|
|
|
*/
|
|
#ifndef HTSTREAM_H
|
|
#define HTSTREAM_H
|
|
|
|
#include "HTUtils.h"
|
|
|
|
typedef struct _HTStream HTStream;
|
|
|
|
/*
|
|
|
|
These are the common methods of all streams. They should be self-explanatory, except
|
|
for end_document which must be called before free. It should be merged with free in
|
|
fact: it should be dummy for new streams.
|
|
|
|
The put_block method was write, but this upset systems whiuch had macros for write().
|
|
|
|
*/
|
|
typedef struct _HTStreamClass {
|
|
|
|
char* name; /* Just for diagnostics */
|
|
|
|
void (*free) PARAMS((
|
|
HTStream* me));
|
|
|
|
void (*abort) PARAMS((
|
|
HTStream* me,
|
|
HTError e));
|
|
|
|
void (*put_character) PARAMS((
|
|
HTStream* me,
|
|
char ch));
|
|
|
|
void (*put_string) PARAMS((
|
|
HTStream* me,
|
|
CONST char * str));
|
|
|
|
void (*put_block) PARAMS((
|
|
HTStream* me,
|
|
CONST char * str,
|
|
int len));
|
|
|
|
|
|
}HTStreamClass;
|
|
|
|
#endif /* HTSTREAM_H */
|
|
|
|
/*
|
|
|
|
end of HTStream.h */
|