Files
Lioncache 7f20a5ef97 General: Add AXIO_ prefix to header guards
Makes any future potential of a class unlikely.
2026-01-16 22:45:09 -05:00

33 lines
902 B
C++

#ifndef AXIO_CMEMORYOUTSTREAM_H
#define AXIO_CMEMORYOUTSTREAM_H
#include "IOutputStream.h"
class CMemoryOutStream : public IOutputStream
{
char *mpDataStart = nullptr;
uint32_t mDataSize = 0;
uint32_t mPos = 0;
uint32_t mUsed = 0;
public:
CMemoryOutStream();
explicit CMemoryOutStream(void *pData, uint32_t Size, std::endian mDataEndianness);
~CMemoryOutStream() override;
void SetData(void *pData, uint32_t Size, std::endian mDataEndianness);
void WriteBytes(const void* pkSrc, uint32_t Count) override;
bool Seek(int32_t Offset, uint32_t Origin) override;
uint32_t Tell() const override;
bool EoF() const override;
bool IsValid() const override;
uint32_t Size() const override;
uint32_t SpaceUsed() const;
void SetSize(uint32_t Size);
void* Data() const;
void* DataAtPosition() const;
};
#endif // AXIO_CMEMORYOUTSTREAM_H