📄 vconvert_8h-source.html
字号:
00141 00146 <span class="keyword">virtual</span> BOOL <a class="code" href="classPColourConverter.html#a3">SetFrameSize</a>(00147 <span class="keywordtype">unsigned</span> width, 00148 <span class="keywordtype">unsigned</span> height 00149 );00150 00157 <span class="keyword">virtual</span> BOOL <a class="code" href="classPColourConverter.html#a4">SetSrcFrameSize</a>(00158 <span class="keywordtype">unsigned</span> width, 00159 <span class="keywordtype">unsigned</span> height 00160 );00161 00168 <span class="keyword">virtual</span> BOOL <a class="code" href="classPColourConverter.html#a5">SetDstFrameSize</a>(00169 <span class="keywordtype">unsigned</span> width, 00170 <span class="keywordtype">unsigned</span> height, 00171 BOOL bScale 00172 );00173 <a name="l00176"></a><a class="code" href="classPColourConverter.html#a6">00176</a> <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & <a class="code" href="classPColourConverter.html#a6">GetSrcColourFormat</a>() { <span class="keywordflow">return</span> srcColourFormat; }00177 <a name="l00180"></a><a class="code" href="classPColourConverter.html#a7">00180</a> <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & <a class="code" href="classPColourConverter.html#a7">GetDstColourFormat</a>() { <span class="keywordflow">return</span> dstColourFormat; }00181 <a name="l00187"></a><a class="code" href="classPColourConverter.html#a8">00187</a> PINDEX <a class="code" href="classPColourConverter.html#a8">GetMaxSrcFrameBytes</a>() { <span class="keywordflow">return</span> <a class="code" href="classPColourConverter.html#n4">srcFrameBytes</a>; }00188 <a name="l00194"></a><a class="code" href="classPColourConverter.html#a9">00194</a> PINDEX <a class="code" href="classPColourConverter.html#a9">GetMaxDstFrameBytes</a>() { <span class="keywordflow">return</span> <a class="code" href="classPColourConverter.html#n5">dstFrameBytes</a>; }00195 00196 00206 <span class="keyword">virtual</span> BOOL <a class="code" href="classPColourConverter.html#a10">Convert</a>(00207 <span class="keyword">const</span> BYTE * srcFrameBuffer, 00208 BYTE * dstFrameBuffer, 00209 PINDEX * bytesReturned = NULL 00210 ) = 0;00211 00228 <span class="keyword">virtual</span> BOOL <a class="code" href="classPColourConverter.html#a11">ConvertInPlace</a>(00229 BYTE * frameBuffer, 00230 PINDEX * bytesReturned = NULL, 00231 BOOL noIntermediateFrame = FALSE 00232 );00233 00234 00239 <span class="keyword">static</span> <a class="code" href="classPColourConverter.html">PColourConverter</a> * <a class="code" href="classPColourConverter.html#d0">Create</a>(00240 <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & srcColourFormat, 00241 <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & dstColourFormat, 00242 <span class="keywordtype">unsigned</span> width, 00243 <span class="keywordtype">unsigned</span> height 00244 );00245 00248 BOOL <a class="code" href="classPColourConverter.html#a12">GetDstFrameSize</a>(00249 <span class="keywordtype">unsigned</span> & width, 00250 <span class="keywordtype">unsigned</span> & height 00251 ) <span class="keyword">const</span>;00252 00255 BOOL <a class="code" href="classPColourConverter.html#a13">GetSrcFrameSize</a>(00256 <span class="keywordtype">unsigned</span> & width, 00257 <span class="keywordtype">unsigned</span> & height 00258 ) <span class="keyword">const</span>;00259 00260 00261 <span class="keyword">protected</span>:<a name="l00262"></a><a class="code" href="classPColourConverter.html#n0">00262</a> <a class="code" href="classPString.html">PString</a> srcColourFormat;<a name="l00263"></a><a class="code" href="classPColourConverter.html#n1">00263</a> <a class="code" href="classPString.html">PString</a> dstColourFormat;<a name="l00264"></a><a class="code" href="classPColourConverter.html#n2">00264</a> <span class="keywordtype">unsigned</span> <a class="code" href="classPColourConverter.html#n2">srcFrameWidth</a>;<a name="l00265"></a><a class="code" href="classPColourConverter.html#n3">00265</a> <span class="keywordtype">unsigned</span> <a class="code" href="classPColourConverter.html#n3">srcFrameHeight</a>;<a name="l00266"></a><a class="code" href="classPColourConverter.html#n4">00266</a> <span class="keywordtype">unsigned</span> <a class="code" href="classPColourConverter.html#n4">srcFrameBytes</a>;<a name="l00267"></a><a class="code" href="classPColourConverter.html#n5">00267</a> <span class="keywordtype">unsigned</span> <a class="code" href="classPColourConverter.html#n5">dstFrameBytes</a>;00268 00269 <span class="comment">// Needed for resizing</span><a name="l00270"></a><a class="code" href="classPColourConverter.html#n6">00270</a> <span class="keywordtype">unsigned</span> <a class="code" href="classPColourConverter.html#n6">dstFrameWidth</a>;<a name="l00271"></a><a class="code" href="classPColourConverter.html#n7">00271</a> <span class="keywordtype">unsigned</span> <a class="code" href="classPColourConverter.html#n7">dstFrameHeight</a>;<a name="l00272"></a><a class="code" href="classPColourConverter.html#n8">00272</a> BOOL <a class="code" href="classPColourConverter.html#n8">scaleNotCrop</a>;00273 <a name="l00274"></a><a class="code" href="classPColourConverter.html#n9">00274</a> BOOL <a class="code" href="classPColourConverter.html#n9">doVFlip</a>;00275 <a name="l00276"></a><a class="code" href="classPColourConverter.html#n10">00276</a> <a class="code" href="classPBYTEArray.html">PBYTEArray</a> <a class="code" href="classPColourConverter.html#n10">intermediateFrameStore</a>;00277 <a name="l00278"></a><a class="code" href="classPColourConverter.html#l0">00278</a> <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classPColourConverterRegistration.html">PColourConverterRegistration</a>;00279 };00280 00281 <a name="l00287"></a><a class="code" href="vconvert_8h.html#a1">00287</a> <span class="preprocessor">#define PCOLOUR_CONVERTER2(cls,ancestor,src,dst) \</span>00288 <span class="preprocessor">class cls : public ancestor { \</span>00289 <span class="preprocessor"> public: \</span>00290 <span class="preprocessor"> cls(const PString & srcFmt, const PString & dstFmt, unsigned w, unsigned h) \</span>00291 <span class="preprocessor"> : ancestor(srcFmt, dstFmt, w, h) { } \</span>00292 <span class="preprocessor"> virtual BOOL Convert(const BYTE *, BYTE *, PINDEX * = NULL); \</span>00293 <span class="preprocessor">}; \</span>00294 <span class="preprocessor">static class cls##_Registration : public PColourConverterRegistration { \</span>00295 <span class="preprocessor"> public: \</span>00296 <span class="preprocessor"> cls##_Registration() \</span>00297 <span class="preprocessor"> : PColourConverterRegistration(src,dst) { } \</span>00298 <span class="preprocessor"> virtual PColourConverter * Create(unsigned w, unsigned h) const; \</span>00299 <span class="preprocessor">} p_##cls##_registration_instance; \</span>00300 <span class="preprocessor">PColourConverter * cls##_Registration::Create(unsigned w, unsigned h) const \</span>00301 <span class="preprocessor"> { PINDEX tab = Find('\t'); return new cls(Left(tab), Mid(tab+1), w, h); } \</span>00302 <span class="preprocessor">BOOL cls::Convert(const BYTE *srcFrameBuffer, BYTE *dstFrameBuffer, PINDEX * bytesReturned)</span>00303 <span class="preprocessor"></span>00304 <a name="l00310"></a><a class="code" href="vconvert_8h.html#a2">00310</a> <span class="preprocessor">#define PCOLOUR_CONVERTER(cls,src,dst) \</span>00311 <span class="preprocessor"> PCOLOUR_CONVERTER2(cls,PColourConverter,src,dst)</span>00312 <span class="preprocessor"></span>00313 00314 <a name="l00319"></a><a class="code" href="classPSynonymColour.html">00319</a> <span class="keyword">class </span><a class="code" href="classPSynonymColour.html">PSynonymColour</a> : <span class="keyword">public</span> <a class="code" href="classPColourConverter.html">PColourConverter</a> {00320 <span class="keyword">public</span>:<a name="l00321"></a><a class="code" href="classPSynonymColour.html#a0">00321</a> <a class="code" href="classPSynonymColour.html#a0">PSynonymColour</a>(00322 <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & srcFmt,00323 <span class="keyword">const</span> <a class="code" href="classPString.html">PString</a> & dstFmt,00324 <span class="keywordtype">unsigned</span> w, <span class="keywordtype">unsigned</span> h00325 ) : <a class="code" href="classPColourConverter.html">PColourConverter</a>(srcFmt, dstFmt, w, h) { }00326 <span class="keyword">virtual</span> BOOL <a class="code" href="classPSynonymColour.html#a1">Convert</a>(<span class="keyword">const</span> BYTE *, BYTE *, PINDEX * = NULL);00327 };00328 00329 <a name="l00334"></a><a class="code" href="classPSynonymColourRegistration.html">00334</a> <span class="keyword">class </span><a class="code" href="classPSynonymColourRegistration.html">PSynonymColourRegistration</a> : <span class="keyword">public</span> <a class="code" href="classPColourConverterRegistration.html">PColourConverterRegistration</a> {00335 <span class="keyword">public</span>:<a name="l00336"></a><a class="code" href="classPSynonymColourRegistration.html#a0">00336</a> <a class="code" href="classPSynonymColourRegistration.html#a0">PSynonymColourRegistration</a>(00337 <span class="keyword">const</span> <span class="keywordtype">char</span> * srcFmt,00338 <span class="keyword">const</span> <span class="keywordtype">char</span> * dstFmt00339 ) : <a class="code" href="classPColourConverterRegistration.html">PColourConverterRegistration</a>(srcFmt,dstFmt) { }00340 <span class="keyword">virtual</span> <a class="code" href="classPColourConverter.html">PColourConverter</a> * <a class="code" href="classPSynonymColourRegistration.html#a1">Create</a>(<span class="keywordtype">unsigned</span> w, <span class="keywordtype">unsigned</span> h) <span class="keyword">const</span>;00341 };00342 00343 <a name="l00348"></a><a class="code" href="vconvert_8h.html#a3">00348</a> <span class="preprocessor">#define PSYNONYM_COLOUR_CONVERTER(from,to) \</span>00349 <span class="preprocessor"> static PSynonymColourRegistration p_##from##_##to##_registration_instance(#from,#to)</span>00350 <span class="preprocessor"></span>00351 00352 <span class="comment">// End of file ///////////////////////////////////////////////////////////////</span></pre></div><hr><address style="align: right;"><small>Generated on Wed Sep 29 22:44:12 2004 for PWLib by<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.18 </small></address></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -