/simpletypesystem/trunk

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/simpletypesystem/trunk
76 by Gustav Hartvigsson
* Started working on this thing...
1
#ifndef __H_STREAM__
2
#define __H_STREAM__
3
4
#include "baseobject.h"
5
#include "defs.h"
6
#include "utils.h"
7
8
/**
9
 * @defgroup SStream SStream
10
 * @addtogroup SStream
11
 * @{
12
 * @warning unimplemented.
13
 * @TODO
14
 */
15
16
17
typedef struct SStream SStream;
18
typedef struct SStreamClass SStreamClass;
19
typedef struct SStreamPrivate SStreamPrivate;
20
21
77 by Gustav Hartvigsson
* More work on SStream... Requiers Mutex suppert :-)
22
typedef spointer (*StreamReader)(SStream * self, size_t len);
23
typedef void (*StreamWriter)(SStream * self, size_t len, spointer data);
24
25
struct SStream {
76 by Gustav Hartvigsson
* Started working on this thing...
26
  SObject parent;
27
  SStreamPrivate * priv;
77 by Gustav Hartvigsson
* More work on SStream... Requiers Mutex suppert :-)
28
};
76 by Gustav Hartvigsson
* Started working on this thing...
29
30
struct SStreamClass {
31
  SObject parent_class;
32
  
33
  StreamReader reader;
34
  StreamWriter writer;
35
};
36
37
/**
77 by Gustav Hartvigsson
* More work on SStream... Requiers Mutex suppert :-)
38
 * Create a new stream.
39
 */
40
SStream *
76 by Gustav Hartvigsson
* Started working on this thing...
41
s_stream_new ();
42
43
/**
44
 *
77 by Gustav Hartvigsson
* More work on SStream... Requiers Mutex suppert :-)
45
 */
46
size_t
47
s_stream_get_beffered (SStream * self);
48
49
50
/**
51
 * @}
76 by Gustav Hartvigsson
* Started working on this thing...
52
 */
53
54
#endif /* __H_STREAM__ */
55