]> granicus.if.org Git - imagemagick/blob - utilities/compare.c
(no commit message)
[imagemagick] / utilities / compare.c
1 /*
2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3 %                                                                             %
4 %                                                                             %
5 %                                                                             %
6 %               CCCC   OOO   M   M  PPPP    AAA   RRRR    EEEEE               %
7 %              C      O   O  MM MM  P   P  A   A  R   R   E                   %
8 %              C      O   O  M M M  PPPP   AAAAA  RRRR    EEE                 %
9 %              C      O   O  M   M  P      A   A  R R     E                   %
10 %               CCCC   OOO   M   M  P      A   A  R  R    EEEEE               %
11 %                                                                             %
12 %                                                                             %
13 %                        Image Comparison Utility                             %
14 %                                                                             %
15 %                                                                             %
16 %                           Software Design                                   %
17 %                             John Cristy                                     %
18 %                            December 2003                                    %
19 %                                                                             %
20 %                                                                             %
21 %  Copyright 1999-2012 ImageMagick Studio LLC, a non-profit organization      %
22 %  dedicated to making software imaging solutions freely available.           %
23 %                                                                             %
24 %  You may not use this file except in compliance with the License.  You may  %
25 %  obtain a copy of the License at                                            %
26 %                                                                             %
27 %    http://www.imagemagick.org/script/license.php                            %
28 %                                                                             %
29 %  Unless required by applicable law or agreed to in writing, software        %
30 %  distributed under the License is distributed on an "AS IS" BASIS,          %
31 %  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   %
32 %  See the License for the specific language governing permissions and        %
33 %  limitations under the License.                                             %
34 %                                                                             %
35 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
36 %
37 % The compare utility mathematically and visually annotates the difference
38 % between an image and its reconstruction.
39 %
40 */
41 \f
42 /*
43   Include declarations.
44 */
45 #include "MagickWand/studio.h"
46 #include "MagickWand/MagickWand.h"
47 \f
48 /*
49 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
50 %                                                                             %
51 %                                                                             %
52 %                                                                             %
53 %  M a i n                                                                    %
54 %                                                                             %
55 %                                                                             %
56 %                                                                             %
57 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
58 %
59 %
60 */
61 static int CompareMain(int argc,char **argv)
62 {
63   char
64     *metadata;
65
66   ExceptionInfo
67     *exception;
68
69   ImageInfo
70     *image_info;
71
72   MagickBooleanType
73     status;
74
75   MagickCoreGenesis(*argv,MagickTrue);
76   exception=AcquireExceptionInfo();
77   image_info=AcquireImageInfo();
78   metadata=(char *) NULL;
79   status=MagickCommandGenesis(image_info,CompareImagesCommand,argc,argv,
80     &metadata,exception);
81   if (metadata != (char *) NULL)
82     metadata=DestroyString(metadata);
83   image_info=DestroyImageInfo(image_info);
84   exception=DestroyExceptionInfo(exception);
85   MagickCoreTerminus();
86   return(status);
87 }
88
89 #if !defined(MAGICKCORE_WINDOWS_SUPPORT) || defined(__CYGWIN__) || defined(__MINGW32__)
90 int main(int argc,char **argv)
91 {
92   return(CompareMain(argc,argv));
93 }
94 #else
95 int wmain(int argc,wchar_t *argv[])
96 {
97   char
98     **utf8;
99
100   int
101     status;
102
103   register int
104     i;
105
106   utf8=NTArgvToUTF8(argc,argv);
107   status=CompareMain(argc,utf8);
108   for (i=0; i < argc; i++)
109     utf8[i]=DestroyString(utf8[i]);
110   utf8=(char **) RelinquishMagickMemory(utf8);
111   return(status);
112 }
113 #endif