forked from Phobos-developers/YRpp
-
Notifications
You must be signed in to change notification settings - Fork 0
/
_blit_trans_lucent25_z_read_write_8h_source.html
163 lines (161 loc) · 13.6 KB
/
_blit_trans_lucent25_z_read_write_8h_source.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
<!-- This comment will put IE 6, 7 and 8 in quirks mode -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>YR++: Blitters/Blitter/BlitTransLucent25ZReadWrite.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javaScript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body onload='searchBox.OnSelectItem(0);'>
<!-- Generated by Doxygen 1.6.3 -->
<script type="text/javascript"><!--
var searchBox = new SearchBox("searchBox", "search",false,'Search');
--></script>
<script type="text/javascript">
<!--
function changeDisplayState (e){
var num=this.id.replace(/[^[0-9]/g,'');
var button=this.firstChild;
var sectionDiv=document.getElementById('dynsection'+num);
if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){
sectionDiv.style.display='block';
button.src='open.gif';
}else{
sectionDiv.style.display='none';
button.src='closed.gif';
}
}
function initDynSections(){
var divs=document.getElementsByTagName('div');
var sectionCounter=1;
for(var i=0;i<divs.length-1;i++){
if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){
var header=divs[i];
var section=divs[i+1];
var button=header.firstChild;
if (button!='IMG'){
divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild);
button=document.createElement('img');
divs[i].insertBefore(button,divs[i].firstChild);
}
header.style.cursor='pointer';
header.onclick=changeDisplayState;
header.id='dynheader'+sectionCounter;
button.src='closed.gif';
section.id='dynsection'+sectionCounter;
section.style.display='none';
section.style.marginLeft='14px';
sectionCounter++;
}
}
}
window.onload = initDynSections;
-->
</script>
<div class="navigation" id="top">
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li><a href="dirs.html"><span>Directories</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<img id="MSearchSelect" src="search/search.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</div>
</li>
</ul>
</div>
<div class="tabs">
<ul>
<li><a href="files.html"><span>File List</span></a></li>
<li><a href="globals.html"><span>File Members</span></a></li>
</ul>
</div>
<div class="navpath"><a class="el" href="dir_f65534ef8218155ebbbcdb4eded228d2.html">Blitters</a> » <a class="el" href="dir_10eefb4ece531a6f61eb0c4b25712be1.html">Blitter</a>
</div>
</div>
<div class="contents">
<h1>BlitTransLucent25ZReadWrite.h</h1><a href="_blit_trans_lucent25_z_read_write_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 BLITTRANSLUCENT25ZREADWRITE_H</span>
<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define BLITTRANSLUCENT25ZREADWRITE_H</span>
<a name="l00003"></a>00003 <span class="preprocessor"></span>
<a name="l00004"></a>00004 <span class="preprocessor">#include <<a class="code" href="_blitters_8h.html">Blitters.h</a>></span>
<a name="l00005"></a>00005
<a name="l00006"></a>00006 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
<a name="l00007"></a><a class="code" href="class_blit_trans_lucent25_z_read_write.html">00007</a> <span class="keyword">class </span><a class="code" href="class_blit_trans_lucent25_z_read_write.html">BlitTransLucent25ZReadWrite</a> : <span class="keyword">public</span> <a class="code" href="class_blitter.html">Blitter</a><T> {
<a name="l00008"></a>00008 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_blit_trans_lucent25_z_read_write.html#acf32b2e49dec7182245100655707e79e">Blit</a>
<a name="l00009"></a><a class="code" href="class_blit_trans_lucent25_z_read_write.html#acf32b2e49dec7182245100655707e79e">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#a197942eefa7db30960ae396d68339b97">WORD</a> zMin, <a class="code" href="_y_r_p_p_core_8h.html#a197942eefa7db30960ae396d68339b97">WORD</a> *zBuf, <a class="code" href="_y_r_p_p_core_8h.html#a197942eefa7db30960ae396d68339b97">WORD</a> *aBuf, <a class="code" href="_y_r_p_p_core_8h.html#a197942eefa7db30960ae396d68339b97">WORD</a> aLvl, <span class="keywordtype">int</span> warpOffset)
<a name="l00010"></a>00010 {
<a name="l00011"></a>00011 T *dst = reinterpret_cast < T * >(dest);
<a name="l00012"></a>00012 <span class="keywordflow">for</span> (; length > 0; --length, ++dst) {
<a name="l00013"></a>00013 <a class="code" href="_y_r_p_p_core_8h.html#a197942eefa7db30960ae396d68339b97">WORD</a> zVal = *zBuf;
<a name="l00014"></a>00014 <span class="keywordflow">if</span> (zVal > zMin) {
<a name="l00015"></a>00015 <span class="keywordtype">int</span> idx = *src++;
<a name="l00016"></a>00016 <span class="keywordflow">if</span> (idx) {
<a name="l00017"></a>00017 word tmpval = this-><a class="code" href="class_blit_trans_lucent25_z_read_write.html#a3b957978ed55a1276a47fea9222b764e">Data</a>[srcv] >> 2 & this->ExtraData;
<a name="l00018"></a>00018 word dstval = *dst >> 2 & this->ExtraData;
<a name="l00019"></a>00019 dstval += 3 * tmpval;
<a name="l00020"></a>00020 *dst = dstval;
<a name="l00021"></a>00021 *zBuf = zMin;
<a name="l00022"></a>00022 }
<a name="l00023"></a>00023 }
<a name="l00024"></a>00024 zBuf++;
<a name="l00025"></a>00025 <span class="keywordflow">if</span> (Drawing::ZBuffer->BufferEnd <= zBuf) {
<a name="l00026"></a>00026 zBuf -= Drawing::ZBuffer->BufferSize;
<a name="l00027"></a>00027 }
<a name="l00028"></a>00028 }
<a name="l00029"></a>00029 }
<a name="l00030"></a>00030
<a name="l00031"></a>00031 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_blit_trans_lucent25_z_read_write.html#ad13c97461e34bb763da57adf550ffb7a">CallBlit0</a>
<a name="l00032"></a><a class="code" href="class_blit_trans_lucent25_z_read_write.html#ad13c97461e34bb763da57adf550ffb7a">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#a197942eefa7db30960ae396d68339b97">WORD</a> zMin, <a class="code" href="_y_r_p_p_core_8h.html#a197942eefa7db30960ae396d68339b97">WORD</a> *zBuf, <a class="code" href="_y_r_p_p_core_8h.html#a197942eefa7db30960ae396d68339b97">WORD</a> *aBuf, <a class="code" href="_y_r_p_p_core_8h.html#a197942eefa7db30960ae396d68339b97">WORD</a> aLvl, <a class="code" href="_y_r_p_p_core_8h.html#a197942eefa7db30960ae396d68339b97">WORD</a> unknownArg, <a class="code" href="_y_r_p_p_core_8h.html#ad342ac907eb044443153a22f964bf0af">DWORD</a> useless)
<a name="l00033"></a>00033 {
<a name="l00034"></a>00034 this-><a class="code" href="class_blit_trans_lucent25_z_read_write.html#acf32b2e49dec7182245100655707e79e">Blit</a>(dest, src, length, zMin, zBuf, aBuf, aLvl, 0);
<a name="l00035"></a>00035 }
<a name="l00036"></a>00036
<a name="l00037"></a>00037 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_blit_trans_lucent25_z_read_write.html#a60be6c8f7838299f7519d8effa81c8d7">CallBlit1</a>
<a name="l00038"></a><a class="code" href="class_blit_trans_lucent25_z_read_write.html#a60be6c8f7838299f7519d8effa81c8d7">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#a197942eefa7db30960ae396d68339b97">WORD</a> zMin, <a class="code" href="_y_r_p_p_core_8h.html#a197942eefa7db30960ae396d68339b97">WORD</a> *zBuf, <a class="code" href="_y_r_p_p_core_8h.html#a197942eefa7db30960ae396d68339b97">WORD</a> *aBuf, <a class="code" href="_y_r_p_p_core_8h.html#a197942eefa7db30960ae396d68339b97">WORD</a> aLvl)
<a name="l00039"></a>00039 {
<a name="l00040"></a>00040 this-><a class="code" href="class_blit_trans_lucent25_z_read_write.html#acf32b2e49dec7182245100655707e79e">Blit</a>(dest, src, length, zMin, zBuf, aBuf, aLvl, 0);
<a name="l00041"></a>00041 }
<a name="l00042"></a>00042
<a name="l00043"></a>00043 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_blit_trans_lucent25_z_read_write.html#a4d6ea4cc051482902ed98c31078021ea">CallBlit2</a>
<a name="l00044"></a><a class="code" href="class_blit_trans_lucent25_z_read_write.html#a4d6ea4cc051482902ed98c31078021ea">00044</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#a197942eefa7db30960ae396d68339b97">WORD</a> zMin, <a class="code" href="_y_r_p_p_core_8h.html#a197942eefa7db30960ae396d68339b97">WORD</a> *zBuf, <a class="code" href="_y_r_p_p_core_8h.html#a197942eefa7db30960ae396d68339b97">WORD</a> *aBuf, <a class="code" href="_y_r_p_p_core_8h.html#a197942eefa7db30960ae396d68339b97">WORD</a> aLvl, <a class="code" href="_y_r_p_p_core_8h.html#ad342ac907eb044443153a22f964bf0af">DWORD</a> useless)
<a name="l00045"></a>00045 {
<a name="l00046"></a>00046 this-><a class="code" href="class_blit_trans_lucent25_z_read_write.html#acf32b2e49dec7182245100655707e79e">Blit</a>(dest, src, length, zMin, zBuf, aBuf, aLvl, 0);
<a name="l00047"></a>00047 }
<a name="l00048"></a>00048
<a name="l00049"></a>00049 <span class="keyword">public</span>:
<a name="l00050"></a><a class="code" href="class_blit_trans_lucent25_z_read_write.html#a3b957978ed55a1276a47fea9222b764e">00050</a> T *<a class="code" href="class_blit_trans_lucent25_z_read_write.html#a3b957978ed55a1276a47fea9222b764e">Data</a>;
<a name="l00051"></a>00051 };
<a name="l00052"></a>00052
<a name="l00053"></a>00053 <span class="preprocessor">#endif</span>
</pre></div></div>
<!--- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Defines</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<hr class="footer"/><address style="text-align: right;"><small>Generated on Tue Dec 14 21:14:23 2010 for YR++ by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address>
</body>
</html>