nt-base-private.h

Go to the documentation of this file.
00001 /*
00002   Copyright 1999-2020 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.  You may
00006   obtain a copy of the License at
00007 
00008     https://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 Windows NT private methods.
00017 */
00018 #ifndef MAGICKCORE_NT_BASE_PRIVATE_H
00019 #define MAGICKCORE_NT_BASE_PRIVATE_H
00020 
00021 #include "magick/delegate.h"
00022 #include "magick/delegate-private.h"
00023 #include "magick/exception.h"
00024 #include "magick/splay-tree.h"
00025 
00026 #if defined(__cplusplus) || defined(c_plusplus)
00027 extern "C" {
00028 #endif
00029 
00030 #if defined(MAGICKCORE_WINDOWS_SUPPORT)
00031 
00032 #if !defined(XS_VERSION)
00033 struct dirent
00034 {
00035   char
00036     d_name[2048];
00037 
00038   int
00039     d_namlen;
00040 };
00041 
00042 typedef struct _DIR
00043 {
00044   HANDLE
00045     hSearch;
00046 
00047   WIN32_FIND_DATAW
00048     Win32FindData;
00049 
00050   BOOL
00051     firsttime;
00052 
00053   struct dirent
00054     file_info;
00055 } DIR;
00056 
00057 #if !defined(__MINGW32__)
00058 struct timezone
00059 {
00060   int
00061     tz_minuteswest,
00062     tz_dsttime;
00063 };
00064 #endif
00065 
00066 #endif
00067 
00068 #if defined(MAGICKCORE_BZLIB_DELEGATE)
00069 #  if defined(_WIN32)
00070 #    define BZ_IMPORT 1
00071 #  endif
00072 #endif
00073 
00074 extern MagickPrivate char
00075   *NTGetLastError(void);
00076 
00077 #if !defined(MAGICKCORE_LTDL_DELEGATE)
00078 extern MagickPrivate const char
00079   *NTGetLibraryError(void);
00080 #endif
00081 
00082 #if !defined(XS_VERSION)
00083 extern MagickPrivate const char
00084   *NTGetLibraryError(void);
00085 
00086 extern MagickPrivate DIR
00087   *NTOpenDirectory(const char *);
00088 
00089 extern MagickPrivate double
00090   NTElapsedTime(void),
00091   NTUserTime(void);
00092 
00093 extern MagickPrivate int
00094   Exit(int),
00095 #if !defined(__MINGW32__)
00096   gettimeofday(struct timeval *,struct timezone *),
00097 #endif
00098   IsWindows95(void),
00099   NTCloseDirectory(DIR *),
00100   NTCloseLibrary(void *),
00101   NTControlHandler(void),
00102   NTExitLibrary(void),
00103   NTTruncateFile(int,off_t),
00104   NTGhostscriptDLL(char *,int),
00105   NTGhostscriptEXE(char *,int),
00106   NTGhostscriptFonts(char *,int),
00107   NTGhostscriptLoadDLL(void),
00108   NTInitializeLibrary(void),
00109   NTSetSearchPath(const char *),
00110   NTUnmapMemory(void *,size_t),
00111   NTSystemCommand(const char *,char *);
00112 
00113 extern MagickPrivate ssize_t
00114   NTSystemConfiguration(int);
00115 
00116 extern MagickPrivate MagickBooleanType
00117   NTGatherRandomData(const size_t,unsigned char *),
00118   NTGetExecutionPath(char *,const size_t),
00119   NTGetModulePath(const char *,char *),
00120   NTReportEvent(const char *,const MagickBooleanType);
00121 
00122 extern MagickExport MagickBooleanType
00123   NTLongPathsEnabled();
00124 
00125 extern MagickPrivate struct dirent
00126   *NTReadDirectory(DIR *);
00127 
00128 extern MagickPrivate unsigned char
00129   *NTRegistryKeyLookup(const char *),
00130   *NTResourceToBlob(const char *);
00131 
00132 extern MagickPrivate void
00133   *NTGetLibrarySymbol(void *,const char *),
00134   NTInitializeWinsock(MagickBooleanType),
00135   *NTMapMemory(char *,size_t,int,int,int,MagickOffsetType),
00136   *NTOpenLibrary(const char *),
00137   NTWindowsGenesis(void),
00138   NTWindowsTerminus(void);
00139 
00140 #endif /* !XS_VERSION */
00141 
00142 #endif /* MAGICKCORE_WINDOWS_SUPPORT */
00143 
00144 #if defined(__cplusplus) || defined(c_plusplus)
00145 }
00146 #endif /* !C++ */
00147 
00148 #endif /* !MAGICKCORE_NT_BASE_H */

Generated on 29 Jun 2020 for MagickCore by  doxygen 1.6.1