📄 _image_handler_8h-source.html
字号:
<a name="l00103"></a>00103 <span class="comment"> /**</span><a name="l00104"></a>00104 <span class="comment"> * Loads a the given frame from the given file and scale it to the</span><a name="l00105"></a>00105 <span class="comment"> * specified size</span><a name="l00106"></a>00106 <span class="comment"> * @param aFileName Filename wherefrom the bitmap data is loaded.</span><a name="l00107"></a>00107 <span class="comment"> * @param aSize the target size for the scaling</span><a name="l00108"></a>00108 <span class="comment"> * @param aSelectedFrame A single frame index in a multi-frame file.</span><a name="l00109"></a>00109 <span class="comment"> * If not given the first frame is loaded.</span><a name="l00110"></a>00110 <span class="comment"> */</span><a name="l00111"></a>00111 <span class="keywordtype">void</span> <a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#0135e243bf1c2ba8db5d62edc631e3d4">LoadFileAndScaleL</a>(<span class="keyword">const</span> TFileName& aFileName,<a name="l00112"></a>00112 <span class="keyword">const</span> TSize &aSize,<a name="l00113"></a>00113 TInt aSelectedFrame = 0);<a name="l00114"></a>00114 <span class="comment"></span><a name="l00115"></a>00115 <span class="comment"> /**</span><a name="l00116"></a>00116 <span class="comment"> * Returns the current frame information.</span><a name="l00117"></a>00117 <span class="comment"> * @return Current frame information.</span><a name="l00118"></a>00118 <span class="comment"> */</span><a name="l00119"></a>00119 <span class="keyword">const</span> TFrameInfo& <a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#f09f61bc97d26686cc16f9b686d6097b">FrameInfo</a>() <span class="keyword">const</span>;<a name="l00120"></a>00120 <span class="comment"></span><a name="l00121"></a>00121 <span class="comment"> /**</span><a name="l00122"></a>00122 <span class="comment"> * Re-scales the loaded image to the specified size</span><a name="l00123"></a>00123 <span class="comment"> * @param aSize the target size for the scaling</span><a name="l00124"></a>00124 <span class="comment"> */</span><a name="l00125"></a>00125 <span class="keywordtype">void</span> <a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#5321ab83edffb2d7f3815c37aaaaad51">FitToScreenL</a>(<span class="keyword">const</span> TSize &aSize);<a name="l00126"></a>00126 <a name="l00127"></a>00127 <span class="keyword">private</span>:<span class="comment"></span><a name="l00128"></a>00128 <span class="comment"> /**</span><a name="l00129"></a>00129 <span class="comment"> * Loads a the given frame from the given file.</span><a name="l00130"></a>00130 <span class="comment"> * @param aFileName Filename wherefrom the bitmap data is loaded.</span><a name="l00131"></a>00131 <span class="comment"> * @param aSelectedFrame A single frame index in a multi-frame file. If not given the first frame is loaded.</span><a name="l00132"></a>00132 <span class="comment"> */</span><a name="l00133"></a>00133 <span class="keywordtype">void</span> <a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#bc7d6473bd91db4ba19c7e92921f0cfc">LoadFileL</a>(<span class="keyword">const</span> TFileName& aFileName, TInt aSelectedFrame = 0);<a name="l00134"></a>00134 <span class="comment"></span><a name="l00135"></a>00135 <span class="comment"> /**</span><a name="l00136"></a>00136 <span class="comment"> * Scales a loaded image</span><a name="l00137"></a>00137 <span class="comment"> * Scales a loaded image to the target size (given in LoadFileAndScaleL or</span><a name="l00138"></a>00138 <span class="comment"> * FitToScreenL). The scaled image is stored into iScaledBitmap.</span><a name="l00139"></a>00139 <span class="comment"> */</span><a name="l00140"></a>00140 <span class="keywordtype">void</span> <a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#9d85d1d402255f0d93ae2c42731e9953">ScaleL</a>();<a name="l00141"></a>00141 <a name="l00142"></a>00142 <span class="keyword">private</span>: <span class="comment">// Functions from base classes</span><a name="l00143"></a>00143 <span class="comment"></span><a name="l00144"></a>00144 <span class="comment"> /**</span><a name="l00145"></a>00145 <span class="comment"> * CActive::RunL() implementation. Called on image load success/failure.</span><a name="l00146"></a>00146 <span class="comment"> */</span><a name="l00147"></a>00147 <span class="keywordtype">void</span> <a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#98dcd20e4dd117488a6a90dadd4dfac5">RunL</a>();<span class="comment"></span><a name="l00148"></a>00148 <span class="comment"> /**</span><a name="l00149"></a>00149 <span class="comment"> * CActive::Cancel() implementation. Stops decoding.</span><a name="l00150"></a>00150 <span class="comment"> */</span><a name="l00151"></a>00151 <span class="keywordtype">void</span> <a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#79737b00f2b6a07492c7caf4220c6691">DoCancel</a>();<a name="l00152"></a>00152 <a name="l00153"></a>00153 <span class="keyword">protected</span>:<span class="comment"></span><a name="l00154"></a>00154 <span class="comment"> /**</span><a name="l00155"></a>00155 <span class="comment"> * C++ default constructor. Just stores the given parameters to</span><a name="l00156"></a>00156 <span class="comment"> * corresponding attributes.</span><a name="l00157"></a>00157 <span class="comment"> * @param aBitmap Bitmap where the image data is loaded to.</span><a name="l00158"></a>00158 <span class="comment"> * @param aScaledBitmap Bitmap where the scaled image data is loaded to.</span><a name="l00159"></a>00159 <span class="comment"> * @param aFs File server reference that is used to load the image data.</span><a name="l00160"></a>00160 <span class="comment"> * @param aCallback Listener interface implementation that is notified</span><a name="l00161"></a>00161 <span class="comment"> * when an image has been loaded.</span><a name="l00162"></a>00162 <span class="comment"> */</span><a name="l00163"></a>00163 <a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#815169d6c61c63ee4cf8527b1e5acc35">CImageHandler</a>(CFbsBitmap* aBitmap,<a name="l00164"></a>00164 CFbsBitmap *aScaledBitmap,<a name="l00165"></a>00165 RFs& aFs,<a name="l00166"></a>00166 <a class="code" href="class_n_o_c_r_utils_1_1_m_image_handler_callback.html">MImageHandlerCallback</a>& aCallback);<span class="comment"></span><a name="l00167"></a>00167 <span class="comment"> /**</span><a name="l00168"></a>00168 <span class="comment"> * 2nd phase constructor. Adds this object to the active scheduler.</span><a name="l00169"></a>00169 <span class="comment"> */</span><a name="l00170"></a>00170 <span class="keywordtype">void</span> <a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#9ce34ba0b947863222da3c63d0481044">ConstructL</a>();<a name="l00171"></a>00171 <a name="l00172"></a>00172 <span class="keyword">private</span>: <span class="comment">// Data</span><span class="comment"></span><a name="l00173"></a>00173 <span class="comment"> /** Image decoder that is used to load the image data from file. */</span><a name="l00174"></a><a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#edfc84ea4c64b9bf5bdf7e83a1ff352c">00174</a> CImageDecoder *<a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#edfc84ea4c64b9bf5bdf7e83a1ff352c">iDecoder</a>;<a name="l00175"></a>00175 <span class="comment"></span><a name="l00176"></a>00176 <span class="comment"> /** Image scaler that is used to scale the image */</span><a name="l00177"></a><a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#96d535106f5c2bbd3e511dc8b235cc53">00177</a> CBitmapScaler *<a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#96d535106f5c2bbd3e511dc8b235cc53">iScaler</a>;<a name="l00178"></a>00178 <span class="comment"></span><a name="l00179"></a>00179 <span class="comment"> /** Listener that is notified when an image has been loaded. */</span><a name="l00180"></a><a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#56c1b49f1257fe9366675b21601620d6">00180</a> <a class="code" href="class_n_o_c_r_utils_1_1_m_image_handler_callback.html">MImageHandlerCallback</a> &<a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#56c1b49f1257fe9366675b21601620d6">iCallback</a>;<a name="l00181"></a>00181 <span class="comment"></span><a name="l00182"></a>00182 <span class="comment"> /** Bitmap (owned by the user of this class) where the loaded image is put */</span><a name="l00183"></a><a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#26276106331cba77cd405dd3ad3d4975">00183</a> CFbsBitmap *<a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#26276106331cba77cd405dd3ad3d4975">iBitmap</a>;<a name="l00184"></a>00184 <span class="comment"></span><a name="l00185"></a>00185 <span class="comment"> /** Bitmap (owned by the user of this class) where the SCALED image is put */</span><a name="l00186"></a><a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#c5d4e22b78ca620602321f5229d5cc41">00186</a> CFbsBitmap *<a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#c5d4e22b78ca620602321f5229d5cc41">iScaledBitmap</a>;<a name="l00187"></a>00187 <span class="comment"></span><a name="l00188"></a>00188 <span class="comment"> /** File server session (owned by the user of this class) */</span><a name="l00189"></a><a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#7b548225db36c87401243f1080bbd0e8">00189</a> RFs &<a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#7b548225db36c87401243f1080bbd0e8">iFs</a>;<a name="l00190"></a>00190 <span class="comment"></span><a name="l00191"></a>00191 <span class="comment"> /** Current image frame information. */</span><a name="l00192"></a><a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#d0e8d638754e553804f32380f275af15">00192</a> TFrameInfo <a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#d0e8d638754e553804f32380f275af15">iFrameInfo</a>;<a name="l00193"></a>00193 <span class="comment"></span><a name="l00194"></a>00194 <span class="comment"> /** target size for scaled image */</span><a name="l00195"></a><a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#14cec3f66d8c971efee48bb188fb747b">00195</a> TSize <a class="code" href="class_n_o_c_r_utils_1_1_c_image_handler.html#14cec3f66d8c971efee48bb188fb747b">iSize</a>;<a name="l00196"></a>00196 };<a name="l00197"></a>00197 <a name="l00198"></a>00198 } <span class="comment">// namespace</span><a name="l00199"></a>00199 <span class="preprocessor">#endif</span><a name="l00200"></a>00200 <span class="preprocessor"></span></pre></div><hr><table x-use-null-cells style="x-cell-content-align: top; width: 100%; border-spacing: 0px; border-spacing: 0px;" cellspacing=0 width=100%> <col style="width: 50%;"> <col style="width: 50%;"> <tr style="x-cell-content-align: top;" valign=top> <td style="width: 50%; padding-right: 10px; padding-left: 10px; border-right-style: None; border-left-style: None; border-top-style: None; border-bottom-style: None;" width=50%> <p style="font-family: Arial;"><small style="font-size: smaller;">
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -