summaryrefslogtreecommitdiff
path: root/src/io.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/io.cpp')
-rw-r--r--src/io.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/io.cpp b/src/io.cpp
new file mode 100644
index 0000000..50ffbcf
--- /dev/null
+++ b/src/io.cpp
@@ -0,0 +1,23 @@
+static void
+IO_WriteToStream(void *Address, uint64 FileSize, SDL_RWops *TestFile)
+{
+ uint64 Size_Written = SDL_RWwrite(TestFile, Address, 1, FileSize);
+
+ if (Size_Written != FileSize)
+ Assert(0);
+}
+
+static void
+IO_ReadFromStream(void *Address, uint64 SizeToRead, SDL_RWops *File)
+{
+ int64 TotalBytesRead = 0;
+ uint8 *Address_Playhead = (uint8 *)Address;
+ while (TotalBytesRead < SizeToRead) {
+ uint64 BytesRead = SDL_RWread(File, Address, 1, (SizeToRead - TotalBytesRead));
+ if (BytesRead == 0)
+ break;
+ TotalBytesRead += BytesRead;
+ Address_Playhead += BytesRead;
+ }
+ Assert(TotalBytesRead == SizeToRead);
+}