root/ImageMagick/trunk/filters/boost.c

Revision 510, 4.8 KB (checked in by cristy, 3 weeks ago)
Line 
1/*
2%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3%                                                                             %
4%                                                                             %
5%                      BBBB    OOO    OOO   SSSSS  TTTTT                      %
6%                      B   B  O   O  O   O  SS       T                        %
7%                      BBBB   O   O  O   O   SSS     T                        %
8%                      B   B  O   O  O   O     SS    T                        %
9%                      BBBB    OOO    OOO   SSSSS    T                        %
10%                                                                             %
11%                                Boost An Image                               %
12%                                                                             %
13%                               Software Design                               %
14%                                 John Cristy                                 %
15%                                November 2009                                %
16%                                                                             %
17%                                                                             %
18%  Copyright 1999-2009 ImageMagick Studio LLC, a non-profit organization      %
19%  dedicated to making software imaging solutions freely available.           %
20%                                                                             %
21%  You may not use this file except in compliance with the License.  You may  %
22%  obtain a copy of the License at                                            %
23%                                                                             %
24%    http://www.imagemagick.org/script/license.php                            %
25%                                                                             %
26%  Unless required by applicable law or agreed to in writing, software        %
27%  distributed under the License is distributed on an "AS IS" BASIS,          %
28%  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   %
29%  See the License for the specific language governing permissions and        %
30%  limitations under the License.                                             %
31%                                                                             %
32%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
33%
34% Boost certain algorithms by executing in concert across heterogeneous
35% platforms consisting of CPUs, GPUs, and other processors (in development).
36%
37*/
38
39/*
40  Include declarations.
41*/
42#include "magick/studio.h"
43#include "magick/MagickCore.h"
44
45/*
46%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
47%                                                                             %
48%                                                                             %
49%                                                                             %
50%   b o o s t I m a g e                                                       %
51%                                                                             %
52%                                                                             %
53%                                                                             %
54%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
55%
56%  boostImage() boosts the performance of certain image processing algorithms
57%  by utilizing the OpenCL framework to execute the algorithm across
58%  heterogeneous platforms consisting of CPUs, GPUs, and other processors.  This
59%  filter is experimental and is not recommended for general use.
60%  The format of the boostImage method is:
61%
62%      unsigned long boostImage(Image *images,const int argc,
63%        char **argv,ExceptionInfo *exception)
64%
65%  A description of each parameter follows:
66%
67%    o image: the address of a structure of type Image.
68%
69%    o argc: Specifies a pointer to an integer describing the number of
70%      elements in the argument vector.
71%
72%    o argv: Specifies a pointer to a text array containing the command line
73%      arguments.
74%
75%    o exception: return any errors or warnings in this structure.
76%
77*/
78ModuleExport unsigned long boostImage(Image **images,const int argc,
79  const char **argv,ExceptionInfo *exception)
80{
81  assert(images != (Image **) NULL);
82  assert(*images != (Image *) NULL);
83  assert((*images)->signature == MagickSignature);
84#if !defined(MAGICKCORE_OPENCL_SUPPORT)
85  (void) argc;
86  (void) argv;
87  (void) ThrowMagickException(exception,GetMagickModule(),MissingDelegateError,
88    "DelegateLibrarySupportNotBuiltIn","`%s' (OpenCL)",(*images)->filename);
89#else
90  {
91    Image
92      *image;
93
94    (void) argc;
95    (void) argv;
96    (void) exception;
97  }
98#endif
99  return(MagickImageFilterSignature);
100}
Note: See TracBrowser for help on using the browser.