PageRenderTime 48ms CodeModel.GetById 19ms RepoModel.GetById 1ms app.codeStats 0ms

/Documentation/_blit_trans_xlat_write_alpha_8h-source.html

http://github.com/Ares-Developers/YRpp
HTML | 131 lines | 91 code | 0 blank | 40 comment | 0 complexity | aea9df8e1a7d44aa26612eed0a90b280 MD5 | raw file
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
  3. <title>YR++: Blitters/Blitter/BlitTransXlatWriteAlpha.h Source File</title>
  4. <link href="tabs.css" rel="stylesheet" type="text/css">
  5. <link href="doxygen.css" rel="stylesheet" type="text/css">
  6. </head><body>
  7. <!-- Generated by Doxygen 1.5.8 -->
  8. <script type="text/javascript">
  9. <!--
  10. function changeDisplayState (e){
  11. var num=this.id.replace(/[^[0-9]/g,'');
  12. var button=this.firstChild;
  13. var sectionDiv=document.getElementById('dynsection'+num);
  14. if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){
  15. sectionDiv.style.display='block';
  16. button.src='open.gif';
  17. }else{
  18. sectionDiv.style.display='none';
  19. button.src='closed.gif';
  20. }
  21. }
  22. function initDynSections(){
  23. var divs=document.getElementsByTagName('div');
  24. var sectionCounter=1;
  25. for(var i=0;i<divs.length-1;i++){
  26. if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){
  27. var header=divs[i];
  28. var section=divs[i+1];
  29. var button=header.firstChild;
  30. if (button!='IMG'){
  31. divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild);
  32. button=document.createElement('img');
  33. divs[i].insertBefore(button,divs[i].firstChild);
  34. }
  35. header.style.cursor='pointer';
  36. header.onclick=changeDisplayState;
  37. header.id='dynheader'+sectionCounter;
  38. button.src='closed.gif';
  39. section.id='dynsection'+sectionCounter;
  40. section.style.display='none';
  41. section.style.marginLeft='14px';
  42. sectionCounter++;
  43. }
  44. }
  45. }
  46. window.onload = initDynSections;
  47. -->
  48. </script>
  49. <div class="navigation" id="top">
  50. <div class="tabs">
  51. <ul>
  52. <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
  53. <li><a href="namespaces.html"><span>Namespaces</span></a></li>
  54. <li><a href="annotated.html"><span>Classes</span></a></li>
  55. <li class="current"><a href="files.html"><span>Files</span></a></li>
  56. <li><a href="dirs.html"><span>Directories</span></a></li>
  57. <li>
  58. <form action="search.php" method="get">
  59. <table cellspacing="0" cellpadding="0" border="0">
  60. <tr>
  61. <td><label>&nbsp;<u>S</u>earch&nbsp;for&nbsp;</label></td>
  62. <td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
  63. </tr>
  64. </table>
  65. </form>
  66. </li>
  67. </ul>
  68. </div>
  69. <div class="tabs">
  70. <ul>
  71. <li><a href="files.html"><span>File&nbsp;List</span></a></li>
  72. <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
  73. </ul>
  74. </div>
  75. <div class="navpath"><a class="el" href="dir_f65534ef8218155ebbbcdb4eded228d2.html">Blitters</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_10eefb4ece531a6f61eb0c4b25712be1.html">Blitter</a>
  76. </div>
  77. </div>
  78. <div class="contents">
  79. <h1>BlitTransXlatWriteAlpha.h</h1><a href="_blit_trans_xlat_write_alpha_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef BLITTRANSXLATWRITEALPHA_H</span>
  80. <a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define BLITTRANSXLATWRITEALPHA_H</span>
  81. <a name="l00003"></a>00003 <span class="preprocessor"></span>
  82. <a name="l00004"></a>00004 <span class="preprocessor">#include &lt;<a class="code" href="_blitters_8h.html">Blitters.h</a>&gt;</span>
  83. <a name="l00005"></a>00005
  84. <a name="l00006"></a>00006 <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;
  85. <a name="l00007"></a><a class="code" href="class_blit_trans_xlat_write_alpha.html">00007</a> <span class="keyword">class </span><a class="code" href="class_blit_trans_xlat_write_alpha.html">BlitTransXlatWriteAlpha</a> : <span class="keyword">public</span> <a class="code" href="class_blitter.html">Blitter</a>&lt;T&gt; {
  86. <a name="l00008"></a>00008 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_blit_trans_xlat_write_alpha.html#8d6f68043a24b2c5c2bbe7b23c2f31b7">Blit</a>
  87. <a name="l00009"></a><a class="code" href="class_blit_trans_xlat_write_alpha.html#8d6f68043a24b2c5c2bbe7b23c2f31b7">00009</a> (<span class="keywordtype">void</span> *dest, byte *src, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> length, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> zMin, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> *zBuf, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> *aBuf, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> aLvl, <span class="keywordtype">int</span> warpOffset)
  88. <a name="l00010"></a>00010 {
  89. <a name="l00011"></a>00011 T *dst = reinterpret_cast &lt; T * &gt;(dest);
  90. <a name="l00012"></a>00012 <span class="keywordflow">for</span> (; length &gt; 0; --length, ++dst) {
  91. <a name="l00013"></a>00013 byte srcv = *src++;
  92. <a name="l00014"></a>00014 byte aphv = *aBuf++;
  93. <a name="l00015"></a>00015 <span class="keywordflow">if</span> (srcv) {
  94. <a name="l00016"></a>00016 *dst = min(aMin + srcv, 255);
  95. <a name="l00017"></a>00017 }
  96. <a name="l00018"></a>00018 ++dst;
  97. <a name="l00019"></a>00019 <span class="keywordflow">if</span> (Drawing::ABuffer-&gt;BufferEnd &lt;= aBuf) {
  98. <a name="l00020"></a>00020 aBuf -= Drawing::ABuffer-&gt;BufferSize;
  99. <a name="l00021"></a>00021 }
  100. <a name="l00022"></a>00022 }
  101. <a name="l00023"></a>00023 }
  102. <a name="l00024"></a>00024
  103. <a name="l00025"></a>00025 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_blit_trans_xlat_write_alpha.html#1615458515f7ac5fe2fdec0608780a72">CallBlit0</a>
  104. <a name="l00026"></a><a class="code" href="class_blit_trans_xlat_write_alpha.html#1615458515f7ac5fe2fdec0608780a72">00026</a> (<span class="keywordtype">void</span> *dest, byte *src, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> length, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> zMin, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> *zBuf, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> *aBuf, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> aLvl, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> unknownArg, <a class="code" href="_y_r_p_p_core_8h.html#d342ac907eb044443153a22f964bf0af">DWORD</a> useless)
  105. <a name="l00027"></a>00027 {
  106. <a name="l00028"></a>00028 this-&gt;<a class="code" href="class_blit_trans_xlat_write_alpha.html#8d6f68043a24b2c5c2bbe7b23c2f31b7">Blit</a>(dest, src, length, zMin, zBuf, aBuf, aLvl, 0);
  107. <a name="l00029"></a>00029 }
  108. <a name="l00030"></a>00030
  109. <a name="l00031"></a>00031 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_blit_trans_xlat_write_alpha.html#cdcc8cf3495bb0edbc53695e4b85e98b">CallBlit1</a>
  110. <a name="l00032"></a><a class="code" href="class_blit_trans_xlat_write_alpha.html#cdcc8cf3495bb0edbc53695e4b85e98b">00032</a> (<span class="keywordtype">void</span> *dest, byte *src, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> length, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> zMin, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> *zBuf, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> *aBuf, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> aLvl)
  111. <a name="l00033"></a>00033 {
  112. <a name="l00034"></a>00034 this-&gt;<a class="code" href="class_blit_trans_xlat_write_alpha.html#8d6f68043a24b2c5c2bbe7b23c2f31b7">Blit</a>(dest, src, length, zMin, zBuf, aBuf, aLvl, 0);
  113. <a name="l00035"></a>00035 }
  114. <a name="l00036"></a>00036
  115. <a name="l00037"></a>00037 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_blit_trans_xlat_write_alpha.html#d2669165418a1490f448ef4057f0e582">CallBlit2</a>
  116. <a name="l00038"></a><a class="code" href="class_blit_trans_xlat_write_alpha.html#d2669165418a1490f448ef4057f0e582">00038</a> (<span class="keywordtype">void</span> *dest, byte *src, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> length, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> zMin, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> *zBuf, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> *aBuf, <a class="code" href="_y_r_p_p_core_8h.html#197942eefa7db30960ae396d68339b97">WORD</a> aLvl, <a class="code" href="_y_r_p_p_core_8h.html#d342ac907eb044443153a22f964bf0af">DWORD</a> useless)
  117. <a name="l00039"></a>00039 {
  118. <a name="l00040"></a>00040 this-&gt;<a class="code" href="class_blit_trans_xlat_write_alpha.html#8d6f68043a24b2c5c2bbe7b23c2f31b7">Blit</a>(dest, src, length, zMin, zBuf, aBuf, aLvl, 0);
  119. <a name="l00041"></a>00041 }
  120. <a name="l00042"></a>00042
  121. <a name="l00043"></a>00043 <span class="keyword">public</span>:
  122. <a name="l00044"></a><a class="code" href="class_blit_trans_xlat_write_alpha.html#34cf4e4069b831dfcabf75a853b1556f">00044</a> T *<a class="code" href="class_blit_trans_xlat_write_alpha.html#34cf4e4069b831dfcabf75a853b1556f">Data</a>;
  123. <a name="l00045"></a>00045 };
  124. <a name="l00046"></a>00046
  125. <a name="l00047"></a>00047 <span class="preprocessor">#endif</span>
  126. </pre></div></div>
  127. <hr size="1"><address style="text-align: right;"><small>Generated on Tue May 18 03:54:25 2010 for YR++ by&nbsp;
  128. <a href="http://www.doxygen.org/index.html">
  129. <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
  130. </body>
  131. </html>