diff options
| author | Nicholas Estelami <NEstelami@users.noreply.github.com> | 2021-08-08 13:51:51 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-08-08 13:51:51 -0400 |
| commit | 0fb7568ec0d07ea414f8c3f286de352e9606d016 (patch) | |
| tree | deba58f4cf06f669aa14e85462055d63b4bc6e99 /ZAPD/Utils/MemoryStream.cpp | |
| parent | 82bd27604a4c8f8c1f01f9c2f54c87fab103c39f (diff) | |
Moved utility code into its own library (#162)
* Initial exporter implementation
* Updated to use static library.
* minor cleanup
* Cleaned things up a bit
* Fixed merge issues
* Minor commenting
* Added Begin and End functions, and removed HL stuff (to be turned into an exporter at a later date)
* Cleaned some stuff up
* Additional cleanup
* Removed some commented out code
* Fixed compilation issues
* Cleanup
* Fixed merge issues
* Got rid of unused windows.h includes
* Cleanup
* Fixed warning
* Removed additional redundancies
* Cleanup
* Fixed merge issues
* Fixed some compiler issues, added makefile for exportertest.
* Removed redundancies and clang formatted
* Made sure exportertest compiles with C++17
* Moved certain files into new "Utils" folder.
* GetExporterMap uses a reference now
* Minor fixes and updates.
* Moved utility code into its own library
* Fixed merge issues
* Fixed compilation issue
* Added missing classes
* Updated makefile
* Minor update
* Forgot to make an enum an 'enum class'
* Minor fix
* Few more adjustments
* Bug fix
* Another bug fix
* Bug fix again
* added comment
* New functions added for exporters
* Made certain fields public
Co-authored-by: Jack Walker <7463599+Jack-Walker@users.noreply.github.com>
Diffstat (limited to 'ZAPD/Utils/MemoryStream.cpp')
| -rw-r--r-- | ZAPD/Utils/MemoryStream.cpp | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/ZAPD/Utils/MemoryStream.cpp b/ZAPD/Utils/MemoryStream.cpp deleted file mode 100644 index 6c940be..0000000 --- a/ZAPD/Utils/MemoryStream.cpp +++ /dev/null @@ -1,90 +0,0 @@ -#include "MemoryStream.h" -#include <string.h> - -#ifndef _MSC_VER -#define memcpy_s(dest, destSize, source, sourceSize) memcpy(dest, source, destSize) -#endif - -MemoryStream::MemoryStream() -{ - buffer = std::vector<char>(); - bufferSize = 0; - baseAddress = 0; -} - -MemoryStream::MemoryStream(char* nBuffer, size_t nBufferSize) : MemoryStream() -{ - buffer = std::vector<char>(nBuffer, nBuffer + nBufferSize); - bufferSize = nBufferSize; - baseAddress = 0; -} - -MemoryStream::~MemoryStream() -{ -} - -uint64_t MemoryStream::GetLength() -{ - return buffer.size(); -} - -void MemoryStream::Seek(int32_t offset, SeekOffsetType seekType) -{ - if (seekType == SeekOffsetType::Start) - baseAddress = offset; - else if (seekType == SeekOffsetType::Current) - baseAddress += offset; - else if (seekType == SeekOffsetType::End) - baseAddress = bufferSize - 1 - offset; -} - -std::unique_ptr<char[]> MemoryStream::Read(size_t length) -{ - std::unique_ptr<char[]> result = std::make_unique<char[]>(length); - - memcpy_s(result.get(), length, &buffer[baseAddress], length); - baseAddress += length; - - return result; -} - -int8_t MemoryStream::ReadByte() -{ - return buffer[baseAddress++]; -} - -void MemoryStream::Write(char* srcBuffer, size_t length) -{ - if (baseAddress + length >= buffer.size()) - { - buffer.resize(baseAddress + length); - bufferSize += length; - } - - memcpy_s(&buffer[baseAddress], length, srcBuffer, length); - baseAddress += length; -} - -void MemoryStream::WriteByte(int8_t value) -{ - if (baseAddress >= buffer.size()) - { - buffer.resize(baseAddress + 1); - bufferSize = baseAddress; - } - - buffer[baseAddress++] = value; -} - -std::vector<char> MemoryStream::ToVector() -{ - return buffer; -} - -void MemoryStream::Flush() -{ -} - -void MemoryStream::Close() -{ -}
\ No newline at end of file |
