% December 1996 %
% %
% %
-% Copyright 1999-2010 ImageMagick Studio LLC, a non-profit organization %
+% Copyright 1999-2011 ImageMagick Studio LLC, a non-profit organization %
% dedicated to making software imaging solutions freely available. %
% %
% You may not use this file except in compliance with the License. You may %
Include declarations.
*/
#include "magick/studio.h"
-#if defined(__WINDOWS__)
+#if defined(MAGICKCORE_WINDOWS_SUPPORT)
#include "magick/client.h"
#include "magick/log.h"
#include "magick/magick.h"
/*
External declarations.
*/
-#if !defined(__WINDOWS__)
+#if !defined(MAGICKCORE_WINDOWS_SUPPORT)
extern "C" BOOL WINAPI
DllMain(HINSTANCE handle,DWORD reason,LPVOID lpvReserved);
#endif
return(0);
}
\f
+#if !defined(__MINGW32__)
+/*
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% %
+% %
+% %
+% g e t t i m e o f d a y %
+% %
+% %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% The gettimeofday() method get the time of day.
+%
+% The format of the gettimeofday method is:
+%
+% int gettimeofday(struct timeval *time_value,struct timezone *time_zone)
+%
+% A description of each parameter follows:
+%
+% o time_value: the time value.
+%
+% o time_zone: the time zone.
+%
+*/
+MagickExport int gettimeofday (struct timeval *time_value,
+ struct timezone *time_zone)
+{
+#define EpochFiletime MagickLLConstant(116444736000000000)
+
+ static int
+ is_tz_set;
+
+ if (time_value != (struct timeval *) NULL)
+ {
+ FILETIME
+ file_time;
+
+ __int64
+ time;
+
+ LARGE_INTEGER
+ date_time;
+
+ GetSystemTimeAsFileTime(&file_time);
+ date_time.LowPart=file_time.dwLowDateTime;
+ date_time.HighPart=file_time.dwHighDateTime;
+ time=date_time.QuadPart;
+ time-=EpochFiletime;
+ time/=10;
+ time_value->tv_sec=(ssize_t) (time / 1000000);
+ time_value->tv_usec=(ssize_t) (time % 1000000);
+ }
+ if (time_zone != (struct timezone *) NULL)
+ {
+ if (is_tz_set == 0)
+ {
+ _tzset();
+ is_tz_set++;
+ }
+ time_zone->tz_minuteswest=_timezone/60;
+ time_zone->tz_dsttime=_daylight;
+ }
+ return(0);
+}
+#endif
+\f
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
HMODULE
handle;
- long
+ ssize_t
length;
*path='\0';
*product_family=NULL;
*major_version=5;
*minor_version=49; /* min version of Ghostscript is 5.50 */
- for (i=0; i < (long) (sizeof(products)/sizeof(products[0])); i++)
+ for (i=0; i < (ssize_t) (sizeof(products)/sizeof(products[0])); i++)
{
char
key[MaxTextExtent];
}
if (status == FALSE)
{
- i=0;
*major_version=0;
*minor_version=0;
}
return(FALSE);
(void) FormatMagickString(key,MaxTextExtent,"SOFTWARE\\%s\\%d.%02d",
product_family,major_version,minor_version);
- for (i=0; i < (long) (sizeof(hkeys)/sizeof(hkeys[0])); i++)
+ for (i=0; i < (ssize_t) (sizeof(hkeys)/sizeof(hkeys[0])); i++)
{
extent=(int) length;
if (NTGetRegistryValue(hkeys[i].hkey,key,name,value,&extent) == 0)
%
% The format of the NTSeekDirectory method is:
%
-% void NTSeekDirectory(DIR *entry,long position)
+% void NTSeekDirectory(DIR *entry,ssize_t position)
%
% A description of each parameter follows:
%
% stream.
%
*/
-MagickExport void NTSeekDirectory(DIR *entry,long position)
+MagickExport void NTSeekDirectory(DIR *entry,ssize_t position)
{
(void) position;
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"...");
%
% The format of the NTSystemCommand method is:
%
-% int NTSystemCommand(const char *command)
+% int NTSystemCommand(MagickFalse,const char *command)
%
% A description of each parameter follows:
%
%
% The format of the exit method is:
%
-% long NTSystemConfiguration(int name)
+% ssize_t NTSystemConfiguration(int name)
%
% A description of each parameter follows:
%
% o name: _SC_PAGE_SIZE or _SC_PHYS_PAGES.
%
*/
-MagickExport long NTSystemConfiguration(int name)
+MagickExport ssize_t NTSystemConfiguration(int name)
{
switch (name)
{
status;
GlobalMemoryStatus(&status);
- return((long) status.dwTotalPhys/system_info.dwPageSize);
+ return((ssize_t) status.dwTotalPhys/system_info.dwPageSize);
}
status.dwLength=sizeof(status);
if (module(&status) == 0)
return(0L);
- return((long) status.ullTotalPhys/system_info.dwPageSize);
+ return((ssize_t) status.ullTotalPhys/system_info.dwPageSize);
}
case _SC_OPEN_MAX:
return(2048);
%
% The format of the NTTellDirectory method is:
%
-% long NTTellDirectory(DIR *entry)
+% ssize_t NTTellDirectory(DIR *entry)
%
% A description of each parameter follows:
%
% o entry: Specifies a pointer to a DIR structure.
%
*/
-MagickExport long NTTellDirectory(DIR *entry)
+MagickExport ssize_t NTTellDirectory(DIR *entry)
{
assert(entry != (DIR *) NULL);
return(0);