aboutsummaryrefslogtreecommitdiff
path: root/doc/src/km/time.rs.html
diff options
context:
space:
mode:
Diffstat (limited to 'doc/src/km/time.rs.html')
-rw-r--r--doc/src/km/time.rs.html60
1 files changed, 58 insertions, 2 deletions
diff --git a/doc/src/km/time.rs.html b/doc/src/km/time.rs.html
index 2476c7d..abcc81e 100644
--- a/doc/src/km/time.rs.html
+++ b/doc/src/km/time.rs.html
@@ -68,33 +68,89 @@
<span id="24">24</span>
<span id="25">25</span>
<span id="26">26</span>
+<span id="27">27</span>
+<span id="28">28</span>
+<span id="29">29</span>
+<span id="30">30</span>
+<span id="31">31</span>
+<span id="32">32</span>
+<span id="33">33</span>
+<span id="34">34</span>
+<span id="35">35</span>
+<span id="36">36</span>
+<span id="37">37</span>
+<span id="38">38</span>
+<span id="39">39</span>
+<span id="40">40</span>
+<span id="41">41</span>
+<span id="42">42</span>
+<span id="43">43</span>
+<span id="44">44</span>
+<span id="45">45</span>
+<span id="46">46</span>
+<span id="47">47</span>
+<span id="48">48</span>
+<span id="49">49</span>
+<span id="50">50</span>
+<span id="51">51</span>
+<span id="52">52</span>
+<span id="53">53</span>
+<span id="54">54</span>
</pre><pre class='rust '>
<span class='doccomment'>//! NT Time routines.</span>
-<span class='doccomment'>/// System time is a count of 100-nanosecond intervals since January 1, 1601.</span>
-<span class='kw'>pub</span> <span class='kw'>type</span> <span class='ident'>SYSTEMTIME</span> <span class='op'>=</span> <span class='ident'>i64</span>;
+<span class='kw'>use</span> ::<span class='ident'>shared</span>::{<span class='ident'>SYSTEMTIME</span>};
+
+<span class='attribute'>#[<span class='ident'>cfg</span>(<span class='ident'>target_arch</span> <span class='op'>=</span> <span class='string'>&quot;x86_64&quot;</span>)]</span>
+<span class='kw'>use</span> ::<span class='ident'>shared</span>::{<span class='ident'>KUSER_SHARED_DATA</span>};
+
<span class='kw'>extern</span> <span class='string'>&quot;system&quot;</span>
{
+ <span class='comment'>// The following exports exists only on x86 kernels.</span>
+ <span class='comment'>// x64 drivers must use KUSER_SHARED_DATA to obtain these values.</span>
+
+ <span class='attribute'>#[<span class='ident'>cfg</span>(<span class='ident'>target_arch</span> <span class='op'>=</span> <span class='string'>&quot;x86&quot;</span>)]</span>
<span class='kw'>fn</span> <span class='ident'>KeQuerySystemTime</span>(<span class='ident'>CurrentTime</span>: <span class='op'>*</span><span class='kw-2'>mut</span> <span class='ident'>SYSTEMTIME</span>);
+ <span class='attribute'>#[<span class='ident'>cfg</span>(<span class='ident'>target_arch</span> <span class='op'>=</span> <span class='string'>&quot;x86&quot;</span>)]</span>
<span class='kw'>fn</span> <span class='ident'>KeQueryTickCount</span>(<span class='ident'>TickCount</span>: <span class='op'>*</span><span class='kw-2'>mut</span> <span class='ident'>i64</span>);
+
<span class='doccomment'>/// Converts a GMT system time value to the local system time for the current time zone.</span>
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>ExSystemTimeToLocalTime</span>(<span class='ident'>SystemTime</span>: <span class='op'>*</span><span class='kw'>const</span> <span class='ident'>SYSTEMTIME</span>, <span class='ident'>LocalTime</span>: <span class='op'>*</span><span class='kw-2'>mut</span> <span class='ident'>SYSTEMTIME</span>);
}
+
<span class='doccomment'>/// Obtains the current system time.</span>
+<span class='attribute'>#[<span class='ident'>cfg</span>(<span class='ident'>target_arch</span> <span class='op'>=</span> <span class='string'>&quot;x86&quot;</span>)]</span>
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>QuerySystemTime</span>() <span class='op'>-&gt;</span> <span class='ident'>SYSTEMTIME</span> {
<span class='kw'>let</span> <span class='kw-2'>mut</span> <span class='ident'>t</span> <span class='op'>=</span> <span class='number'>0i64</span>;
<span class='kw'>unsafe</span> { <span class='ident'>KeQuerySystemTime</span>(<span class='kw-2'>&amp;</span><span class='kw-2'>mut</span> <span class='ident'>t</span>) };
<span class='kw'>return</span> <span class='ident'>t</span>;
}
+<span class='doccomment'>/// Obtains the current system time.</span>
+<span class='attribute'>#[<span class='ident'>cfg</span>(<span class='ident'>target_arch</span> <span class='op'>=</span> <span class='string'>&quot;x86_64&quot;</span>)]</span>
+<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>QuerySystemTime</span>() <span class='op'>-&gt;</span> <span class='ident'>SYSTEMTIME</span> {
+ <span class='kw'>let</span> <span class='ident'>shared</span> <span class='op'>=</span> <span class='ident'>KUSER_SHARED_DATA</span>::<span class='ident'>get</span>();
+ <span class='ident'>SYSTEMTIME</span>::<span class='ident'>from</span>(<span class='ident'>shared</span>.<span class='ident'>SystemTime</span>)
+}
+
+
<span class='doccomment'>/// A count of the interval timer interrupts that have occurred since the system was booted.</span>
+<span class='attribute'>#[<span class='ident'>cfg</span>(<span class='ident'>target_arch</span> <span class='op'>=</span> <span class='string'>&quot;x86&quot;</span>)]</span>
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>QueryTickCount</span>() <span class='op'>-&gt;</span> <span class='ident'>i64</span> {
<span class='kw'>let</span> <span class='kw-2'>mut</span> <span class='ident'>t</span> <span class='op'>=</span> <span class='number'>0i64</span>;
<span class='kw'>unsafe</span> { <span class='ident'>KeQueryTickCount</span>(<span class='kw-2'>&amp;</span><span class='kw-2'>mut</span> <span class='ident'>t</span>) };
<span class='kw'>return</span> <span class='ident'>t</span>;
}
+
+
+<span class='doccomment'>/// A count of the interval timer interrupts that have occurred since the system was booted.</span>
+<span class='attribute'>#[<span class='ident'>cfg</span>(<span class='ident'>target_arch</span> <span class='op'>=</span> <span class='string'>&quot;x86_64&quot;</span>)]</span>
+<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>QueryTickCount</span>() <span class='op'>-&gt;</span> <span class='ident'>i64</span> {
+ <span class='kw'>let</span> <span class='ident'>shared</span> <span class='op'>=</span> <span class='ident'>KUSER_SHARED_DATA</span>::<span class='ident'>get</span>();
+ <span class='ident'>SYSTEMTIME</span>::<span class='ident'>from</span>(<span class='ident'>shared</span>.<span class='ident'>TickCount</span>)
+}
</pre>
</section>
<section id='search' class="content hidden"></section>