30 #ifndef OGR_P_H_INCLUDED
31 #define OGR_P_H_INCLUDED
46 # define OGR_SWAP(x) (x == wkbNDR)
48 # define OGR_SWAP(x) (x == wkbXDR)
55 #ifdef _OGR_GEOMETRY_H_INCLUDED
56 #define OGR_WKT_TOKEN_MAX 64
58 const char CPL_DLL * OGRWktReadToken(
const char * pszInput,
char * pszToken );
60 const char CPL_DLL * OGRWktReadPoints(
const char * pszInput,
66 void CPL_DLL OGRMakeWktCoordinate(
char *,
double,
double,
double,
int );
70 void OGRFormatDouble(
char *pszBuffer,
int nBufferLen,
double dfVal,
char chDecimalSep,
int nPrecision = 15 );
78 int CPL_DLL OGRGetDayOfWeek(
int day,
int month,
int year);
79 int CPL_DLL OGRParseXMLDateTime(
const char* pszXMLDateTime,
80 int *pnYear,
int *pnMonth,
int *pnDay,
81 int *pnHour,
int *pnMinute,
float* pfSecond,
int *pnTZ);
82 int CPL_DLL OGRParseRFC822DateTime(
const char* pszRFC822DateTime,
83 int *pnYear,
int *pnMonth,
int *pnDay,
84 int *pnHour,
int *pnMinute,
int *pnSecond,
int *pnTZ);
85 char CPL_DLL * OGRGetRFC822DateTime(
int year,
int month,
int day,
86 int hour,
int minute,
int second,
int TZ);
87 char CPL_DLL * OGRGetXMLDateTime(
int year,
int month,
int day,
88 int hour,
int minute,
int second,
int TZFlag);
89 char CPL_DLL * OGRGetXML_UTF8_EscapedString(
const char* pszString);
91 int OGRCompareDate(
OGRField *psFirstTuple,
95 int CPL_DLL OGRGeneralCmdLineProcessor(
int nArgc,
char ***ppapszArgv,
int nOptions );
101 #define SPF_OGR_GEOMETRY 1
102 #define SPF_OGR_STYLE 2
103 #define SPF_OGR_GEOM_WKT 3
104 #define SPF_OGR_GEOM_AREA 4
105 #define SPECIAL_FIELD_COUNT 5
107 extern const char* SpecialFieldNames[SPECIAL_FIELD_COUNT];
109 #ifdef _SWQ_H_INCLUDED_
110 extern const swq_field_type SpecialFieldTypes[SPECIAL_FIELD_COUNT];
117 OGRErr CPL_DLL OSRGetEllipsoidInfo(
int,
char **,
double *,
double *);
120 double OGRFastAtof(
const char* pszStr);
122 OGRErr CPL_DLL OGRCheckPermutation(
int* panPermutation,
int nSize);
127 int bGetSecondaryGeometryOption,
129 int bIgnoreGSG = FALSE,
130 int bOrientation = TRUE,
131 int bFaceHoleNegative = FALSE );