sead
Loading...
Searching...
No Matches
seadStreamFormat.h
Go to the documentation of this file.
1#ifndef SEAD_STREAM_FORMAT_H_
2#define SEAD_STREAM_FORMAT_H_
3
4#include <prim/seadEndian.h>
5#include <prim/seadSafeString.h>
6
7namespace sead {
8
9class StreamSrc;
10
12{
13public:
14 virtual u8 readU8(StreamSrc* src, Endian::Types endian) = 0;
15 virtual u16 readU16(StreamSrc* src, Endian::Types endian) = 0;
16 virtual u32 readU32(StreamSrc* src, Endian::Types endian) = 0;
17 virtual u64 readU64(StreamSrc* src, Endian::Types endian) = 0;
18 virtual s8 readS8(StreamSrc* src, Endian::Types endian) = 0;
19 virtual s16 readS16(StreamSrc* src, Endian::Types endian) = 0;
20 virtual s32 readS32(StreamSrc* src, Endian::Types endian) = 0;
21 virtual s64 readS64(StreamSrc* src, Endian::Types endian) = 0;
22 virtual f32 readF32(StreamSrc* src, Endian::Types endian) = 0;
23 virtual void readBit(StreamSrc* src, void* data, u32 bitnum) = 0;
24 virtual void readString(StreamSrc* src, BufferedSafeString* dst, u32 size) = 0;
25 virtual u32 readMemBlock(StreamSrc* src, void* dst, u32 size) = 0;
26 virtual void writeU8(StreamSrc* src, Endian::Types endian, u8 value) = 0;
27 virtual void writeU16(StreamSrc* src, Endian::Types endian, u16 value) = 0;
28 virtual void writeU32(StreamSrc* src, Endian::Types endian, u32 value) = 0;
29 virtual void writeU64(StreamSrc* src, Endian::Types endian, u64 value) = 0;
30 virtual void writeS8(StreamSrc* src, Endian::Types endian, s8 value) = 0;
31 virtual void writeS16(StreamSrc* src, Endian::Types endian, s16 value) = 0;
32 virtual void writeS32(StreamSrc* src, Endian::Types endian, s32 value) = 0;
33 virtual void writeS64(StreamSrc* src, Endian::Types endian, s64 value) = 0;
34 virtual void writeF32(StreamSrc* src, Endian::Types endian, f32 value) = 0;
35 virtual void writeBit(StreamSrc* src, const void* data, u32 bitnum) = 0;
36 virtual void writeString(StreamSrc* src, const SafeString& str, u32 size) = 0;
37 virtual void writeMemBlock(StreamSrc* src, const void* data, u32 size) = 0;
38 virtual void writeDecorationText(StreamSrc* src, const SafeString&) = 0;
39 virtual void writeNullChar(StreamSrc* src) = 0;
40 virtual void skip(StreamSrc* src, u32 size) = 0;
41 virtual void flush(StreamSrc* src) = 0;
42 virtual void rewind(StreamSrc* src) = 0;
43};
44
45} // namespace sead
46
47#endif // SEAD_STREAM_FORMAT_H_
Definition seadEndian.h:10
Types
Definition seadEndian.h:13
Definition seadStreamFormat.h:12
virtual u8 readU8(StreamSrc *src, Endian::Types endian)=0
virtual s8 readS8(StreamSrc *src, Endian::Types endian)=0
virtual void skip(StreamSrc *src, u32 size)=0
virtual u32 readMemBlock(StreamSrc *src, void *dst, u32 size)=0
virtual void rewind(StreamSrc *src)=0
virtual s32 readS32(StreamSrc *src, Endian::Types endian)=0
virtual void writeU16(StreamSrc *src, Endian::Types endian, u16 value)=0
virtual u64 readU64(StreamSrc *src, Endian::Types endian)=0
virtual void writeU32(StreamSrc *src, Endian::Types endian, u32 value)=0
virtual void writeU8(StreamSrc *src, Endian::Types endian, u8 value)=0
virtual u16 readU16(StreamSrc *src, Endian::Types endian)=0
virtual u32 readU32(StreamSrc *src, Endian::Types endian)=0
virtual void writeF32(StreamSrc *src, Endian::Types endian, f32 value)=0
virtual s64 readS64(StreamSrc *src, Endian::Types endian)=0
virtual void readString(StreamSrc *src, BufferedSafeString *dst, u32 size)=0
virtual void writeMemBlock(StreamSrc *src, const void *data, u32 size)=0
virtual s16 readS16(StreamSrc *src, Endian::Types endian)=0
virtual void writeDecorationText(StreamSrc *src, const SafeString &)=0
virtual void writeU64(StreamSrc *src, Endian::Types endian, u64 value)=0
virtual void writeNullChar(StreamSrc *src)=0
virtual void writeS16(StreamSrc *src, Endian::Types endian, s16 value)=0
virtual void flush(StreamSrc *src)=0
virtual void readBit(StreamSrc *src, void *data, u32 bitnum)=0
virtual void writeBit(StreamSrc *src, const void *data, u32 bitnum)=0
virtual f32 readF32(StreamSrc *src, Endian::Types endian)=0
virtual void writeS32(StreamSrc *src, Endian::Types endian, s32 value)=0
virtual void writeString(StreamSrc *src, const SafeString &str, u32 size)=0
virtual void writeS64(StreamSrc *src, Endian::Types endian, s64 value)=0
virtual void writeS8(StreamSrc *src, Endian::Types endian, s8 value)=0
Definition seadStreamSrc.h:9
Definition seadAssert.h:44
SafeStringBase< char > SafeString
Definition seadSafeString.h:409
BufferedSafeStringBase< char > BufferedSafeString
Definition seadSafeString.h:411