rexglue-skate3/include/rex/filesystem/devices/null_file.h
2026-05-18 22:41:13 +01:00

37 lines
1.1 KiB
C++

/**
******************************************************************************
* Xenia : Xbox 360 Emulator Research Project *
******************************************************************************
* Copyright 2021 Ben Vanik. All rights reserved. *
* Released under the BSD license - see LICENSE in the root for more details. *
******************************************************************************
*
* @modified Tom Clay, 2026 - Adapted for ReXGlue runtime
*/
#pragma once
#include <span>
#include <string>
#include <rex/filesystem.h>
#include <rex/filesystem/file.h>
namespace rex::filesystem {
class NullEntry;
class NullFile : public File {
public:
NullFile(uint32_t file_access, NullEntry* entry);
~NullFile() override;
void Destroy() override;
X_STATUS ReadSync(std::span<uint8_t> buffer, size_t byte_offset, size_t* out_bytes_read) override;
X_STATUS WriteSync(std::span<const uint8_t> buffer, size_t byte_offset,
size_t* out_bytes_written) override;
X_STATUS SetLength(size_t length) override;
};
} // namespace rex::filesystem