加入BMP库,加入常见位操作

This commit is contained in:
XerolySkinner
2022-11-24 23:56:57 +08:00
parent f6b6ac1329
commit 01324e987e
709 changed files with 17019 additions and 2341 deletions

View File

@@ -124,7 +124,31 @@ $(function() {
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"><a class="line" href="varint_8h.html#ab1725f18a2ec2964f4bc0499527e4c5d"> 56</a></span><span class="keyword">typedef</span> <span class="keyword">volatile</span> <a class="code hl_typedef" href="varint_8h.html#ad309dbcaeea13aa602d686964156ea0b">i16</a> <a class="code hl_typedef" href="varint_8h.html#ab1725f18a2ec2964f4bc0499527e4c5d">vi16</a>; </div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"><a class="line" href="varint_8h.html#a8b81ac6660e74bec836c0a4e0a0b6450"> 57</a></span><span class="keyword">typedef</span> <span class="keyword">volatile</span> <a class="code hl_typedef" href="varint_8h.html#a48d6cd8e4135fb2ff7e7f2dac84089ec">i32</a> <a class="code hl_typedef" href="varint_8h.html#a8b81ac6660e74bec836c0a4e0a0b6450">vi32</a>; </div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"><a class="line" href="varint_8h.html#aeffd8dafd889cdd80398ffcbb37cd7ef"> 58</a></span><span class="keyword">typedef</span> <span class="keyword">volatile</span> <a class="code hl_typedef" href="varint_8h.html#a85cb35fbe5bf2961d7ad5f26814a91a2">i64</a> <a class="code hl_typedef" href="varint_8h.html#aeffd8dafd889cdd80398ffcbb37cd7ef">vi64</a>; </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span><span class="comment">//----------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span><span class="comment">// 位宏</span></div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"><a class="line" href="varint_8h.html#ad35af1fbc60fcc217f7e3c6bae2ba656"> 62</a></span><span class="preprocessor">#define P8(x) ((u8*)(&amp;(x))) </span></div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"><a class="line" href="varint_8h.html#a71e9586b24447c7ca7bc353aa86da852"> 63</a></span><span class="preprocessor">#define Pn8(x,y) (((u8*)(&amp;(x)))[y]) </span></div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"><a class="line" href="varint_8h.html#a90e13f6172ebc6d6b8df6ed9a443491f"> 64</a></span><span class="preprocessor">#define P16(x) ((u16*)(&amp;(x))) </span></div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"><a class="line" href="varint_8h.html#aff980abb3664242448c35e7c94df9457"> 65</a></span><span class="preprocessor">#define Pn16(x,y) (((u16*)(&amp;(x)))[y]) </span></div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"><a class="line" href="varint_8h.html#a495d48b6b1b59a2ad797b10d9da431ff"> 66</a></span><span class="preprocessor">#define P32(x) ((u32*)(&amp;(x))) </span></div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"><a class="line" href="varint_8h.html#adc92d7430c7b945896332c2e2540a52a"> 67</a></span><span class="preprocessor">#define Pn32(x,y) (((u32*)(&amp;(x)))[y]) </span></div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> </div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"><a class="line" href="varint_8h.html#ada574ddd6b3c52cf691b29e6efc7a817"> 69</a></span><span class="preprocessor">#define DelLb(x) (x &amp; (x - 1)) </span></div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"><a class="line" href="varint_8h.html#a4130fb740c8bd3c4986b2fe496c74d78"> 70</a></span><span class="preprocessor">#define qDelLb(x) (x=(x &amp; (x - 1))) </span></div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> </div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"><a class="line" href="varint_8h.html#a338f1c6d28b8ee314ea8b33df5c6052e"> 72</a></span><span class="preprocessor">#define toBool(x) (x!=0) </span></div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"><a class="line" href="varint_8h.html#af88c9f4171df59e6e0aa2db71bf9f250"> 73</a></span><span class="preprocessor">#define uBit(x,y) (x&amp;(1&lt;&lt;y)) </span></div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"><a class="line" href="varint_8h.html#ac123183daf1150b8b675c96cfeae4314"> 74</a></span><span class="preprocessor">#define tBit(x,y) (toBool(uBit(x,y))) </span></div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> </div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"><a class="line" href="varint_8h.html#aa1b4c6a5140aae5adbc14792ed9cbaf5"> 76</a></span><span class="preprocessor">#define sBit(x,y) (x|(1&lt;&lt;y)) </span></div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"><a class="line" href="varint_8h.html#a6c0c97a8768383af5f921a0496bb7e6c"> 77</a></span><span class="preprocessor">#define rBit(x,y) (x&amp;(~(1&lt;&lt;y))) </span></div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"><a class="line" href="varint_8h.html#a5cce0b9aa61d54efc42512f4c7796455"> 78</a></span><span class="preprocessor">#define mBit(x,y,z) ((z)?sBit(x,y):rBit(x,y)) </span></div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> </div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"><a class="line" href="varint_8h.html#a7ae6889c9eb9c27afb4395ef1d06eec7"> 80</a></span><span class="preprocessor">#define LpAdd(x,y) ((x+1)&lt;y?x+1:0) </span></div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"><a class="line" href="varint_8h.html#af8c84f28a4c47bc30bbecb56d1469fd2"> 81</a></span><span class="preprocessor">#define LpDec(x,y) (x&gt;0?x-1:y-1) </span></div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"><a class="line" href="varint_8h.html#ac5268cd1ab382ef2574c21c40590d6bc"> 82</a></span><span class="preprocessor">#define qLpAdd(x,y) (x=(x+1)&lt;y?x+1:0) </span></div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span><span class="preprocessor">#define qLpDec(x,y) (x=x&gt;0?x-1:y-1) </span></div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> </div>
<div class="ttc" id="avarint_8h_html_a1a2a3100a902c32a55d8b08915bce044"><div class="ttname"><a href="varint_8h.html#a1a2a3100a902c32a55d8b08915bce044">vu8</a></div><div class="ttdeci">volatile u8 vu8</div><div class="ttdoc">8位无符号易变类型</div><div class="ttdef"><b>Definition:</b> <a href="varint_8h_source.html#l00050">varint.h:50</a></div></div>
<div class="ttc" id="avarint_8h_html_a3f7e2bcbb0b4c338f3c4f6c937cd4234"><div class="ttname"><a href="varint_8h.html#a3f7e2bcbb0b4c338f3c4f6c937cd4234">u64</a></div><div class="ttdeci">uint64_t u64</div><div class="ttdoc">64位无符号数类型</div><div class="ttdef"><b>Definition:</b> <a href="varint_8h_source.html#l00043">varint.h:43</a></div></div>
<div class="ttc" id="avarint_8h_html_a48d6cd8e4135fb2ff7e7f2dac84089ec"><div class="ttname"><a href="varint_8h.html#a48d6cd8e4135fb2ff7e7f2dac84089ec">i32</a></div><div class="ttdeci">int32_t i32</div><div class="ttdoc">32位有符号数类型</div><div class="ttdef"><b>Definition:</b> <a href="varint_8h_source.html#l00047">varint.h:47</a></div></div>