blob-private.h

Go to the documentation of this file.
00001 /*
00002   Copyright 1999-2008 ImageMagick Studio LLC, a non-profit organization
00003   dedicated to making software imaging solutions freely available.
00004 
00005   You may not use this file except in compliance with the License.
00006   obtain a copy of the License at
00007 
00008     http://www.wizards-toolkit.org/script/license.php
00009 
00010   Unless required by applicable law or agreed to in writing, software
00011   distributed under the License is distributed on an "AS IS" BASIS,
00012   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013   See the License for the specific language governing permissions and
00014   limitations under the License.
00015 
00016   Wizard's Toolkit Binary Large OBjects Methods.
00017 */
00018 #ifndef _WIZARDSTOOLKIT_BLOB_PRIVATE_H
00019 #define _WIZARDSTOOLKIT_BLOB_PRIVATE_H
00020 
00021 #if defined(__cplusplus) || defined(c_plusplus)
00022 extern "C" {
00023 #endif
00024 
00025 typedef enum
00026 {
00027   UndefinedBlobMode,
00028   ReadBlobMode,
00029   ReadBinaryBlobMode,
00030   WriteBlobMode,
00031   WriteBinaryBlobMode
00032 } BlobMode;
00033 
00034 typedef struct _BlobInfo
00035   BlobInfo;
00036 
00037 extern WizardExport BlobInfo
00038   *DestroyBlob(BlobInfo *),
00039   *OpenBlob(const char *,const BlobMode,ExceptionInfo *);
00040 
00041 extern WizardExport const char
00042   *GetBlobFilename(const BlobInfo *);
00043 
00044 extern WizardExport const struct stat
00045   *GetBlobProperties(const BlobInfo *);
00046 
00047 extern WizardExport int
00048   EOFBlob(BlobInfo *),
00049   ReadBlobByte(BlobInfo *),
00050   SyncBlob(BlobInfo *);
00051 
00052 extern WizardExport ssize_t
00053   ReadBlob(BlobInfo *,const size_t,unsigned char *),
00054   ReadBlobChunk(BlobInfo *,const size_t,unsigned char *),
00055   WriteBlob(BlobInfo *,const size_t,const unsigned char *),
00056   WriteBlobByte(BlobInfo *,const unsigned char),
00057   WriteBlobChunk(BlobInfo *,const size_t,const unsigned char *),
00058   WriteBlobString(BlobInfo *,const char *);
00059 
00060 extern WizardExport WizardBooleanType
00061   CloseBlob(BlobInfo *);
00062 
00063 extern WizardExport WizardOffsetType
00064   TellBlob(const BlobInfo *);
00065 
00066 extern WizardExport WizardSizeType
00067   GetBlobSize(const BlobInfo *);
00068 
00069 #if defined(__cplusplus) || defined(c_plusplus)
00070 }
00071 #endif
00072 
00073 #endif

Generated on Sat Jan 26 14:50:32 2008 for WizardsToolkit by  doxygen 1.5.4