~ubuntu-branches/ubuntu/intrepid/graphicsmagick/intrepid

« back to all changes in this revision

Viewing changes to magick/magick.h

  • Committer: Bazaar Package Importer
  • Author(s): Daniel Kobras
  • Date: 2006-05-06 16:28:08 UTC
  • Revision ID: james.westby@ubuntu.com-20060506162808-vt2ni3r5nytcszms
Tags: upstream-1.1.7
ImportĀ upstreamĀ versionĀ 1.1.7

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
  Copyright (C) 2003 GraphicsMagick Group
 
3
  Copyright (C) 2002 ImageMagick Studio
 
4
  Copyright 1991-1999 E. I. du Pont de Nemours and Company
 
5
 
 
6
  This program is covered by multiple licenses, which are described in
 
7
  Copyright.txt. You should have received a copy of Copyright.txt with this
 
8
  package; otherwise see http://www.graphicsmagick.org/www/Copyright.html.
 
9
 
 
10
  ImageMagick Application Programming Interface declarations.
 
11
*/
 
12
#ifndef _MAGICK_MAGICK_H
 
13
#define _MAGICK_MAGICK_H
 
14
 
 
15
#if defined(__cplusplus) || defined(c_plusplus)
 
16
extern "C" {
 
17
#endif
 
18
 
 
19
typedef Image
 
20
  *(*DecoderHandler)(const ImageInfo *,ExceptionInfo *);
 
21
 
 
22
typedef unsigned int
 
23
  (*EncoderHandler)(const ImageInfo *,Image *),
 
24
  (*MagickHandler)(const unsigned char *,const size_t);
 
25
 
 
26
typedef struct _MagickInfo
 
27
{
 
28
  char
 
29
    *name,              /* format ID ("magick") */
 
30
    *description,       /* format description */
 
31
    *note,              /* usage note for user */
 
32
    *version,           /* support library version */
 
33
    *module;            /* name of loadable module */
 
34
 
 
35
  ImageInfo
 
36
    *image_info;        /* huh??? */
 
37
 
 
38
  DecoderHandler
 
39
    decoder;            /* function vector to decoding routine */
 
40
 
 
41
  EncoderHandler
 
42
    encoder;            /* function vector to encoding routine */
 
43
 
 
44
  MagickHandler
 
45
    magick;             /* function vector to format test routine */
 
46
 
 
47
  void
 
48
    *client_data;       /* arbitrary user supplied data */
 
49
 
 
50
  unsigned int
 
51
    adjoin,             /* coder may read/write multiple frames (default True) */
 
52
    raw,                /* coder requires that size be set (default False) */
 
53
    stealth,            /* coder should not appear in formats listing (default False) */
 
54
    seekable_stream,    /* coder uses BLOB "seek" APIs (default False) */
 
55
    blob_support,       /* coder uses BLOB APIs (default True) */
 
56
    thread_support;     /* coder is thread safe (default True) */
 
57
 
 
58
  unsigned long
 
59
    signature;          /* private, structure validator */
 
60
 
 
61
  struct _MagickInfo
 
62
    *previous,          /* private, previous member in list */
 
63
    *next;              /* private, next member in list */
 
64
} MagickInfo;
 
65
 
 
66
/*
 
67
  Magick method declaractions.
 
68
*/
 
69
extern MagickExport char
 
70
  *MagickToMime(const char *);
 
71
 
 
72
extern MagickExport const char
 
73
  *GetImageMagick(const unsigned char *,const size_t);
 
74
 
 
75
extern MagickExport unsigned int
 
76
  IsMagickConflict(const char *),
 
77
  ListModuleMap(FILE *,ExceptionInfo *),
 
78
  ListMagickInfo(FILE *,ExceptionInfo *),
 
79
  UnregisterMagickInfo(const char *);
 
80
 
 
81
extern MagickExport void
 
82
  DestroyMagick(void),
 
83
  DestroyMagickInfo(void),
 
84
  InitializeMagick(const char *);
 
85
 
 
86
extern MagickExport const MagickInfo
 
87
*GetMagickInfo(const char *,ExceptionInfo *exception);
 
88
 
 
89
extern MagickExport MagickInfo
 
90
  **GetMagickInfoArray(ExceptionInfo *exception);
 
91
 
 
92
extern MagickExport MagickInfo
 
93
  *RegisterMagickInfo(MagickInfo *),
 
94
  *SetMagickInfo(const char *);
 
95
 
 
96
#if defined(__cplusplus) || defined(c_plusplus)
 
97
}
 
98
#endif
 
99
 
 
100
#endif