source: OGRE/trunk/ogrenew/Docs/api/html/classOgre_1_1HardwareOcclusionQuery.html @ 657

Revision 657, 20.4 KB checked in by mattausch, 18 years ago (diff)

added ogre dependencies and patched ogre sources

Line 
1<html>
2<head>
3<title>Ogre::HardwareOcclusionQuery class Reference - OGRE Documentation</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
4<link type="text/css" rel="stylesheet" href="style.css">
5</head>
6
7<body>
8<!-- Generated by Doxygen 1.3.6 -->
9<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
10<h1>Ogre::HardwareOcclusionQuery Class Reference</h1>This is a abstract class that that provides the interface for the query class for hardware occlusion. 
11<a href="#_details">More...</a>
12<p>
13<code>#include &lt;<a class="el" href="OgreHardwareOcclusionQuery_8h-source.html">OgreHardwareOcclusionQuery.h</a>&gt;</code>
14<p>
15<p>Inheritance diagram for Ogre::HardwareOcclusionQuery:
16<p><center><img src="classOgre_1_1HardwareOcclusionQuery.png" usemap="#Ogre::HardwareOcclusionQuery_map" border="0" alt=""></center>
17<map name="Ogre::HardwareOcclusionQuery_map">
18<area href="classOgre_1_1D3D9HardwareOcclusionQuery.html" alt="Ogre::D3D9HardwareOcclusionQuery" shape="rect" coords="0,56,228,80">
19<area href="classOgre_1_1GLHardwareOcclusionQuery.html" alt="Ogre::GLHardwareOcclusionQuery" shape="rect" coords="238,56,466,80">
20</map>
21<a href="classOgre_1_1HardwareOcclusionQuery-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
22<tr><td></td></tr>
23<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
24<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareOcclusionQuery.html#Ogre_1_1HardwareOcclusionQuerya0">HardwareOcclusionQuery</a> ()</td></tr>
25
26<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default object constructor.  <a href="#Ogre_1_1HardwareOcclusionQuerya0"></a><br><br></td></tr>
27<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareOcclusionQuery.html#Ogre_1_1HardwareOcclusionQuerya1">~HardwareOcclusionQuery</a> ()</td></tr>
28
29<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Object destructor.  <a href="#Ogre_1_1HardwareOcclusionQuerya1"></a><br><br></td></tr>
30<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareOcclusionQuery.html#Ogre_1_1HardwareOcclusionQuerya2">beginOcclusionQuery</a> ()=0</td></tr>
31
32<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Starts the hardware occlusion query  Simple usage: Create one or more OcclusionQuery object one per outstanding query or one per tested object OcclusionQuery* m_pOcclusionQuery; createOcclusionQuery( &amp;m_pOcclusionQuery ); In the rendering loop: Draw all occluders m_pOcclusionQuery-&gt;startOcclusionQuery(); Draw the polygons to be tested m_pOcclusionQuery-&gt;<a class="el" href="classOgre_1_1HardwareOcclusionQuery.html#Ogre_1_1HardwareOcclusionQuerya3">endOcclusionQuery()</a>;.  <a href="#Ogre_1_1HardwareOcclusionQuerya2"></a><br><br></td></tr>
33<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareOcclusionQuery.html#Ogre_1_1HardwareOcclusionQuerya3">endOcclusionQuery</a> ()=0</td></tr>
34
35<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Ends the hardware occlusion test.  <a href="#Ogre_1_1HardwareOcclusionQuerya3"></a><br><br></td></tr>
36<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareOcclusionQuery.html#Ogre_1_1HardwareOcclusionQuerya4">pullOcclusionQuery</a> (unsigned int *NumOfFragments, const <a class="el" href="namespaceOgre.html#a138">HW_OCCLUSIONQUERY</a> flag=HWOCCLUSIONQUERY_FLUSH)=0</td></tr>
37
38<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pulls the hardware occlusion query too see if there is a result.  <a href="#Ogre_1_1HardwareOcclusionQuerya4"></a><br><br></td></tr>
39<tr><td class="memItemLeft" nowrap align=right valign=top>virtual unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareOcclusionQuery.html#Ogre_1_1HardwareOcclusionQuerya5">getLastQuerysPixelcount</a> ()=0</td></tr>
40
41<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Let's you get the last pixel count with out doing the hardware occlusion test.  <a href="#Ogre_1_1HardwareOcclusionQuerya5"></a><br><br></td></tr>
42<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareOcclusionQuery.html#Ogre_1_1HardwareOcclusionQuerya6">HardwareOcclusionQuery::isStillOutstanding</a> (void)=0</td></tr>
43
44<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Lets you know when query is done, or still be processed by the Hardware.  <a href="#Ogre_1_1HardwareOcclusionQuerya6"></a><br><br></td></tr>
45<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareOcclusionQuery.html#Ogre_1_1HardwareOcclusionQuerya7">setSkipRate</a> (int skip)=0</td></tr>
46
47<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function allows you to set how often the hardware occlusion really are sent to the driver if you set it to 0 every hardware occlusion test is actually made.  <a href="#Ogre_1_1HardwareOcclusionQuerya7"></a><br><br></td></tr>
48<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareOcclusionQuery.html#Ogre_1_1HardwareOcclusionQuerya8">getSkipRate</a> ()=0</td></tr>
49
50</table>
51<hr><a name="_details"></a><h2>Detailed Description</h2>
52This is a abstract class that that provides the interface for the query class for hardware occlusion.
53<p>
54<dl compact><dt><b>Author:</b></dt><dd>Lee Sandberg Updated on 4/8/2005 by Tuan Kuranes email: <a href="mailto:tuan.kuranes@free.fr">tuan.kuranes@free.fr</a> </dd></dl>
55
56<p>
57
58<p>
59Definition at line <a class="el" href="OgreHardwareOcclusionQuery_8h-source.html#l00050">50</a> of file <a class="el" href="OgreHardwareOcclusionQuery_8h-source.html">OgreHardwareOcclusionQuery.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
60<a class="anchor" name="Ogre_1_1HardwareOcclusionQuerya0" doxytag="Ogre::HardwareOcclusionQuery::HardwareOcclusionQuery" ></a><p>
61<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
62  <tr>
63    <td class="mdRow">
64      <table cellpadding="0" cellspacing="0" border="0">
65        <tr>
66          <td class="md" nowrap valign="top"> Ogre::HardwareOcclusionQuery::HardwareOcclusionQuery </td>
67          <td class="md" valign="top">(&nbsp;</td>
68          <td class="mdname1" valign="top" nowrap>          </td>
69          <td class="md" valign="top">&nbsp;)&nbsp;</td>
70          <td class="md" nowrap></td>
71        </tr>
72
73      </table>
74    </td>
75  </tr>
76</table>
77<table cellspacing=5 cellpadding=0 border=0>
78  <tr>
79    <td>
80      &nbsp;
81    </td>
82    <td>
83
84<p>
85Default object constructor.
86<p>
87    </td>
88  </tr>
89</table>
90<a class="anchor" name="Ogre_1_1HardwareOcclusionQuerya1" doxytag="Ogre::HardwareOcclusionQuery::~HardwareOcclusionQuery" ></a><p>
91<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
92  <tr>
93    <td class="mdRow">
94      <table cellpadding="0" cellspacing="0" border="0">
95        <tr>
96          <td class="md" nowrap valign="top"> virtual Ogre::HardwareOcclusionQuery::~<a class="el" href="classOgre_1_1HardwareOcclusionQuery.html">HardwareOcclusionQuery</a> </td>
97          <td class="md" valign="top">(&nbsp;</td>
98          <td class="mdname1" valign="top" nowrap>          </td>
99          <td class="md" valign="top">&nbsp;)&nbsp;</td>
100          <td class="md" nowrap><code> [virtual]</code></td>
101        </tr>
102
103      </table>
104    </td>
105  </tr>
106</table>
107<table cellspacing=5 cellpadding=0 border=0>
108  <tr>
109    <td>
110      &nbsp;
111    </td>
112    <td>
113
114<p>
115Object destructor.
116<p>
117    </td>
118  </tr>
119</table>
120<hr><h2>Member Function Documentation</h2>
121<a class="anchor" name="Ogre_1_1HardwareOcclusionQuerya2" doxytag="Ogre::HardwareOcclusionQuery::beginOcclusionQuery" ></a><p>
122<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
123  <tr>
124    <td class="mdRow">
125      <table cellpadding="0" cellspacing="0" border="0">
126        <tr>
127          <td class="md" nowrap valign="top"> virtual void Ogre::HardwareOcclusionQuery::beginOcclusionQuery </td>
128          <td class="md" valign="top">(&nbsp;</td>
129          <td class="mdname1" valign="top" nowrap>          </td>
130          <td class="md" valign="top">&nbsp;)&nbsp;</td>
131          <td class="md" nowrap><code> [pure virtual]</code></td>
132        </tr>
133
134      </table>
135    </td>
136  </tr>
137</table>
138<table cellspacing=5 cellpadding=0 border=0>
139  <tr>
140    <td>
141      &nbsp;
142    </td>
143    <td>
144
145<p>
146Starts the hardware occlusion query  Simple usage: Create one or more OcclusionQuery object one per outstanding query or one per tested object OcclusionQuery* m_pOcclusionQuery; createOcclusionQuery( &amp;m_pOcclusionQuery ); In the rendering loop: Draw all occluders m_pOcclusionQuery-&gt;startOcclusionQuery(); Draw the polygons to be tested m_pOcclusionQuery-&gt;<a class="el" href="classOgre_1_1HardwareOcclusionQuery.html#Ogre_1_1HardwareOcclusionQuerya3">endOcclusionQuery()</a>;.
147<p>
148Results must be pulled using: UINT m_uintNumberOfPixelsVisable; pullOcclusionQuery( &amp;m_dwNumberOfPixelsVisable ); You may not get the result directly after the first pass or frame. Objects not visible must be tested every frame, visible objects may be tested less frequently.
149<p>
150Implemented in <a class="el" href="classOgre_1_1D3D9HardwareOcclusionQuery.html#Ogre_1_1D3D9HardwareOcclusionQuerya2">Ogre::D3D9HardwareOcclusionQuery</a>, and <a class="el" href="classOgre_1_1GLHardwareOcclusionQuery.html#Ogre_1_1GLHardwareOcclusionQuerya2">Ogre::GLHardwareOcclusionQuery</a>.    </td>
151  </tr>
152</table>
153<a class="anchor" name="Ogre_1_1HardwareOcclusionQuerya3" doxytag="Ogre::HardwareOcclusionQuery::endOcclusionQuery" ></a><p>
154<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
155  <tr>
156    <td class="mdRow">
157      <table cellpadding="0" cellspacing="0" border="0">
158        <tr>
159          <td class="md" nowrap valign="top"> virtual void Ogre::HardwareOcclusionQuery::endOcclusionQuery </td>
160          <td class="md" valign="top">(&nbsp;</td>
161          <td class="mdname1" valign="top" nowrap>          </td>
162          <td class="md" valign="top">&nbsp;)&nbsp;</td>
163          <td class="md" nowrap><code> [pure virtual]</code></td>
164        </tr>
165
166      </table>
167    </td>
168  </tr>
169</table>
170<table cellspacing=5 cellpadding=0 border=0>
171  <tr>
172    <td>
173      &nbsp;
174    </td>
175    <td>
176
177<p>
178Ends the hardware occlusion test.
179<p>
180
181<p>
182Implemented in <a class="el" href="classOgre_1_1D3D9HardwareOcclusionQuery.html#Ogre_1_1D3D9HardwareOcclusionQuerya3">Ogre::D3D9HardwareOcclusionQuery</a>, and <a class="el" href="classOgre_1_1GLHardwareOcclusionQuery.html#Ogre_1_1GLHardwareOcclusionQuerya3">Ogre::GLHardwareOcclusionQuery</a>.    </td>
183  </tr>
184</table>
185<a class="anchor" name="Ogre_1_1HardwareOcclusionQuerya5" doxytag="Ogre::HardwareOcclusionQuery::getLastQuerysPixelcount" ></a><p>
186<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
187  <tr>
188    <td class="mdRow">
189      <table cellpadding="0" cellspacing="0" border="0">
190        <tr>
191          <td class="md" nowrap valign="top"> virtual unsigned int Ogre::HardwareOcclusionQuery::getLastQuerysPixelcount </td>
192          <td class="md" valign="top">(&nbsp;</td>
193          <td class="mdname1" valign="top" nowrap>          </td>
194          <td class="md" valign="top">&nbsp;)&nbsp;</td>
195          <td class="md" nowrap><code> [pure virtual]</code></td>
196        </tr>
197
198      </table>
199    </td>
200  </tr>
201</table>
202<table cellspacing=5 cellpadding=0 border=0>
203  <tr>
204    <td>
205      &nbsp;
206    </td>
207    <td>
208
209<p>
210Let's you get the last pixel count with out doing the hardware occlusion test.
211<p>
212<dl compact><dt><b>Returns:</b></dt><dd>The last fragment count from the last test. Remarks This function won't give you new values, just the old value.</dd></dl>
213
214<p>
215Implemented in <a class="el" href="classOgre_1_1D3D9HardwareOcclusionQuery.html#Ogre_1_1D3D9HardwareOcclusionQuerya5">Ogre::D3D9HardwareOcclusionQuery</a>, and <a class="el" href="classOgre_1_1GLHardwareOcclusionQuery.html#Ogre_1_1GLHardwareOcclusionQuerya5">Ogre::GLHardwareOcclusionQuery</a>.    </td>
216  </tr>
217</table>
218<a class="anchor" name="Ogre_1_1HardwareOcclusionQuerya8" doxytag="Ogre::HardwareOcclusionQuery::getSkipRate" ></a><p>
219<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
220  <tr>
221    <td class="mdRow">
222      <table cellpadding="0" cellspacing="0" border="0">
223        <tr>
224          <td class="md" nowrap valign="top"> virtual int Ogre::HardwareOcclusionQuery::getSkipRate </td>
225          <td class="md" valign="top">(&nbsp;</td>
226          <td class="mdname1" valign="top" nowrap>          </td>
227          <td class="md" valign="top">&nbsp;)&nbsp;</td>
228          <td class="md" nowrap><code> [pure virtual]</code></td>
229        </tr>
230
231      </table>
232    </td>
233  </tr>
234</table>
235<table cellspacing=5 cellpadding=0 border=0>
236  <tr>
237    <td>
238      &nbsp;
239    </td>
240    <td>
241
242<p>
243
244<p>
245Implemented in <a class="el" href="classOgre_1_1D3D9HardwareOcclusionQuery.html#Ogre_1_1D3D9HardwareOcclusionQuerya8">Ogre::D3D9HardwareOcclusionQuery</a>, and <a class="el" href="classOgre_1_1GLHardwareOcclusionQuery.html#Ogre_1_1GLHardwareOcclusionQuerya8">Ogre::GLHardwareOcclusionQuery</a>.    </td>
246  </tr>
247</table>
248<a class="anchor" name="Ogre_1_1HardwareOcclusionQuerya6" doxytag="Ogre::HardwareOcclusionQuery::HardwareOcclusionQuery::isStillOutstanding" ></a><p>
249<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
250  <tr>
251    <td class="mdRow">
252      <table cellpadding="0" cellspacing="0" border="0">
253        <tr>
254          <td class="md" nowrap valign="top"> virtual bool Ogre::HardwareOcclusionQuery::HardwareOcclusionQuery::isStillOutstanding </td>
255          <td class="md" valign="top">(&nbsp;</td>
256          <td class="md" nowrap valign="top">void&nbsp;</td>
257          <td class="mdname1" valign="top" nowrap>          </td>
258          <td class="md" valign="top">&nbsp;)&nbsp;</td>
259          <td class="md" nowrap><code> [pure virtual]</code></td>
260        </tr>
261
262      </table>
263    </td>
264  </tr>
265</table>
266<table cellspacing=5 cellpadding=0 border=0>
267  <tr>
268    <td>
269      &nbsp;
270    </td>
271    <td>
272
273<p>
274Lets you know when query is done, or still be processed by the Hardware.
275<p>
276<dl compact><dt><b>Returns:</b></dt><dd>true if query isn't finished.</dd></dl>
277    </td>
278  </tr>
279</table>
280<a class="anchor" name="Ogre_1_1HardwareOcclusionQuerya4" doxytag="Ogre::HardwareOcclusionQuery::pullOcclusionQuery" ></a><p>
281<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
282  <tr>
283    <td class="mdRow">
284      <table cellpadding="0" cellspacing="0" border="0">
285        <tr>
286          <td class="md" nowrap valign="top"> virtual bool Ogre::HardwareOcclusionQuery::pullOcclusionQuery </td>
287          <td class="md" valign="top">(&nbsp;</td>
288          <td class="md" nowrap valign="top">unsigned int *&nbsp;</td>
289          <td class="mdname" nowrap> <em>NumOfFragments</em>, </td>
290        </tr>
291        <tr>
292          <td class="md" nowrap align="right"></td>
293          <td></td>
294          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a138">HW_OCCLUSIONQUERY</a>&nbsp;</td>
295          <td class="mdname" nowrap> <em>flag</em> = HWOCCLUSIONQUERY_FLUSH</td>
296        </tr>
297        <tr>
298          <td></td>
299          <td class="md">)&nbsp;</td>
300          <td class="md" colspan="2"><code> [pure virtual]</code></td>
301        </tr>
302
303      </table>
304    </td>
305  </tr>
306</table>
307<table cellspacing=5 cellpadding=0 border=0>
308  <tr>
309    <td>
310      &nbsp;
311    </td>
312    <td>
313
314<p>
315Pulls the hardware occlusion query too see if there is a result.
316<p>
317<dl compact><dt><b>Return values:</b></dt><dd>
318  <table border="0" cellspacing="2" cellpadding="0">
319    <tr><td valign=top><em>NumOfFragments</em>&nbsp;</td><td>will get the resulting number of fragments. </td></tr>
320  </table>
321</dl>
322<dl compact><dt><b>Returns:</b></dt><dd>True if success or false if not.  In DX9 mode specifying OCCLUSIONQUERY_FLUSH as the flag, will case the driver to flush whatever API calls are batched. In OpenGL mode it makes no difference if you specify OCCLUSIONQUERY_FLUSH or OCCLUSIONQUERY_NOFLUSH. </dd></dl>
323
324<p>
325Implemented in <a class="el" href="classOgre_1_1D3D9HardwareOcclusionQuery.html#Ogre_1_1D3D9HardwareOcclusionQuerya4">Ogre::D3D9HardwareOcclusionQuery</a>, and <a class="el" href="classOgre_1_1GLHardwareOcclusionQuery.html#Ogre_1_1GLHardwareOcclusionQuerya4">Ogre::GLHardwareOcclusionQuery</a>.    </td>
326  </tr>
327</table>
328<a class="anchor" name="Ogre_1_1HardwareOcclusionQuerya7" doxytag="Ogre::HardwareOcclusionQuery::setSkipRate" ></a><p>
329<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
330  <tr>
331    <td class="mdRow">
332      <table cellpadding="0" cellspacing="0" border="0">
333        <tr>
334          <td class="md" nowrap valign="top"> virtual void Ogre::HardwareOcclusionQuery::setSkipRate </td>
335          <td class="md" valign="top">(&nbsp;</td>
336          <td class="md" nowrap valign="top">int&nbsp;</td>
337          <td class="mdname1" valign="top" nowrap> <em>skip</em>          </td>
338          <td class="md" valign="top">&nbsp;)&nbsp;</td>
339          <td class="md" nowrap><code> [pure virtual]</code></td>
340        </tr>
341
342      </table>
343    </td>
344  </tr>
345</table>
346<table cellspacing=5 cellpadding=0 border=0>
347  <tr>
348    <td>
349      &nbsp;
350    </td>
351    <td>
352
353<p>
354This function allows you to set how often the hardware occlusion really are sent to the driver if you set it to 0 every hardware occlusion test is actually made.
355<p>
356If you set it to 1 only the half of your queries are sent for all visible objects. 2 will result in 25% of all queries to actually be sent. New and none visible objects will be tested all the time. This functionality is here because this class can keep track on visible and none visible objects for you. Once you you set the SkipRate for any hardware occlusion instance it effects all others.
357<p>
358Implemented in <a class="el" href="classOgre_1_1D3D9HardwareOcclusionQuery.html#Ogre_1_1D3D9HardwareOcclusionQuerya7">Ogre::D3D9HardwareOcclusionQuery</a>, and <a class="el" href="classOgre_1_1GLHardwareOcclusionQuery.html#Ogre_1_1GLHardwareOcclusionQuerya7">Ogre::GLHardwareOcclusionQuery</a>.    </td>
359  </tr>
360</table>
361<hr>The documentation for this class was generated from the following file:<ul>
362<li><a class="el" href="OgreHardwareOcclusionQuery_8h-source.html">OgreHardwareOcclusionQuery.h</a></ul>
363<hr>
364<p>
365Copyright &copy; 2000-2005 by The OGRE Team<br />
366<!--Creative Commons License--><a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/"><img alt="Creative Commons License" border="0" src="http://creativecommons.org/images/public/somerights20.png"/></a><br/>
367This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/">Creative Commons Attribution-ShareAlike 2.5 License</a>.<br/>
368                <!--/Creative Commons License--><!-- <rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
369                <Work rdf:about="">
370                        <license rdf:resource="http://creativecommons.org/licenses/by-sa/2.5/" />
371        <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
372                </Work>
373                <License rdf:about="http://creativecommons.org/licenses/by-sa/2.5/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/><requires rdf:resource="http://web.resource.org/cc/ShareAlike"/></License></rdf:RDF> -->
374
375Last modified Sun Feb 12 13:00:41 2006
376</p>
377</body>
378</html>
Note: See TracBrowser for help on using the repository browser.