DEADSOFTWARE

76edaaba1e32fd35606c0afc8e9e75d15b219241
[flatwaifu.git] / src / common / streams.c
1 #include "common/streams.h"
2 #include "common/endianness.h"
4 #include <stddef.h>
5 #include <stdint.h>
7 long stream_getpos (Stream *s) {
8 return s->getpos(s);
9 }
11 void stream_setpos (Stream *s, long pos) {
12 s->setpos(s, pos);
13 }
15 void stream_read (void *data, size_t size, size_t n, Stream *r) {
16 r->read(r, data, size, n);
17 }
19 int8_t stream_read8 (Stream *r) {
20 int8_t x;
21 r->read(r, &x, 1, 1);
22 return x;
23 }
25 int16_t stream_read16 (Stream *r) {
26 int16_t x;
27 r->read(r, &x, 2, 1);
28 return short2host(x);
29 }
31 int32_t stream_read32 (Stream *r) {
32 int32_t x;
33 r->read(r, &x, 4, 1);
34 return int2host(x);
35 }
37 void stream_write (const void *data, size_t size, size_t n, Stream *w) {
38 w->write(w, data, size, n);
39 }
41 void stream_write8 (int8_t x, Stream *w) {
42 w->write(w, &x, 1, 1);
43 }
45 void stream_write16 (int16_t x, Stream *w) {
46 int16_t y = short2host(x);
47 w->write(w, &y, 2, 1);
48 }
50 void stream_write32 (int32_t x, Stream *w) {
51 int32_t y = int2host(x);
52 w->write(w, &y, 4, 1);
53 }