Files

36 lines
1.0 KiB
C++
Raw Permalink Normal View History

2026-01-16 22:45:06 -05:00
#ifndef AXIO_CFILEOUTSTREAM_H
#define AXIO_CFILEOUTSTREAM_H
#include "IOutputStream.h"
class CFileOutStream : public IOutputStream
{
private:
FILE *mpFStream = nullptr;
TString mName;
2026-01-11 11:00:26 -05:00
uint32_t mSize = 0;
public:
CFileOutStream();
2025-12-17 13:44:30 -05:00
explicit CFileOutStream(const TString& rkFile);
2025-12-23 14:15:09 -05:00
explicit CFileOutStream(const TString& rkFile, std::endian FileEndianness);
CFileOutStream(const CFileOutStream& rkSrc);
2025-12-17 13:44:30 -05:00
~CFileOutStream() override;
2025-12-23 14:15:09 -05:00
void Open(const TString& rkFile, std::endian);
void Update(const TString& rkFile, std::endian FileEndianness);
void Close();
2026-01-11 11:00:26 -05:00
void WriteBytes(const void* pkSrc, uint32_t Count) override;
bool Seek(int32_t Offset, uint32_t Origin) override;
bool Seek64(int64_t Offset, uint32_t Origin) override;
uint32_t Tell() const override;
uint64_t Tell64() const override;
bool EoF() const override;
bool IsValid() const override;
2026-01-11 11:00:26 -05:00
uint32_t Size() const override;
TString FileName() const;
};
2026-01-16 22:45:06 -05:00
#endif // AXIO_CFILEOUTSTREAM_H