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

« back to all changes in this revision

Viewing changes to magick/blob.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, 2004 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
  Image Compression/Decompression Methods.
 
11
*/
 
12
#ifndef _MAGICK_BLOB_H
 
13
#define _MAGICK_BLOB_H
 
14
 
 
15
#if defined(__cplusplus) || defined(c_plusplus)
 
16
extern "C" {
 
17
#endif
 
18
 
 
19
#include "magick/image.h"
 
20
 
 
21
/*
 
22
  Define declarations.
 
23
*/
 
24
#define MinBlobExtent  32768L
 
25
 
 
26
/*
 
27
  Enum declarations.
 
28
*/
 
29
typedef enum
 
30
{
 
31
  UndefinedBlobMode,
 
32
  ReadBlobMode,
 
33
  ReadBinaryBlobMode,
 
34
  WriteBlobMode,
 
35
  WriteBinaryBlobMode,
 
36
  IOBinaryBlobMode
 
37
} BlobMode;
 
38
 
 
39
typedef enum
 
40
{
 
41
  ReadMode,
 
42
  WriteMode,
 
43
  IOMode
 
44
} MapMode;
 
45
 
 
46
/*
 
47
  Typedef declarations.
 
48
*/
 
49
typedef struct _BlobInfo BlobInfo;
 
50
 
 
51
/*
 
52
  Blob methods.
 
53
*/
 
54
extern MagickExport BlobInfo
 
55
  *CloneBlobInfo(const BlobInfo *blob_info),
 
56
  *ReferenceBlob(BlobInfo *blob);
 
57
 
 
58
extern MagickExport char
 
59
  *ReadBlobString(Image *image,char *string);
 
60
 
 
61
extern MagickExport magick_off_t
 
62
  GetBlobSize(const Image *image),
 
63
  SeekBlob(Image *image,const magick_off_t offset,const int whence),
 
64
  TellBlob(const Image *image);
 
65
 
 
66
extern MagickExport Image
 
67
  *BlobToImage(const ImageInfo *image_info,const void *blob,
 
68
    const size_t length,ExceptionInfo *exception),
 
69
  *PingBlob(const ImageInfo *image_info,const void *blob,
 
70
    const size_t length,ExceptionInfo *exception);
 
71
 
 
72
extern MagickExport int
 
73
  EOFBlob(const Image *image),
 
74
  GetBlobStatus(const Image *image),
 
75
  ReadBlobByte(Image *image),
 
76
  SyncBlob(Image *image);
 
77
 
 
78
extern MagickExport size_t
 
79
  ReadBlob(Image *image,const size_t length,void *data),
 
80
  ReadBlobZC(Image *image,const size_t length,void **data),
 
81
  WriteBlob(Image *image,const size_t length,const void *data),
 
82
  WriteBlobByte(Image *image,const unsigned long value),
 
83
  WriteBlobLSBLong(Image *image,const unsigned long value),
 
84
  WriteBlobLSBShort(Image *image,const unsigned long value),
 
85
  WriteBlobMSBLong(Image *image,const unsigned long value),
 
86
  WriteBlobMSBShort(Image *image,const unsigned long value),
 
87
  WriteBlobString(Image *image,const char *string);
 
88
 
 
89
extern MagickExport FILE
 
90
  *GetBlobFileHandle(const Image *image);
 
91
 
 
92
extern MagickExport StreamHandler
 
93
  GetBlobStreamHandler(const Image *image);
 
94
 
 
95
#if 0
 
96
extern MagickExport StreamType
 
97
  GetBlobStreamType(const Image *image);
 
98
#endif
 
99
 
 
100
extern MagickExport unsigned char
 
101
  *GetBlobStreamData(const Image *image);
 
102
 
 
103
extern MagickExport unsigned int
 
104
  BlobToFile(const char *filename,const void *blob,const size_t length,
 
105
    ExceptionInfo *exception),
 
106
  BlobIsSeekable(const Image *image),
 
107
  ImageToFile(Image *image,const char *filename,ExceptionInfo *exception),
 
108
  GetBlobClosable(const Image *image),
 
109
  GetBlobTemporary(const Image *image),
 
110
  OpenBlob(const ImageInfo *image_info,Image *image,const BlobMode mode,
 
111
    ExceptionInfo *exception),
 
112
  UnmapBlob(void *map,const size_t length);
 
113
 
 
114
extern MagickExport unsigned long
 
115
  ReadBlobLSBLong(Image *image),
 
116
  ReadBlobMSBLong(Image *image);
 
117
 
 
118
extern MagickExport unsigned short
 
119
  ReadBlobLSBShort(Image *image),
 
120
  ReadBlobMSBShort(Image *image);
 
121
 
 
122
extern MagickExport void
 
123
  AttachBlob(BlobInfo *blob_info,const void *blob,const size_t length),
 
124
  SetBlobClosable(Image *image, unsigned int closable),
 
125
  SetBlobTemporary(Image *image, unsigned int isTemporary),
 
126
  CloseBlob(Image *image),
 
127
  DestroyBlob(Image *image),
 
128
  DestroyBlobInfo(BlobInfo *blob),
 
129
  DetachBlob(BlobInfo *blob),
 
130
  *FileToBlob(const char *filename,size_t *length,ExceptionInfo *exception),
 
131
  GetBlobInfo(BlobInfo *blob),
 
132
  *GetConfigureBlob(const char *filename,char *path,size_t *length,
 
133
    ExceptionInfo *exception),
 
134
  *ImageToBlob(const ImageInfo *image_info,Image *image,size_t *length,
 
135
    ExceptionInfo *exception),
 
136
  *MapBlob(int file,const MapMode mode,magick_off_t offset,size_t length),
 
137
  MSBOrderLong(unsigned char *buffer,const size_t length),
 
138
  MSBOrderShort(unsigned char *p,const size_t length);
 
139
 
 
140
#if defined(__cplusplus) || defined(c_plusplus)
 
141
}
 
142
#endif
 
143
 
 
144
#endif