|
MagickCore
6.7.5
|
00001 /* 00002 Copyright 1999-2012 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.imagemagick.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 MagickCore string methods. 00017 */ 00018 #ifndef _MAGICKCORE_STRING_H_ 00019 #define _MAGICKCORE_STRING_H_ 00020 00021 #if defined(__cplusplus) || defined(c_plusplus) 00022 extern "C" { 00023 #endif 00024 00025 #include <stdarg.h> 00026 #include <time.h> 00027 #include "MagickCore/exception.h" 00028 00029 typedef struct _StringInfo 00030 { 00031 char 00032 path[MaxTextExtent]; 00033 00034 unsigned char 00035 *datum; 00036 00037 size_t 00038 length, 00039 signature; 00040 } StringInfo; 00041 00042 extern MagickExport char 00043 *AcquireString(const char *), 00044 *CloneString(char **,const char *), 00045 *ConstantString(const char *), 00046 *DestroyString(char *), 00047 **DestroyStringList(char **), 00048 *EscapeString(const char *,const char), 00049 *FileToString(const char *,const size_t,ExceptionInfo *), 00050 *GetEnvironmentValue(const char *), 00051 *StringInfoToHexString(const StringInfo *), 00052 *StringInfoToString(const StringInfo *), 00053 **StringToArgv(const char *,int *), 00054 *StringToken(const char *,char **), 00055 **StringToList(const char *); 00056 00057 extern MagickExport const char 00058 *GetStringInfoPath(const StringInfo *); 00059 00060 extern MagickExport double 00061 InterpretSiPrefixValue(const char *restrict,char **restrict); 00062 00063 extern MagickExport int 00064 CompareStringInfo(const StringInfo *,const StringInfo *), 00065 LocaleCompare(const char *,const char *), 00066 LocaleNCompare(const char *,const char *,const size_t); 00067 00068 extern MagickExport MagickBooleanType 00069 ConcatenateString(char **,const char *), 00070 SubstituteString(char **,const char *,const char *); 00071 00072 extern MagickExport size_t 00073 ConcatenateMagickString(char *,const char *,const size_t) 00074 magick_attribute((nonnull)), 00075 CopyMagickString(char *,const char *,const size_t) 00076 magick_attribute((nonnull)), 00077 GetStringInfoLength(const StringInfo *); 00078 00079 extern MagickExport ssize_t 00080 FormatMagickSize(const MagickSizeType,const MagickBooleanType,char *), 00081 FormatMagickTime(const time_t,const size_t,char *); 00082 00083 extern MagickExport StringInfo 00084 *AcquireStringInfo(const size_t), 00085 *BlobToStringInfo(const void *,const size_t), 00086 *CloneStringInfo(const StringInfo *), 00087 *ConfigureFileToStringInfo(const char *), 00088 *DestroyStringInfo(StringInfo *), 00089 *FileToStringInfo(const char *,const size_t,ExceptionInfo *), 00090 *SplitStringInfo(StringInfo *,const size_t), 00091 *StringToStringInfo(const char *); 00092 00093 extern MagickExport unsigned char 00094 *GetStringInfoDatum(const StringInfo *); 00095 00096 extern MagickExport void 00097 ConcatenateStringInfo(StringInfo *,const StringInfo *) 00098 magick_attribute((nonnull)), 00099 LocaleLower(char *), 00100 LocaleUpper(char *), 00101 PrintStringInfo(FILE *file,const char *,const StringInfo *), 00102 ResetStringInfo(StringInfo *), 00103 SetStringInfo(StringInfo *,const StringInfo *), 00104 SetStringInfoDatum(StringInfo *,const unsigned char *), 00105 SetStringInfoLength(StringInfo *,const size_t), 00106 SetStringInfoPath(StringInfo *,const char *), 00107 StripString(char *); 00108 00109 #if defined(__cplusplus) || defined(c_plusplus) 00110 } 00111 #endif 00112 00113 #endif