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 "MagickCore/delegate.h"
00022 #include "MagickCore/delegate-private.h"
00023 #include "MagickCore/exception.h"
00024 #include "MagickCore/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 timeval;
00059 
00060 struct timezone
00061 {
00062   int
00063     tz_minuteswest,
00064     tz_dsttime;
00065 };
00066 #endif
00067 
00068 #endif
00069 
00070 #if defined(MAGICKCORE_BZLIB_DELEGATE)
00071 #  if defined(_WIN32)
00072 #    define BZ_IMPORT 1
00073 #  endif
00074 #endif
00075 
00076 extern MagickPrivate char
00077   *NTGetLastError(void);
00078 
00079 #if !defined(MAGICKCORE_LTDL_DELEGATE)
00080 extern MagickPrivate const char
00081   *NTGetLibraryError(void);
00082 #endif
00083 
00084 #if !defined(XS_VERSION)
00085 extern MagickPrivate const char
00086   *NTGetLibraryError(void);
00087 
00088 extern MagickPrivate DIR
00089   *NTOpenDirectory(const char *);
00090 
00091 extern MagickPrivate double
00092   NTElapsedTime(void),
00093   NTErf(double),
00094   NTUserTime(void);
00095 
00096 extern MagickPrivate int
00097   Exit(int),
00098 #if !defined(__MINGW32__)
00099   gettimeofday(struct timeval *,struct timezone *),
00100 #endif
00101   IsWindows95(void),
00102   NTCloseDirectory(DIR *),
00103   NTCloseLibrary(void *),
00104   NTControlHandler(void),
00105   NTExitLibrary(void),
00106   NTTruncateFile(int,off_t),
00107   NTGhostscriptDLL(char *,int),
00108   NTGhostscriptEXE(char *,int),
00109   NTGhostscriptFonts(char *,int),
00110   NTGhostscriptLoadDLL(void),
00111   NTInitializeLibrary(void),
00112   NTSetSearchPath(const char *),
00113   NTUnmapMemory(void *,size_t),
00114   NTSystemCommand(const char *,char *);
00115 
00116 extern MagickPrivate ssize_t
00117   NTSystemConfiguration(int);
00118 
00119 extern MagickPrivate MagickBooleanType
00120   NTGatherRandomData(const size_t,unsigned char *),
00121   NTGetExecutionPath(char *,const size_t),
00122   NTGetModulePath(const char *,char *),
00123   NTReportEvent(const char *,const MagickBooleanType);
00124 
00125 extern MagickExport MagickBooleanType
00126   NTLongPathsEnabled();
00127 
00128 extern MagickPrivate struct dirent
00129   *NTReadDirectory(DIR *);
00130 
00131 extern MagickPrivate unsigned char
00132   *NTRegistryKeyLookup(const char *),
00133   *NTResourceToBlob(const char *);
00134 
00135 extern MagickPrivate void
00136   *NTGetLibrarySymbol(void *,const char *),
00137   NTInitializeWinsock(MagickBooleanType),
00138   *NTMapMemory(char *,size_t,int,int,int,MagickOffsetType),
00139   *NTOpenLibrary(const char *),
00140   NTWindowsGenesis(void),
00141   NTWindowsTerminus(void);
00142 
00143 #endif /* !XS_VERSION */
00144 
00145 #endif /* MAGICKCORE_WINDOWS_SUPPORT */
00146 
00147 #if defined(__cplusplus) || defined(c_plusplus)
00148 }
00149 #endif /* !C++ */
00150 
00151 #endif /* !MAGICKCORE_NT_BASE_H */

Generated on 24 Feb 2020 for MagickCore by  doxygen 1.6.1