blob: 4c129beaf71fa2c598c8b743f032b7b0d0ba74ec [file] [log] [blame]
cristy10c87152010-06-26 16:12:21 +00001<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
4<head>
5 <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
6 <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U=" />
7 <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf" />
8 <style type="text/css" media="all">
9 @import url("../../www/magick.css");
10 </style>
11 <link rel="shortcut icon" href="../../images/wand.ico" type="images/vnd.microsoft.icon"/>
12 <title>ImageMagick: MagickCore, C API for ImageMagick: Image 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="magickcore, c, api, for, imagemagick:, image, 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>
28
29<body id="www-imagemagick-org">
30<div class="titlebar">
31<a href="../../index.html">
32 <img src="../../images/script.png" alt="[ImageMagick]"
33 style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>
34<a href="http://www.networkredux.com">
35 <img src="../../images/networkredux.png" alt="[sponsor]"
36 style="margin: 45px auto; border: 0px; float: left;" /></a>
37<a href="http://www.imagemagick.org/discourse-server/">
38 <img src="../../images/logo.jpg" alt=""
39 style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
40<a href="../../index.html">
41 <img src="../../images/sprite.jpg" alt=""
42 style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
43</div>
44
45<div class="eastbar">
46
47<div class="menu">
48 <a title="About ImageMagick" href="../../index.html">About ImageMagick</a>
49</div>
50<div class="sep"></div>
51<div class="menu">
52 <a title="Binary Releases" href="../../www/binary-releases.html">Binary Releases</a>
53</div>
54<div class="sub">
55 <a title="Binary Release: Unix" href="../../www/binary-releases.html#unix">Unix</a>
56</div>
57<div class="sub">
58 <a title="Binary Release: MacOS X" href="../../www/binary-releases.html#macosx">Mac OS X</a>
59</div>
60<div class="sub">
61 <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
62</div>
63<div class="sep"></div>
64<div class="menu">
65 <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</a>
66</div>
67<div class="sub">
68 <a title="Command-line Tools: Processing" href="../../www/command-line-processing.html">Processing</a>
69</div>
70<div class="sub">
71 <a title="Command-line Tools: Options" href="../../www/command-line-options.html">Options</a>
72</div>
73<div class="sub">
74 <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
75</div>
76<div class="menu">
77 <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
78</div>
79<div class="sub">
80 <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
81</div>
82<div class="sub">
83 <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
84</div>
85<div class="sub">
86 <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
87</div>
88<div class="sub">
89 <a title="Program Interface: Magick++" href="../../Magick++/">Magick++</a>
90</div>
91<div class="sep"></div>
92<div class="menu">
93 <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
94</div>
95<div class="sub">
96 <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</a>
97</div>
98<div class="sub">
99 <a title="Install from Source: Windows" href="../../www/install-source.html#windows">Windows</a>
100 </div>
101<div class="menu">
102 <a title="Resources" href="../../www/resources.html">Resources</a>
103</div>
104<div class="menu">
105 <a title="Architecture" href="../../www/architecture.html">Architecture</a>
106</div>
107<div class="menu">
108 <a title="Download" href="../../www/download.html">Download</a>
109</div>
110<div class="sep"></div>
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>
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>
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
150
151</div>
152
153<div class="main">
154
cristy73b7d4c2010-06-27 00:31:00 +0000155<p class="navigation-index">[<a href="#CloneImageView">CloneImageView</a> &bull; <a href="#DestroyImageView">DestroyImageView</a> &bull; <a href="#DuplexTransferImageViewIterator">DuplexTransferImageViewIterator</a> &bull; <a href="#GetImageViewAuthenticIndexes">GetImageViewAuthenticIndexes</a> &bull; <a href="#GetImageViewAuthenticPixels">GetImageViewAuthenticPixels</a> &bull; <a href="#GetImageViewException">GetImageViewException</a> &bull; <a href="#GetImageViewHeight">GetImageViewHeight</a> &bull; <a href="#GetImageViewImage">GetImageViewImage</a> &bull; <a href="#GetImageViewIterator">GetImageViewIterator</a> &bull; <a href="#GetImageViewVirtualIndexes">GetImageViewVirtualIndexes</a> &bull; <a href="#GetImageViewVirtualPixels">GetImageViewVirtualPixels</a> &bull; <a href="#GetImageViewWidth">GetImageViewWidth</a> &bull; <a href="#GetImageViewX">GetImageViewX</a> &bull; <a href="#GetImageViewY">GetImageViewY</a> &bull; <a href="#IsImageView">IsImageView</a> &bull; <a href="#NewImageView">NewImageView</a> &bull; <a href="#NewImageViewRegion">NewImageViewRegion</a> &bull; <a href="#SetImageViewIterator">SetImageViewIterator</a> &bull; <a href="#TransferImageViewIterator">TransferImageViewIterator</a> &bull; <a href="#UpdateImageViewIterator">UpdateImageViewIterator</a>]</p>
cristy10c87152010-06-26 16:12:21 +0000156
157<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
158_8c.html" target="source" name="CloneImageView">CloneImageView</a></h2>
159<div class="doc-section">
160
cristy73b7d4c2010-06-27 00:31:00 +0000161<p>CloneImageView() makes a copy of the specified image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000162
163<p>The format of the CloneImageView method is:</p>
164
165<pre class="code">
cristy73b7d4c2010-06-27 00:31:00 +0000166 ImageView *CloneImageView(const ImageView *image_view)
cristy10c87152010-06-26 16:12:21 +0000167</pre>
168
169<p>A description of each parameter follows:</p></ol>
170
cristy73b7d4c2010-06-27 00:31:00 +0000171<h5>image_view</h5>
172<ol><p>the image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000173
174 </div>
175<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
176_8c.html" target="source" name="DestroyImageView">DestroyImageView</a></h2>
177<div class="doc-section">
178
cristy73b7d4c2010-06-27 00:31:00 +0000179<p>DestroyImageView() deallocates memory associated with a image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000180
181<p>The format of the DestroyImageView method is:</p>
182
183<pre class="code">
cristy73b7d4c2010-06-27 00:31:00 +0000184 ImageView *DestroyImageView(ImageView *image_view)
cristy10c87152010-06-26 16:12:21 +0000185</pre>
186
187<p>A description of each parameter follows:</p></ol>
188
cristy73b7d4c2010-06-27 00:31:00 +0000189<h5>image_view</h5>
190<ol><p>the image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000191
192 </div>
193<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
194_8c.html" target="source" name="DuplexTransferImageViewIterator">DuplexTransferImageViewIterator</a></h2>
195<div class="doc-section">
196
cristy73b7d4c2010-06-27 00:31:00 +0000197<p>DuplexTransferImageViewIterator() iterates over three image 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 image 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>
cristy10c87152010-06-26 16:12:21 +0000198
cristy73b7d4c2010-06-27 00:31:00 +0000199<p>Use this pragma if the view is not single threaded:</p>
cristy10c87152010-06-26 16:12:21 +0000200
201<pre class="text">
202 #pragma omp critical
203</pre>
204
205<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>
206
207<p>The format of the DuplexTransferImageViewIterator method is:</p>
208
209<pre class="code">
210 MagickBooleanType DuplexTransferImageViewIterator(ImageView *source,
211 ImageView *duplex,ImageView *destination,
212 DuplexTransferImageViewMethod transfer,void *context)
213</pre>
214
215<p>A description of each parameter follows:</p></ol>
216
217<h5>source</h5>
cristy73b7d4c2010-06-27 00:31:00 +0000218<ol><p>the source image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000219
220<h5>duplex</h5>
cristy73b7d4c2010-06-27 00:31:00 +0000221<ol><p>the duplex image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000222
223<h5>destination</h5>
cristy73b7d4c2010-06-27 00:31:00 +0000224<ol><p>the destination image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000225
226<h5>transfer</h5>
227<ol><p>the transfer callback method.</p></ol>
228
229<h5>context</h5>
230<ol><p>the user defined context.</p></ol>
231
232 </div>
233<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
cristy73b7d4c2010-06-27 00:31:00 +0000234_8c.html" target="source" name="GetImageViewAuthenticIndexes">GetImageViewAuthenticIndexes</a></h2>
235<div class="doc-section">
236
237<p>GetImageViewAuthenticIndexes() returns the image view authentic indexes.</p></ol>
238
239<p>The format of the GetImageViewAuthenticPixels method is:</p>
240
241<pre class="code">
242 IndexPacket *GetImageViewAuthenticIndexes(const ImageView *image_view)
243</pre>
244
245<p>A description of each parameter follows:</p></ol>
246
247<h5>image_view</h5>
248<ol><p>the image view.</p></ol>
249
250 </div>
251<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
252_8c.html" target="source" name="GetImageViewAuthenticPixels">GetImageViewAuthenticPixels</a></h2>
253<div class="doc-section">
254
255<p>GetImageViewAuthenticPixels() returns the image view authentic pixels.</p></ol>
256
257<p>The format of the GetImageViewAuthenticPixels method is:</p>
258
259<pre class="code">
260 PixelPacket *GetImageViewAuthenticPixels(const ImageView *image_view)
261</pre>
262
263<p>A description of each parameter follows:</p></ol>
264
265<h5>image_view</h5>
266<ol><p>the image view.</p></ol>
267
268 </div>
269<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
cristy10c87152010-06-26 16:12:21 +0000270_8c.html" target="source" name="GetImageViewException">GetImageViewException</a></h2>
271<div class="doc-section">
272
cristy73b7d4c2010-06-27 00:31:00 +0000273<p>GetImageViewException() returns the severity, reason, and description of any error that occurs when utilizing a image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000274
275<p>The format of the GetImageViewException method is:</p>
276
277<pre class="code">
cristy73b7d4c2010-06-27 00:31:00 +0000278 char *GetImageViewException(const PixelImage *image_view,
cristy10c87152010-06-26 16:12:21 +0000279 ExceptionType *severity)
280</pre>
281
282<p>A description of each parameter follows:</p></ol>
283
cristy73b7d4c2010-06-27 00:31:00 +0000284<h5>image_view</h5>
285<ol><p>the pixel image_view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000286
287<h5>severity</h5>
288<ol><p>the severity of the error is returned here.</p></ol>
289
290 </div>
291<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
292_8c.html" target="source" name="GetImageViewHeight">GetImageViewHeight</a></h2>
293<div class="doc-section">
294
cristy73b7d4c2010-06-27 00:31:00 +0000295<p>GetImageViewHeight() returns the image view height.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000296
297<p>The format of the GetImageViewHeight method is:</p>
298
299<pre class="code">
cristy73b7d4c2010-06-27 00:31:00 +0000300 size_t GetImageViewHeight(const ImageView *image_view)
cristy10c87152010-06-26 16:12:21 +0000301</pre>
302
303<p>A description of each parameter follows:</p></ol>
304
cristy73b7d4c2010-06-27 00:31:00 +0000305<h5>image_view</h5>
306<ol><p>the image view.</p></ol>
307
308 </div>
309<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
310_8c.html" target="source" name="GetImageViewImage">GetImageViewImage</a></h2>
311<div class="doc-section">
312
313<p>GetImageViewImage() returns the image associated with the image view.</p></ol>
314
315<p>The format of the GetImageViewImage method is:</p>
316
317<pre class="code">
318 MagickCore *GetImageViewImage(const ImageView *image_view)
319</pre>
320
321<p>A description of each parameter follows:</p></ol>
322
323<h5>image_view</h5>
324<ol><p>the image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000325
326 </div>
327<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
328_8c.html" target="source" name="GetImageViewIterator">GetImageViewIterator</a></h2>
329<div class="doc-section">
330
cristy73b7d4c2010-06-27 00:31:00 +0000331<p>GetImageViewIterator() iterates over the image 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>
cristy10c87152010-06-26 16:12:21 +0000332
cristy73b7d4c2010-06-27 00:31:00 +0000333<p>Use this pragma if the view is not single threaded:</p>
cristy10c87152010-06-26 16:12:21 +0000334
335<pre class="text">
336 #pragma omp critical
337</pre>
338
339<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>
340
341<p>The format of the GetImageViewIterator method is:</p>
342
343<pre class="code">
344 MagickBooleanType GetImageViewIterator(ImageView *source,
345 GetImageViewMethod get,void *context)
346</pre>
347
348<p>A description of each parameter follows:</p></ol>
349
350<h5>source</h5>
cristy73b7d4c2010-06-27 00:31:00 +0000351<ol><p>the source image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000352
353<h5>get</h5>
354<ol><p>the get callback method.</p></ol>
355
356<h5>context</h5>
357<ol><p>the user defined context.</p></ol>
358
359 </div>
360<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
cristy73b7d4c2010-06-27 00:31:00 +0000361_8c.html" target="source" name="GetImageViewVirtualIndexes">GetImageViewVirtualIndexes</a></h2>
cristy10c87152010-06-26 16:12:21 +0000362<div class="doc-section">
363
cristy73b7d4c2010-06-27 00:31:00 +0000364<p>GetImageViewVirtualIndexes() returns the image view virtual indexes.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000365
cristy73b7d4c2010-06-27 00:31:00 +0000366<p>The format of the GetImageViewVirtualIndexes method is:</p>
cristy10c87152010-06-26 16:12:21 +0000367
368<pre class="code">
cristy73b7d4c2010-06-27 00:31:00 +0000369 const IndexPacket *GetImageViewVirtualIndexes(
370 const ImageView *image_view)
cristy10c87152010-06-26 16:12:21 +0000371</pre>
372
373<p>A description of each parameter follows:</p></ol>
374
cristy73b7d4c2010-06-27 00:31:00 +0000375<h5>image_view</h5>
376<ol><p>the image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000377
378 </div>
379<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
cristy73b7d4c2010-06-27 00:31:00 +0000380_8c.html" target="source" name="GetImageViewVirtualPixels">GetImageViewVirtualPixels</a></h2>
cristy10c87152010-06-26 16:12:21 +0000381<div class="doc-section">
382
cristy73b7d4c2010-06-27 00:31:00 +0000383<p>GetImageViewVirtualPixels() returns the image view virtual pixels.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000384
cristy73b7d4c2010-06-27 00:31:00 +0000385<p>The format of the GetImageViewVirtualPixels method is:</p>
cristy10c87152010-06-26 16:12:21 +0000386
387<pre class="code">
cristy73b7d4c2010-06-27 00:31:00 +0000388 const PixelPacket *GetImageViewVirtualPixels(const ImageView *image_view)
cristy10c87152010-06-26 16:12:21 +0000389</pre>
390
391<p>A description of each parameter follows:</p></ol>
392
cristy73b7d4c2010-06-27 00:31:00 +0000393<h5>image_view</h5>
394<ol><p>the image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000395
396 </div>
397<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
398_8c.html" target="source" name="GetImageViewWidth">GetImageViewWidth</a></h2>
399<div class="doc-section">
400
cristy73b7d4c2010-06-27 00:31:00 +0000401<p>GetImageViewWidth() returns the image view width.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000402
403<p>The format of the GetImageViewWidth method is:</p>
404
405<pre class="code">
cristy73b7d4c2010-06-27 00:31:00 +0000406 size_t GetImageViewWidth(const ImageView *image_view)
cristy10c87152010-06-26 16:12:21 +0000407</pre>
408
409<p>A description of each parameter follows:</p></ol>
410
cristy73b7d4c2010-06-27 00:31:00 +0000411<h5>image_view</h5>
412<ol><p>the image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000413
414 </div>
415<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
416_8c.html" target="source" name="GetImageViewX">GetImageViewX</a></h2>
417<div class="doc-section">
418
cristy73b7d4c2010-06-27 00:31:00 +0000419<p>GetImageViewX() returns the image view x offset.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000420
421<p>The format of the GetImageViewX method is:</p>
422
423<pre class="code">
cristy73b7d4c2010-06-27 00:31:00 +0000424 ssize_t GetImageViewX(const ImageView *image_view)
cristy10c87152010-06-26 16:12:21 +0000425</pre>
426
427<p>A description of each parameter follows:</p></ol>
428
cristy73b7d4c2010-06-27 00:31:00 +0000429<h5>image_view</h5>
430<ol><p>the image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000431
432 </div>
433<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
434_8c.html" target="source" name="GetImageViewY">GetImageViewY</a></h2>
435<div class="doc-section">
436
cristy73b7d4c2010-06-27 00:31:00 +0000437<p>GetImageViewY() returns the image view y offset.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000438
439<p>The format of the GetImageViewY method is:</p>
440
441<pre class="code">
cristy73b7d4c2010-06-27 00:31:00 +0000442 ssize_t GetImageViewY(const ImageView *image_view)
cristy10c87152010-06-26 16:12:21 +0000443</pre>
444
445<p>A description of each parameter follows:</p></ol>
446
cristy73b7d4c2010-06-27 00:31:00 +0000447<h5>image_view</h5>
448<ol><p>the image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000449
450 </div>
451<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
452_8c.html" target="source" name="IsImageView">IsImageView</a></h2>
453<div class="doc-section">
454
cristy73b7d4c2010-06-27 00:31:00 +0000455<p>IsImageView() returns MagickTrue if the the parameter is verified as a image view object.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000456
457<p>The format of the IsImageView method is:</p>
458
459<pre class="code">
cristy73b7d4c2010-06-27 00:31:00 +0000460 MagickBooleanType IsImageView(const ImageView *image_view)
cristy10c87152010-06-26 16:12:21 +0000461</pre>
462
463<p>A description of each parameter follows:</p></ol>
464
cristy73b7d4c2010-06-27 00:31:00 +0000465<h5>image_view</h5>
466<ol><p>the image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000467
468 </div>
469<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
470_8c.html" target="source" name="NewImageView">NewImageView</a></h2>
471<div class="doc-section">
472
cristy73b7d4c2010-06-27 00:31:00 +0000473<p>NewImageView() returns a image view required for all other methods in the Pixel View API.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000474
475<p>The format of the NewImageView method is:</p>
476
477<pre class="code">
478 ImageView *NewImageView(MagickCore *wand)
479</pre>
480
481<p>A description of each parameter follows:</p></ol>
482
483<h5>wand</h5>
484<ol><p>the wand.</p></ol>
485
486 </div>
487<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
488_8c.html" target="source" name="NewImageViewRegion">NewImageViewRegion</a></h2>
489<div class="doc-section">
490
cristy73b7d4c2010-06-27 00:31:00 +0000491<p>NewImageViewRegion() returns a image view required for all other methods in the Pixel View API.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000492
493<p>The format of the NewImageViewRegion method is:</p>
494
495<pre class="code">
496 ImageView *NewImageViewRegion(MagickCore *wand,const ssize_t x,
497 const ssize_t y,const size_t width,const size_t height)
498</pre>
499
500<p>A description of each parameter follows:</p></ol>
501
502<h5>wand</h5>
503<ol><p>the magick wand.</p></ol>
504
505<h5>x,y,columns,rows</h5>
506<ol><p>These values define the perimeter of a region of pixel_wands view.</p></ol>
507
508 </div>
509<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
510_8c.html" target="source" name="SetImageViewIterator">SetImageViewIterator</a></h2>
511<div class="doc-section">
512
cristy73b7d4c2010-06-27 00:31:00 +0000513<p>SetImageViewIterator() iterates over the image 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>
cristy10c87152010-06-26 16:12:21 +0000514
cristy73b7d4c2010-06-27 00:31:00 +0000515<p>Use this pragma if the view is not single threaded:</p>
cristy10c87152010-06-26 16:12:21 +0000516
517<pre class="text">
518 #pragma omp critical
519</pre>
520
521<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>
522
523<p>The format of the SetImageViewIterator method is:</p>
524
525<pre class="code">
526 MagickBooleanType SetImageViewIterator(ImageView *destination,
527 SetImageViewMethod set,void *context)
528</pre>
529
530<p>A description of each parameter follows:</p></ol>
531
532<h5>destination</h5>
cristy73b7d4c2010-06-27 00:31:00 +0000533<ol><p>the image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000534
535<h5>set</h5>
536<ol><p>the set callback method.</p></ol>
537
538<h5>context</h5>
539<ol><p>the user defined context.</p></ol>
540
541 </div>
542<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
543_8c.html" target="source" name="TransferImageViewIterator">TransferImageViewIterator</a></h2>
544<div class="doc-section">
545
cristy73b7d4c2010-06-27 00:31:00 +0000546<p>TransferImageViewIterator() iterates over two image 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 image 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>
cristy10c87152010-06-26 16:12:21 +0000547
cristy73b7d4c2010-06-27 00:31:00 +0000548<p>Use this pragma if the view is not single threaded:</p>
cristy10c87152010-06-26 16:12:21 +0000549
550<pre class="text">
551 #pragma omp critical
552</pre>
553
554<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>
555
556<p>The format of the TransferImageViewIterator method is:</p>
557
558<pre class="code">
559 MagickBooleanType TransferImageViewIterator(ImageView *source,
560 ImageView *destination,TransferImageViewMethod transfer,void *context)
561</pre>
562
563<p>A description of each parameter follows:</p></ol>
564
565<h5>source</h5>
cristy73b7d4c2010-06-27 00:31:00 +0000566<ol><p>the source image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000567
568<h5>destination</h5>
cristy73b7d4c2010-06-27 00:31:00 +0000569<ol><p>the destination image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000570
571<h5>transfer</h5>
572<ol><p>the transfer callback method.</p></ol>
573
574<h5>context</h5>
575<ol><p>the user defined context.</p></ol>
576
577 </div>
578<h2><a href="http://www.imagemagick.org/api/MagickCore/image-view
579_8c.html" target="source" name="UpdateImageViewIterator">UpdateImageViewIterator</a></h2>
580<div class="doc-section">
581
cristy73b7d4c2010-06-27 00:31:00 +0000582<p>UpdateImageViewIterator() iterates over the image 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>
cristy10c87152010-06-26 16:12:21 +0000583
cristy73b7d4c2010-06-27 00:31:00 +0000584<p>Use this pragma if the view is not single threaded:</p>
cristy10c87152010-06-26 16:12:21 +0000585
586<pre class="text">
587 #pragma omp critical
588</pre>
589
590<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>
591
592<p>The format of the UpdateImageViewIterator method is:</p>
593
594<pre class="code">
595 MagickBooleanType UpdateImageViewIterator(ImageView *source,
596 UpdateImageViewMethod update,void *context)
597</pre>
598
599<p>A description of each parameter follows:</p></ol>
600
601<h5>source</h5>
cristy73b7d4c2010-06-27 00:31:00 +0000602<ol><p>the source image view.</p></ol>
cristy10c87152010-06-26 16:12:21 +0000603
604<h5>update</h5>
605<ol><p>the update callback method.</p></ol>
606
607<h5>context</h5>
608<ol><p>the user defined context.</p></ol>
609
610 </div>
611
612</div>
613
614<div id="linkbar">
615 <!-- <span id="linkbar-west">&nbsp;</span> -->
616 <span id="linkbar-center">
617 <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;
618 <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
619 </span>
620 <span id="linkbar-east">&nbsp;</span>
621 </div>
622 <div class="footer">
623 <span id="footer-west">&copy; 1999-2010 ImageMagick Studio LLC</span>
624 <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
625 </div>
626 <div style="clear: both; margin: 0; width: 100%; "></div>
627</body>
628</html>