]> granicus.if.org Git - imagemagick/blob - www/api/pixel-view.html
(no commit message)
[imagemagick] / www / api / pixel-view.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"\r
2     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">\r
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">\r
4 <head>\r
5   <meta http-equiv="content-type" content="text/html; charset=utf-8"/>\r
6   <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U=" />\r
7   <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf" />\r
8   <style type="text/css" media="all">\r
9     @import url("../../www/magick.css");\r
10   </style>\r
11   <link rel="shortcut icon" href="../../images/wand.ico"  type="images/vnd.microsoft.icon"/>
12   <title>ImageMagick: MagickWand, C API for ImageMagick: Pixel View Methods</title>
13   <meta http-equiv="Content-Language" content="en-US"/>
14   <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
15   <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
16   <meta name="Generator" content="PHP"/>
17   <meta name="Keywords" content="magickwc, api, for, imagemagick:, pixel, view, methods, ImageMagick, ImageMagic, MagickCore, MagickWand, PerlMagick, Magick++, RMagick, PythonMagick, JMagick, TclMagick, Image, Magick, Magic, Wand, ImageMagickObject, Swiss, Army, Knife, Image, Processing"/>
18   <meta name="Description" content="ImageMagick® is a software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats (about 100) including GIF, JPEG, JPEG-2000, PNG, PDF, PhotoCD, TIFF, and DPX. Use ImageMagick to translate, flip, mirror, rotate, scale, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.  ImageMagick is free software delivered as a ready-to-run binary distribution or as source code that you can freely use, copy, modify, and distribute. Its license is compatible with the GPL. It runs on all major operating systems.  The functionality of ImageMagick is typically utilized from the command line or you can use the features from programs written in your favorite programming language. Choose from these interfaces: MagickCore (C), MagickWand (C), ChMagick (Ch), Magick++ (C++), JMagick (Java), L-Magick (Lisp), PascalMagick (Pascal), PerlMagick (Perl), MagickWand for PHP (PHP), PythonMagick (Python), RMagick (Ruby), or TclMagick (Tcl/TK). With a language interface, use ImageMagick to modify or create images automagically and dynamically."/>
19   <meta name="Rating" content="GENERAL"/>
20   <meta name="Robots" content="INDEX, FOLLOW"/>
21   <meta name="Generator" content="ImageMagick Studio LLC"/>
22   <meta name="Author" content="ImageMagick Studio LLC"/>
23   <meta name="Revisit-after" content="2 DAYS"/>
24   <meta name="Resource-type" content="document"/>
25   <meta name="Copyright" content="Copyright (c) 1999-2010 ImageMagick Studio LLC"/>
26   <meta name="Distribution" content="Global"/>
27 </head>\r
28 \r
29 <body id="www-imagemagick-org">\r
30 <div class="titlebar">\r
31 <a href="../../index.html">\r
32   <img src="../../images/script.png" alt="[ImageMagick]"\r
33   style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>\r
34 <a href="http://www.networkredux.com">\r
35   <img src="../../images/networkredux.png" alt="[sponsor]"\r
36   style="margin: 45px auto; border: 0px; float: left;" /></a>\r
37 <a href="http://www.imagemagick.org/discourse-server/">\r
38   <img src="../../images/logo.jpg" alt=""\r
39   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
40 <a href="../../index.html">\r
41   <img src="../../images/sprite.jpg" alt=""\r
42   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
43 </div>\r
44 \r
45 <div class="eastbar">\r
46 \r
47 <div class="menu">
48   <a title="About ImageMagick" href="../../index.html">About ImageMagick</a>
49 </div>
50 <div class="sep"></div>\r
51 <div class="menu">
52   <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</a>
53 </div>
54 <div class="sub">
55     <a title="Command-line Tools: Processing" href="../../www/command-line-processing.html">Processing</a>
56 </div>
57 <div class="sub">
58     <a title="Command-line Tools: Options" href="../../www/command-line-options.html">Options</a>
59 </div>
60 <div class="sub">
61     <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
62 </div>
63 <div class="menu">
64   <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
65 </div>
66 <div class="sub">
67     <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
68 </div>
69 <div class="sub">
70     <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
71 </div>
72 <div class="sub">
73     <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
74 </div>
75 <div class="sub">
76     <a title="Program Interface: Magick++" href="../../Magick++/">Magick++</a>
77 </div>
78 <div class="menu">
79   <a title="Architecture" href="../../www/architecture.html">Architecture</a>
80 </div>
81 <div class="sep"></div>\r
82 <div  class="menu">
83    <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
84 </div>
85 <div class="sub">
86     <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</a>
87 </div>
88 <div class="sub">
89     <a title="Install from Source: Windows" href="../../www/install-source.html#windows">Windows</a>
90  </div>
91 <div class="menu">
92   <a title="Binary Releases" href="../../www/binary-releases.html">Binary Releases</a>
93 </div>
94 <div class="sub">
95     <a title="Binary Release: Unix" href="../../www/binary-releases.html#unix">Unix</a>
96 </div>
97 <div class="sub">
98     <a title="Binary Release: MacOS X" href="../../www/binary-releases.html#macosx">Mac OS X</a>
99 </div>
100 <div class="sub">
101     <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
102 </div>
103 <div class="menu">
104   <a title="Resources" href="../../www/resources.html">Resources</a>
105 </div>
106 <div class="sep"></div>\r
107 <div class="menu">
108   <a title="Download" href="../../www/download.html">Download</a>
109 </div>
110 <div class="sep"></div>\r
111 <div class="menu">
112   <a title="Search" href="../http://www.imagemagick.org/script/search.php">Search</a>
113 </div>
114 <div class="sep"></div>\r
115 <div class="menu">
116   <a title="Site Map"href="../../www/sitemap.html">Site Map</a>
117 </div>
118 <div  class="sub">
119     <a title="Site Map: Links"href="../../www/links.html">Links</a>
120 </div>
121 <div class="sep"></div>\r
122 <div  class="menu">
123   <a title="Sponsors" href="../../www/sponsors.html">Sponsors:</a>
124
125 <div class="sponsbox">
126 <div  class="sponsor">
127   <a title="Sponsor: Webdesign Agentur" href="http://www.ventzke-partner.de">Webdesign Agentur</a><!-- 201101010480 invendio.de-->
128 </div>
129 <div  class="sponsor">
130   <a title="Sponsor: LVM Versicherung" href="http://www.neu-reich.de">LVM Versicherung</a><!-- 201101010480 -->
131 </div>
132 <div  class="sponsor">
133   <a title="Sponsor: Deko.net" href="http://www.deko.net">Deko.net</a><!-- 201101010600 Peterssen-->
134 </div>
135 <div  class="sponsor">
136   <a title="Sponsor: Kredit" href="http://www.online-kredit-index.de">Kredit</a><!-- 201007010120 Buchhorn -->
137 </div>
138 <div  class="sponsor">
139   <a title="Sponsor: Druckerei" href="http://www.print24.de/">Druckerei</a><!-- 201009010720 -->
140 </div>
141 <div  class="sponsor">
142    <a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
143 </div>
144 <div  class="sponsor">
145    <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/" title="Online-Magazin">Online-Magazin</a><!-- 20101101000200 -->
146 </div>
147 </div>
148 </div>
149 \r
150 \r
151 </div>\r
152 \r
153 <div class="main">\r
154 \r
155 <p class="navigation-index">[<a href="#ClonePixelView">ClonePixelView</a> &bull; <a href="#DestroyPixelView">DestroyPixelView</a> &bull; <a href="#DuplexTransferPixelViewIterator">DuplexTransferPixelViewIterator</a> &bull; <a href="#GetPixelViewException">GetPixelViewException</a> &bull; <a href="#GetPixelViewHeight">GetPixelViewHeight</a> &bull; <a href="#GetPixelViewIterator">GetPixelViewIterator</a> &bull; <a href="#GetPixelViewPixels">GetPixelViewPixels</a> &bull; <a href="#GetPixelViewWand">GetPixelViewWand</a> &bull; <a href="#GetPixelViewWidth">GetPixelViewWidth</a> &bull; <a href="#GetPixelViewX">GetPixelViewX</a> &bull; <a href="#GetPixelViewY">GetPixelViewY</a> &bull; <a href="#IsPixelView">IsPixelView</a> &bull; <a href="#NewPixelView">NewPixelView</a> &bull; <a href="#NewPixelViewRegion">NewPixelViewRegion</a> &bull; <a href="#SetPixelViewIterator">SetPixelViewIterator</a> &bull; <a href="#TransferPixelViewIterator">TransferPixelViewIterator</a> &bull; <a href="#UpdatePixelViewIterator">UpdatePixelViewIterator</a>]</p>
156
157 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
158 _8c.html" target="source" name="ClonePixelView">ClonePixelView</a></h2>
159 <div class="doc-section">
160
161 <p>ClonePixelView() makes a copy of the specified pixel view.</p></ol>
162
163 <p>The format of the ClonePixelView method is:</p>
164
165 <pre class="code">
166   PixelView *ClonePixelView(const PixelView *pixel_view)
167 </pre>
168
169 <p>A description of each parameter follows:</p></ol>
170
171 <h5>pixel_view</h5>
172 <ol><p>the pixel view.</p></ol>
173
174  </div>
175 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
176 _8c.html" target="source" name="DestroyPixelView">DestroyPixelView</a></h2>
177 <div class="doc-section">
178
179 <p>DestroyPixelView() deallocates memory associated with a pixel view.</p></ol>
180
181 <p>The format of the DestroyPixelView method is:</p>
182
183 <pre class="code">
184   PixelView *DestroyPixelView(PixelView *pixel_view,
185     const unsigned long number_wands,const unsigned long number_threads)
186 </pre>
187
188 <p>A description of each parameter follows:</p></ol>
189
190 <h5>pixel_view</h5>
191 <ol><p>the pixel view.</p></ol>
192
193 <h5>number_wand</h5>
194 <ol><p>the number of pixel wands.</p></ol>
195
196 <h5>number_threads</h5>
197 <ol><p>number of threads.</p></ol>
198
199  </div>
200 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
201 _8c.html" target="source" name="DuplexTransferPixelViewIterator">DuplexTransferPixelViewIterator</a></h2>
202 <div class="doc-section">
203
204 <p>DuplexTransferPixelViewIterator() iterates over three pixel views in parallel and calls your transfer method for each scanline of the view.  The source and duplex pixel region is not confined to the image canvas-- that is you can include negative offsets or widths or heights that exceed the image dimension.  However, the destination pixel view is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension are permitted.</p></ol>
205
206 <p>Use this pragma:</p>
207
208 <pre class="text">
209       #pragma omp critical
210 </pre>
211
212 <p>to define a section of code in your callback transfer method that must be executed by a single thread at a time.</p></ol>
213
214 <p>The format of the DuplexTransferPixelViewIterator method is:</p>
215
216 <pre class="code">
217   MagickBooleanType DuplexTransferPixelViewIterator(PixelView *source,
218     PixelView *duplex,PixelView *destination,
219     DuplexTransferPixelViewMethod transfer,void *context)
220 </pre>
221
222 <p>A description of each parameter follows:</p></ol>
223
224 <h5>source</h5>
225 <ol><p>the source pixel view.</p></ol>
226
227 <h5>duplex</h5>
228 <ol><p>the duplex pixel view.</p></ol>
229
230 <h5>destination</h5>
231 <ol><p>the destination pixel view.</p></ol>
232
233 <h5>transfer</h5>
234 <ol><p>the transfer callback method.</p></ol>
235
236 <h5>context</h5>
237 <ol><p>the user defined context.</p></ol>
238
239  </div>
240 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
241 _8c.html" target="source" name="GetPixelViewException">GetPixelViewException</a></h2>
242 <div class="doc-section">
243
244 <p>GetPixelViewException() returns the severity, reason, and description of any error that occurs when utilizing a pixel view.</p></ol>
245
246 <p>The format of the GetPixelViewException method is:</p>
247
248 <pre class="code">
249   char *GetPixelViewException(const PixelWand *pixel_view,
250     ExceptionType *severity)
251 </pre>
252
253 <p>A description of each parameter follows:</p></ol>
254
255 <h5>pixel_view</h5>
256 <ol><p>the pixel pixel_view.</p></ol>
257
258 <h5>severity</h5>
259 <ol><p>the severity of the error is returned here.</p></ol>
260
261  </div>
262 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
263 _8c.html" target="source" name="GetPixelViewHeight">GetPixelViewHeight</a></h2>
264 <div class="doc-section">
265
266 <p>GetPixelViewHeight() returns the pixel view height.</p></ol>
267
268 <p>The format of the GetPixelViewHeight method is:</p>
269
270 <pre class="code">
271   unsigned long GetPixelViewHeight(const PixelView *pixel_view)
272 </pre>
273
274 <p>A description of each parameter follows:</p></ol>
275
276 <h5>pixel_view</h5>
277 <ol><p>the pixel view.</p></ol>
278
279  </div>
280 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
281 _8c.html" target="source" name="GetPixelViewIterator">GetPixelViewIterator</a></h2>
282 <div class="doc-section">
283
284 <p>GetPixelViewIterator() iterates over the pixel view in parallel and calls your get method for each scanline of the view.  The pixel region is not confined to the image canvas-- that is you can include negative offsets or widths or heights that exceed the image dimension.  Any updates to the pixels in your callback are ignored.</p></ol>
285
286 <p>Use this pragma:</p>
287
288 <pre class="text">
289       #pragma omp critical
290 </pre>
291
292 <p>to define a section of code in your callback get method that must be executed by a single thread at a time.</p></ol>
293
294 <p>The format of the GetPixelViewIterator method is:</p>
295
296 <pre class="code">
297   MagickBooleanType GetPixelViewIterator(PixelView *source,
298     GetPixelViewMethod get,void *context)
299 </pre>
300
301 <p>A description of each parameter follows:</p></ol>
302
303 <h5>source</h5>
304 <ol><p>the source pixel view.</p></ol>
305
306 <h5>get</h5>
307 <ol><p>the get callback method.</p></ol>
308
309 <h5>context</h5>
310 <ol><p>the user defined context.</p></ol>
311
312  </div>
313 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
314 _8c.html" target="source" name="GetPixelViewPixels">GetPixelViewPixels</a></h2>
315 <div class="doc-section">
316
317 <p>GetPixelViewPixels() returns the pixel view pixel_wands.</p></ol>
318
319 <p>The format of the GetPixelViewPixels method is:</p>
320
321 <pre class="code">
322   PixelWand *GetPixelViewPixels(const PixelView *pixel_view)
323 </pre>
324
325 <p>A description of each parameter follows:</p></ol>
326
327 <h5>pixel_view</h5>
328 <ol><p>the pixel view.</p></ol>
329
330  </div>
331 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
332 _8c.html" target="source" name="GetPixelViewWand">GetPixelViewWand</a></h2>
333 <div class="doc-section">
334
335 <p>GetPixelViewWand() returns the magick wand associated with the pixel view.</p></ol>
336
337 <p>The format of the GetPixelViewWand method is:</p>
338
339 <pre class="code">
340   MagickWand *GetPixelViewWand(const PixelView *pixel_view)
341 </pre>
342
343 <p>A description of each parameter follows:</p></ol>
344
345 <h5>pixel_view</h5>
346 <ol><p>the pixel view.</p></ol>
347
348  </div>
349 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
350 _8c.html" target="source" name="GetPixelViewWidth">GetPixelViewWidth</a></h2>
351 <div class="doc-section">
352
353 <p>GetPixelViewWidth() returns the pixel view width.</p></ol>
354
355 <p>The format of the GetPixelViewWidth method is:</p>
356
357 <pre class="code">
358   unsigned long GetPixelViewWidth(const PixelView *pixel_view)
359 </pre>
360
361 <p>A description of each parameter follows:</p></ol>
362
363 <h5>pixel_view</h5>
364 <ol><p>the pixel view.</p></ol>
365
366  </div>
367 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
368 _8c.html" target="source" name="GetPixelViewX">GetPixelViewX</a></h2>
369 <div class="doc-section">
370
371 <p>GetPixelViewX() returns the pixel view x offset.</p></ol>
372
373 <p>The format of the GetPixelViewX method is:</p>
374
375 <pre class="code">
376   long GetPixelViewX(const PixelView *pixel_view)
377 </pre>
378
379 <p>A description of each parameter follows:</p></ol>
380
381 <h5>pixel_view</h5>
382 <ol><p>the pixel view.</p></ol>
383
384  </div>
385 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
386 _8c.html" target="source" name="GetPixelViewY">GetPixelViewY</a></h2>
387 <div class="doc-section">
388
389 <p>GetPixelViewY() returns the pixel view y offset.</p></ol>
390
391 <p>The format of the GetPixelViewY method is:</p>
392
393 <pre class="code">
394   long GetPixelViewY(const PixelView *pixel_view)
395 </pre>
396
397 <p>A description of each parameter follows:</p></ol>
398
399 <h5>pixel_view</h5>
400 <ol><p>the pixel view.</p></ol>
401
402  </div>
403 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
404 _8c.html" target="source" name="IsPixelView">IsPixelView</a></h2>
405 <div class="doc-section">
406
407 <p>IsPixelView() returns MagickTrue if the the parameter is verified as a pixel view container.</p></ol>
408
409 <p>The format of the IsPixelView method is:</p>
410
411 <pre class="code">
412   MagickBooleanType IsPixelView(const PixelView *pixel_view)
413 </pre>
414
415 <p>A description of each parameter follows:</p></ol>
416
417 <h5>pixel_view</h5>
418 <ol><p>the pixel view.</p></ol>
419
420  </div>
421 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
422 _8c.html" target="source" name="NewPixelView">NewPixelView</a></h2>
423 <div class="doc-section">
424
425 <p>NewPixelView() returns a pixel view required for all other methods in the Pixel View API.</p></ol>
426
427 <p>The format of the NewPixelView method is:</p>
428
429 <pre class="code">
430   PixelView *NewPixelView(MagickWand *wand)
431 </pre>
432
433 <p>A description of each parameter follows:</p></ol>
434
435 <h5>wand</h5>
436 <ol><p>the wand.</p></ol>
437
438  </div>
439 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
440 _8c.html" target="source" name="NewPixelViewRegion">NewPixelViewRegion</a></h2>
441 <div class="doc-section">
442
443 <p>NewPixelViewRegion() returns a pixel view required for all other methods in the Pixel View API.</p></ol>
444
445 <p>The format of the NewPixelViewRegion method is:</p>
446
447 <pre class="code">
448   PixelView *NewPixelViewRegion(MagickWand *wand,const long x,
449     const long y,const unsigned long width,const unsigned long height)
450 </pre>
451
452 <p>A description of each parameter follows:</p></ol>
453
454 <h5>wand</h5>
455 <ol><p>the magick wand.</p></ol>
456
457 <h5>x,y,columns,rows</h5>
458 <ol><p>These values define the perimeter of a region of pixel_wands view.</p></ol>
459
460  </div>
461 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
462 _8c.html" target="source" name="SetPixelViewIterator">SetPixelViewIterator</a></h2>
463 <div class="doc-section">
464
465 <p>SetPixelViewIterator() iterates over the pixel view in parallel and calls your set method for each scanline of the view.  The pixel region is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension.  The pixels are initiallly undefined and any settings you make in the callback method are automagically synced back to your image.</p></ol>
466
467 <p>Use this pragma:</p>
468
469 <pre class="text">
470       #pragma omp critical
471 </pre>
472
473 <p>to define a section of code in your callback set method that must be executed by a single thread at a time.</p></ol>
474
475 <p>The format of the SetPixelViewIterator method is:</p>
476
477 <pre class="code">
478   MagickBooleanType SetPixelViewIterator(PixelView *destination,
479     SetPixelViewMethod set,void *context)
480 </pre>
481
482 <p>A description of each parameter follows:</p></ol>
483
484 <h5>destination</h5>
485 <ol><p>the pixel view.</p></ol>
486
487 <h5>set</h5>
488 <ol><p>the set callback method.</p></ol>
489
490 <h5>context</h5>
491 <ol><p>the user defined context.</p></ol>
492
493  </div>
494 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
495 _8c.html" target="source" name="TransferPixelViewIterator">TransferPixelViewIterator</a></h2>
496 <div class="doc-section">
497
498 <p>TransferPixelViewIterator() iterates over two pixel views in parallel and calls your transfer method for each scanline of the view.  The source pixel region is not confined to the image canvas-- that is you can include negative offsets or widths or heights that exceed the image dimension. However, the destination pixel view is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension are permitted.</p></ol>
499
500 <p>Use this pragma:</p>
501
502 <pre class="text">
503       #pragma omp critical
504 </pre>
505
506 <p>to define a section of code in your callback transfer method that must be executed by a single thread at a time.</p></ol>
507
508 <p>The format of the TransferPixelViewIterator method is:</p>
509
510 <pre class="code">
511   MagickBooleanType TransferPixelViewIterator(PixelView *source,
512     PixelView *destination,TransferPixelViewMethod transfer,void *context)
513 </pre>
514
515 <p>A description of each parameter follows:</p></ol>
516
517 <h5>source</h5>
518 <ol><p>the source pixel view.</p></ol>
519
520 <h5>destination</h5>
521 <ol><p>the destination pixel view.</p></ol>
522
523 <h5>transfer</h5>
524 <ol><p>the transfer callback method.</p></ol>
525
526 <h5>context</h5>
527 <ol><p>the user defined context.</p></ol>
528
529  </div>
530 <h2><a href="http://www.imagemagick.org/api/MagickWand/pixel-view
531 _8c.html" target="source" name="UpdatePixelViewIterator">UpdatePixelViewIterator</a></h2>
532 <div class="doc-section">
533
534 <p>UpdatePixelViewIterator() iterates over the pixel view in parallel and calls your update method for each scanline of the view.  The pixel region is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension are permitted.  Updates to pixels in your callback are automagically synced back to the image.</p></ol>
535
536 <p>Use this pragma:</p>
537
538 <pre class="text">
539       #pragma omp critical
540 </pre>
541
542 <p>to define a section of code in your callback update method that must be executed by a single thread at a time.</p></ol>
543
544 <p>The format of the UpdatePixelViewIterator method is:</p>
545
546 <pre class="code">
547   MagickBooleanType UpdatePixelViewIterator(PixelView *source,
548     UpdatePixelViewMethod update,void *context)
549 </pre>
550
551 <p>A description of each parameter follows:</p></ol>
552
553 <h5>source</h5>
554 <ol><p>the source pixel view.</p></ol>
555
556 <h5>update</h5>
557 <ol><p>the update callback method.</p></ol>
558
559 <h5>context</h5>
560 <ol><p>the user defined context.</p></ol>
561
562  </div>
563 \r
564 </div>\r
565 \r
566 <div id="linkbar">\r
567  <!--    <span id="linkbar-west">&nbsp;</span>  -->\r
568     <span id="linkbar-center">\r
569       <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;\r
570     <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
571     </span>\r
572     <span id="linkbar-east">&nbsp;</span>\r
573   </div>\r
574   <div class="footer">\r
575     <span id="footer-west">&copy; 1999-2010 ImageMagick Studio LLC</span>\r
576     <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>\r
577   </div>\r
578   <div style="clear: both; margin: 0; width: 100%; "></div>\r
579 </body>\r
580 </html>\r