99 lines
15 KiB
XML
99 lines
15 KiB
XML
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
|
<doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.9.4" xml:lang="en-US">
|
|
<compounddef id="MemoryMappedFileStreamWindows_8h" kind="file" language="C++">
|
|
<compoundname>MemoryMappedFileStreamWindows.h</compoundname>
|
|
<includedby refid="MemoryMappedFileStream_8cpp" local="yes">MemoryMappedFileStream.cpp</includedby>
|
|
<invincdepgraph>
|
|
<node id="2">
|
|
<label>MemoryMappedFileStream.cpp</label>
|
|
<link refid="MemoryMappedFileStream_8cpp"/>
|
|
</node>
|
|
<node id="1">
|
|
<label>MemoryMappedFileStreamWindows.h</label>
|
|
<link refid="MemoryMappedFileStreamWindows_8h"/>
|
|
<childnode refid="2" relation="include">
|
|
</childnode>
|
|
</node>
|
|
</invincdepgraph>
|
|
<briefdescription>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<programlisting>
|
|
<codeline lineno="1"><highlight class="comment">//<sp/>Copyright<sp/>Epic<sp/>Games,<sp/>Inc.<sp/>All<sp/>Rights<sp/>Reserved.</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="2"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="3"><highlight class="normal"></highlight><highlight class="preprocessor">#pragma<sp/>once</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="4"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="5"><highlight class="normal"></highlight><highlight class="comment">//<sp/>*INDENT-OFF*</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="6"><highlight class="normal"></highlight><highlight class="preprocessor">#ifdef<sp/>TRIO_WINDOWS_FILE_MAPPING_AVAILABLE</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="7"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="8"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="MemoryMappedFileStream_8h" kindref="compound">trio/streams/MemoryMappedFileStream.h</ref>"</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="9"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="StreamStatus_8h" kindref="compound">trio/streams/StreamStatus.h</ref>"</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="10"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="trio_2types_2Aliases_8h" kindref="compound">trio/types/Aliases.h</ref>"</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="11"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="NativeString_8h" kindref="compound">trio/utils/NativeString.h</ref>"</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="12"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>"<ref refid="PlatformWindows_8h" kindref="compound">trio/utils/PlatformWindows.h</ref>"</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="13"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="14"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/><<ref refid="include_2pma_2TypeDefs_8h" kindref="compound">pma/TypeDefs.h</ref>></highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="15"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="16"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/><cstddef></highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="17"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/><cstdint></highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="18"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="19"><highlight class="normal"></highlight><highlight class="keyword">namespace<sp/></highlight><highlight class="normal"><ref refid="namespacetrio" kindref="compound">trio</ref><sp/>{</highlight></codeline>
|
|
<codeline lineno="20"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="21"><highlight class="normal"></highlight><highlight class="keyword">class<sp/></highlight><highlight class="normal">MemoryMappedFileStreamWindows<sp/>:<sp/></highlight><highlight class="keyword">public</highlight><highlight class="normal"><sp/>MemoryMappedFileStream<sp/>{</highlight></codeline>
|
|
<codeline lineno="22"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">public</highlight><highlight class="normal">:</highlight></codeline>
|
|
<codeline lineno="23"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>MemoryMappedFileStreamWindows(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal">*<sp/>path_,<sp/><ref refid="namespacetrio_1a4b77aebe484e434a3112e66b70acd116" kindref="member">AccessMode</ref><sp/>accessMode_,<sp/>MemoryResource*<sp/>memRes_);</highlight></codeline>
|
|
<codeline lineno="24"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>~MemoryMappedFileStreamWindows();</highlight></codeline>
|
|
<codeline lineno="25"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="26"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>MemoryMappedFileStreamWindows(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>MemoryMappedFileStreamWindows&)<sp/>=<sp/></highlight><highlight class="keyword">delete</highlight><highlight class="normal">;</highlight></codeline>
|
|
<codeline lineno="27"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>MemoryMappedFileStreamWindows&<sp/>operator=(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>MemoryMappedFileStreamWindows&)<sp/>=<sp/></highlight><highlight class="keyword">delete</highlight><highlight class="normal">;</highlight></codeline>
|
|
<codeline lineno="28"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="29"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>MemoryMappedFileStreamWindows(MemoryMappedFileStreamWindows&&)<sp/>=<sp/></highlight><highlight class="keyword">delete</highlight><highlight class="normal">;</highlight></codeline>
|
|
<codeline lineno="30"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>MemoryMappedFileStreamWindows&<sp/>operator=(MemoryMappedFileStreamWindows&&)<sp/>=<sp/></highlight><highlight class="keyword">delete</highlight><highlight class="normal">;</highlight></codeline>
|
|
<codeline lineno="31"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="32"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>open()<sp/></highlight><highlight class="keyword">override</highlight><highlight class="normal">;</highlight></codeline>
|
|
<codeline lineno="33"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>close()<sp/></highlight><highlight class="keyword">override</highlight><highlight class="normal">;</highlight></codeline>
|
|
<codeline lineno="34"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>std::uint64_t<sp/>tell()<sp/></highlight><highlight class="keyword">override</highlight><highlight class="normal">;</highlight></codeline>
|
|
<codeline lineno="35"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>seek(std::uint64_t<sp/>position)<sp/></highlight><highlight class="keyword">override</highlight><highlight class="normal">;</highlight></codeline>
|
|
<codeline lineno="36"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>std::uint64_t<sp/>size()<sp/></highlight><highlight class="keyword">override</highlight><highlight class="normal">;</highlight></codeline>
|
|
<codeline lineno="37"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>std::size_t<sp/>read(</highlight><highlight class="keywordtype">char</highlight><highlight class="normal">*<sp/>destination,<sp/>std::size_t<sp/>size)<sp/></highlight><highlight class="keyword">override</highlight><highlight class="normal">;</highlight></codeline>
|
|
<codeline lineno="38"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>std::size_t<sp/>read(Writable*<sp/>destination,<sp/>std::size_t<sp/>size)<sp/></highlight><highlight class="keyword">override</highlight><highlight class="normal">;</highlight></codeline>
|
|
<codeline lineno="39"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>std::size_t<sp/>write(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal">*<sp/>source,<sp/>std::size_t<sp/>size)<sp/></highlight><highlight class="keyword">override</highlight><highlight class="normal">;</highlight></codeline>
|
|
<codeline lineno="40"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>std::size_t<sp/>write(Readable*<sp/>source,<sp/>std::size_t<sp/>size)<sp/></highlight><highlight class="keyword">override</highlight><highlight class="normal">;</highlight></codeline>
|
|
<codeline lineno="41"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>flush()<sp/></highlight><highlight class="keyword">override</highlight><highlight class="normal">;</highlight></codeline>
|
|
<codeline lineno="42"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>resize(std::uint64_t<sp/>size)<sp/></highlight><highlight class="keyword">override</highlight><highlight class="normal">;</highlight></codeline>
|
|
<codeline lineno="43"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="44"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>MemoryResource*<sp/>getMemoryResource();</highlight></codeline>
|
|
<codeline lineno="45"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="46"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">private</highlight><highlight class="normal">:</highlight></codeline>
|
|
<codeline lineno="47"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>openFile();</highlight></codeline>
|
|
<codeline lineno="48"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>closeFile();</highlight></codeline>
|
|
<codeline lineno="49"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>mapFile(std::uint64_t<sp/>offset,<sp/>std::uint64_t<sp/>size);</highlight></codeline>
|
|
<codeline lineno="50"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>unmapFile();</highlight></codeline>
|
|
<codeline lineno="51"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>resizeFile(std::uint64_t<sp/>size);</highlight></codeline>
|
|
<codeline lineno="52"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="53"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">private</highlight><highlight class="normal">:</highlight></codeline>
|
|
<codeline lineno="54"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>StreamStatus<sp/>status;</highlight></codeline>
|
|
<codeline lineno="55"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><ref refid="namespacetrio_1add2affebde5ca4fa798a3855cadd339b" kindref="member">NativeString</ref><sp/>filePath;</highlight></codeline>
|
|
<codeline lineno="56"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><ref refid="namespacetrio_1a4b77aebe484e434a3112e66b70acd116" kindref="member">AccessMode</ref><sp/>fileAccessMode;</highlight></codeline>
|
|
<codeline lineno="57"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>MemoryResource*<sp/>memRes;</highlight></codeline>
|
|
<codeline lineno="58"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>HANDLE<sp/>file;</highlight></codeline>
|
|
<codeline lineno="59"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>HANDLE<sp/>mapping;</highlight></codeline>
|
|
<codeline lineno="60"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>LPVOID<sp/>data;</highlight></codeline>
|
|
<codeline lineno="61"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>std::uint64_t<sp/>position;</highlight></codeline>
|
|
<codeline lineno="62"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>std::uint64_t<sp/>fileSize;</highlight></codeline>
|
|
<codeline lineno="63"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>std::uint64_t<sp/>viewOffset;</highlight></codeline>
|
|
<codeline lineno="64"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>std::size_t<sp/>viewSize;</highlight></codeline>
|
|
<codeline lineno="65"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">bool</highlight><highlight class="normal"><sp/>delayedMapping;</highlight></codeline>
|
|
<codeline lineno="66"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">bool</highlight><highlight class="normal"><sp/>dirty;</highlight></codeline>
|
|
<codeline lineno="67"><highlight class="normal">};</highlight></codeline>
|
|
<codeline lineno="68"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="69"><highlight class="normal">}<sp/><sp/></highlight><highlight class="comment">//<sp/>namespace<sp/>trio</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="70"><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="71"><highlight class="normal"></highlight><highlight class="preprocessor">#endif<sp/><sp/></highlight><highlight class="comment">//<sp/>TRIO_WINDOWS_FILE_MAPPING_AVAILABLE</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline lineno="72"><highlight class="normal"></highlight><highlight class="comment">//<sp/>*INDENT-ON*</highlight><highlight class="normal"></highlight></codeline>
|
|
</programlisting>
|
|
<location file="C:/source/MetaHuman-DNA-Calibration_clean/dnacalib/DNACalib/src/trio/streams/MemoryMappedFileStreamWindows.h"/>
|
|
</compounddef>
|
|
</doxygen>
|