blob-private.h

Go to the documentation of this file.
00001 /*
00002   Copyright 1999-2010 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 #include <wizard/blob.h>
00026 
00027 typedef enum
00028 {
00029   UndefinedBlobMode,
00030   ReadBlobMode,
00031   ReadBinaryBlobMode,
00032   WriteBlobMode,
00033   WriteBinaryBlobMode
00034 } BlobMode;
00035 
00036 extern WizardExport BlobInfo
00037   *DestroyBlob(BlobInfo *),
00038   *OpenBlob(const char *,const BlobMode,const WizardBooleanType,
00039     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   SetBlobExtent(BlobInfo *,const WizardSizeType);
00063 
00064 extern WizardExport WizardOffsetType
00065   TellBlob(const BlobInfo *);
00066 
00067 extern WizardExport WizardSizeType
00068   GetBlobSize(BlobInfo *);
00069 
00070 #if defined(__cplusplus) || defined(c_plusplus)
00071 }
00072 #endif
00073 
00074 #endif
Generated by  doxygen 1.6.2-20100208