1 /* 2 * Copyright 2010 University Corporation for Atmospheric 3 * Research/Unidata. See COPYRIGHT file for more info. 4 * 5 * This header file is for the parallel I/O functions of netCDF. 6 * 7 */ 8 /* "$Id: netcdf_par.h,v 1.1 2010/06/01 15:46:49 ed Exp $" */ 9 10 #ifndef NCCONFIGURE_H 11 #define NCCONFIGURE_H 1 12 13 /* 14 This is included in bottom 15 of config.h. It is where, 16 typically, alternatives to 17 missing functions should be 18 defined. 19 */ 20 21 #ifndef HAVE_STRDUP 22 extern char* strdup(const char*); 23 #endif 24 25 /* #if HAVE_BASETSD_H */ 26 /* #ifndef ssize_t */ 27 /* #ifndef SSIZE_T */ 28 /* #include <BaseTsd.h> */ 29 /* #endif */ 30 /* #define ssize_t SSIZE_T */ 31 /* #endif */ 32 /* #endif */ 33 34 35 36 /* handle null arguments */ 37 #ifndef nulldup 38 #ifdef HAVE_STRDUP 39 #define nulldup(s) ((s)==NULL?NULL:strdup(s)) 40 #else 41 char *nulldup(const char* s); 42 #endif 43 #endif 44 45 46 #ifndef nulldup 47 #define nulldup(s) ((s)==NULL?NULL:strdup(s)) 48 #endif 49 #ifndef nulllen 50 #define nulllen(s) ((s)==NULL?0:strlen(s)) 51 #endif 52 #ifndef nullfree 53 #define nullfree(s) {if((s)!=NULL) {free(s);} else {}} 54 #endif 55 56 #ifndef HAVE_UCHAR 57 typedef unsigned char uchar; 58 #endif 59 60 #ifndef HAVE_LONGLONG 61 typedef long long longlong; 62 typedef unsigned long long ulonglong; 63 #endif 64 65 #ifndef HAVE_USHORT 66 typedef unsigned short ushort; 67 #endif 68 69 #ifndef HAVE_UINT 70 typedef unsigned int uint; 71 #endif 72 73 #endif /* NCCONFIGURE_H */ 74