6#include "TTauri/Foundation/FileMapping.hpp"
7#include "TTauri/Foundation/ResourceView.hpp"
43 [[nodiscard]] AccessMode
accessMode() const noexcept {
return fileMappingObject->accessMode(); }
47 [[nodiscard]]
URL const &
location() const noexcept {
return fileMappingObject->location(); }
51 [[nodiscard]]
size_t offset() const noexcept
override {
return _offset; }
55 [[nodiscard]]
size_t size() const noexcept
override {
return _bytes->size(); }
59 [[nodiscard]] std::byte *
data() noexcept {
return _bytes->data(); }
63 [[nodiscard]] std::byte
const *
data() const noexcept
override {
return _bytes->data(); }
67 [[nodiscard]] nonstd::span<std::byte>
bytes() noexcept {
return *_bytes; }
71 [[nodiscard]] nonstd::span<std::byte const>
bytes() const noexcept
override {
return *_bytes; }
76 return std::string_view{
reinterpret_cast<char *
>(
data()),
size()};
81 [[nodiscard]] std::string_view
string_view() const noexcept
override {
82 return std::string_view{
reinterpret_cast<char const *
>(
data()),
size()};
95 return std::make_unique<FileView>(
location);
105 static void unmap(nonstd::span<std::byte> *
bytes)
noexcept;
Definition FileView.hpp:14
size_t size() const noexcept override
Definition FileView.hpp:55
AccessMode accessMode() const noexcept
Definition FileView.hpp:43
std::byte * data() noexcept
Definition FileView.hpp:59
static std::unique_ptr< ResourceView > loadView(URL const &location)
Definition FileView.hpp:94
void flush(void *base, size_t size)
nonstd::span< std::byte const > bytes() const noexcept override
Definition FileView.hpp:71
size_t offset() const noexcept override
Definition FileView.hpp:51
std::string_view string_view() noexcept
Definition FileView.hpp:75
std::string_view string_view() const noexcept override
Definition FileView.hpp:81
std::byte const * data() const noexcept override
Definition FileView.hpp:63
nonstd::span< std::byte > bytes() noexcept
Definition FileView.hpp:67
URL const & location() const noexcept
Definition FileView.hpp:47
A read-only memory mapping of a resource.
Definition ResourceView.hpp:17