1 /* ----------------------------------------------------------------------------
2  * This file was automatically generated by SWIG (http://www.swig.org).
3  * Version 3.0.12
4  *
5  * This file is not intended to be easily readable and contains a number of
6  * coding conventions designed to improve portability and efficiency. Do not make
7  * changes to this file unless you know what you are doing--modify the SWIG
8  * interface file instead.
9  * ----------------------------------------------------------------------------- */
10 
11 
12 #ifndef SWIGPERL
13 #define SWIGPERL
14 #endif
15 
16 #define SWIG_CASTRANK_MODE
17 
18 
19 #ifdef __cplusplus
20 /* SwigValueWrapper is described in swig.swg */
21 template<typename T> class SwigValueWrapper {
22   struct SwigMovePointer {
23     T *ptr;
SwigMovePointerSwigValueWrapper::SwigMovePointer24     SwigMovePointer(T *p) : ptr(p) { }
~SwigMovePointerSwigValueWrapper::SwigMovePointer25     ~SwigMovePointer() { delete ptr; }
operator =SwigValueWrapper::SwigMovePointer26     SwigMovePointer& operator=(SwigMovePointer& rhs) { T* oldptr = ptr; ptr = 0; delete oldptr; ptr = rhs.ptr; rhs.ptr = 0; return *this; }
27   } pointer;
28   SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
29   SwigValueWrapper(const SwigValueWrapper<T>& rhs);
30 public:
SwigValueWrapper()31   SwigValueWrapper() : pointer(0) { }
operator =(const T & t)32   SwigValueWrapper& operator=(const T& t) { SwigMovePointer tmp(new T(t)); pointer = tmp; return *this; }
operator T&() const33   operator T&() const { return *pointer.ptr; }
operator &()34   T *operator&() { return pointer.ptr; }
35 };
36 
SwigValueInit()37 template <typename T> T SwigValueInit() {
38   return T();
39 }
40 #endif
41 
42 /* -----------------------------------------------------------------------------
43  *  This section contains generic SWIG labels for method/variable
44  *  declarations/attributes, and other compiler dependent labels.
45  * ----------------------------------------------------------------------------- */
46 
47 /* template workaround for compilers that cannot correctly implement the C++ standard */
48 #ifndef SWIGTEMPLATEDISAMBIGUATOR
49 # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
50 #  define SWIGTEMPLATEDISAMBIGUATOR template
51 # elif defined(__HP_aCC)
52 /* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
53 /* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
54 #  define SWIGTEMPLATEDISAMBIGUATOR template
55 # else
56 #  define SWIGTEMPLATEDISAMBIGUATOR
57 # endif
58 #endif
59 
60 /* inline attribute */
61 #ifndef SWIGINLINE
62 # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
63 #   define SWIGINLINE inline
64 # else
65 #   define SWIGINLINE
66 # endif
67 #endif
68 
69 /* attribute recognised by some compilers to avoid 'unused' warnings */
70 #ifndef SWIGUNUSED
71 # if defined(__GNUC__)
72 #   if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
73 #     define SWIGUNUSED __attribute__ ((__unused__))
74 #   else
75 #     define SWIGUNUSED
76 #   endif
77 # elif defined(__ICC)
78 #   define SWIGUNUSED __attribute__ ((__unused__))
79 # else
80 #   define SWIGUNUSED
81 # endif
82 #endif
83 
84 #ifndef SWIG_MSC_UNSUPPRESS_4505
85 # if defined(_MSC_VER)
86 #   pragma warning(disable : 4505) /* unreferenced local function has been removed */
87 # endif
88 #endif
89 
90 #ifndef SWIGUNUSEDPARM
91 # ifdef __cplusplus
92 #   define SWIGUNUSEDPARM(p)
93 # else
94 #   define SWIGUNUSEDPARM(p) p SWIGUNUSED
95 # endif
96 #endif
97 
98 /* internal SWIG method */
99 #ifndef SWIGINTERN
100 # define SWIGINTERN static SWIGUNUSED
101 #endif
102 
103 /* internal inline SWIG method */
104 #ifndef SWIGINTERNINLINE
105 # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
106 #endif
107 
108 /* exporting methods */
109 #if defined(__GNUC__)
110 #  if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
111 #    ifndef GCC_HASCLASSVISIBILITY
112 #      define GCC_HASCLASSVISIBILITY
113 #    endif
114 #  endif
115 #endif
116 
117 #ifndef SWIGEXPORT
118 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
119 #   if defined(STATIC_LINKED)
120 #     define SWIGEXPORT
121 #   else
122 #     define SWIGEXPORT __declspec(dllexport)
123 #   endif
124 # else
125 #   if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
126 #     define SWIGEXPORT __attribute__ ((visibility("default")))
127 #   else
128 #     define SWIGEXPORT
129 #   endif
130 # endif
131 #endif
132 
133 /* calling conventions for Windows */
134 #ifndef SWIGSTDCALL
135 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
136 #   define SWIGSTDCALL __stdcall
137 # else
138 #   define SWIGSTDCALL
139 # endif
140 #endif
141 
142 /* Deal with Microsoft's attempt at deprecating C standard runtime functions */
143 #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
144 # define _CRT_SECURE_NO_DEPRECATE
145 #endif
146 
147 /* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
148 #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
149 # define _SCL_SECURE_NO_DEPRECATE
150 #endif
151 
152 /* Deal with Apple's deprecated 'AssertMacros.h' from Carbon-framework */
153 #if defined(__APPLE__) && !defined(__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES)
154 # define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 0
155 #endif
156 
157 /* Intel's compiler complains if a variable which was never initialised is
158  * cast to void, which is a common idiom which we use to indicate that we
159  * are aware a variable isn't used.  So we just silence that warning.
160  * See: https://github.com/swig/swig/issues/192 for more discussion.
161  */
162 #ifdef __INTEL_COMPILER
163 # pragma warning disable 592
164 #endif
165 
166 /* -----------------------------------------------------------------------------
167  * swigrun.swg
168  *
169  * This file contains generic C API SWIG runtime support for pointer
170  * type checking.
171  * ----------------------------------------------------------------------------- */
172 
173 /* This should only be incremented when either the layout of swig_type_info changes,
174    or for whatever reason, the runtime changes incompatibly */
175 #define SWIG_RUNTIME_VERSION "4"
176 
177 /* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
178 #ifdef SWIG_TYPE_TABLE
179 # define SWIG_QUOTE_STRING(x) #x
180 # define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
181 # define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
182 #else
183 # define SWIG_TYPE_TABLE_NAME
184 #endif
185 
186 /*
187   You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for
188   creating a static or dynamic library from the SWIG runtime code.
189   In 99.9% of the cases, SWIG just needs to declare them as 'static'.
190 
191   But only do this if strictly necessary, ie, if you have problems
192   with your compiler or suchlike.
193 */
194 
195 #ifndef SWIGRUNTIME
196 # define SWIGRUNTIME SWIGINTERN
197 #endif
198 
199 #ifndef SWIGRUNTIMEINLINE
200 # define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
201 #endif
202 
203 /*  Generic buffer size */
204 #ifndef SWIG_BUFFER_SIZE
205 # define SWIG_BUFFER_SIZE 1024
206 #endif
207 
208 /* Flags for pointer conversions */
209 #define SWIG_POINTER_DISOWN        0x1
210 #define SWIG_CAST_NEW_MEMORY       0x2
211 
212 /* Flags for new pointer objects */
213 #define SWIG_POINTER_OWN           0x1
214 
215 
216 /*
217    Flags/methods for returning states.
218 
219    The SWIG conversion methods, as ConvertPtr, return an integer
220    that tells if the conversion was successful or not. And if not,
221    an error code can be returned (see swigerrors.swg for the codes).
222 
223    Use the following macros/flags to set or process the returning
224    states.
225 
226    In old versions of SWIG, code such as the following was usually written:
227 
228      if (SWIG_ConvertPtr(obj,vptr,ty.flags) != -1) {
229        // success code
230      } else {
231        //fail code
232      }
233 
234    Now you can be more explicit:
235 
236     int res = SWIG_ConvertPtr(obj,vptr,ty.flags);
237     if (SWIG_IsOK(res)) {
238       // success code
239     } else {
240       // fail code
241     }
242 
243    which is the same really, but now you can also do
244 
245     Type *ptr;
246     int res = SWIG_ConvertPtr(obj,(void **)(&ptr),ty.flags);
247     if (SWIG_IsOK(res)) {
248       // success code
249       if (SWIG_IsNewObj(res) {
250         ...
251 	delete *ptr;
252       } else {
253         ...
254       }
255     } else {
256       // fail code
257     }
258 
259    I.e., now SWIG_ConvertPtr can return new objects and you can
260    identify the case and take care of the deallocation. Of course that
261    also requires SWIG_ConvertPtr to return new result values, such as
262 
263       int SWIG_ConvertPtr(obj, ptr,...) {
264         if (<obj is ok>) {
265           if (<need new object>) {
266             *ptr = <ptr to new allocated object>;
267             return SWIG_NEWOBJ;
268           } else {
269             *ptr = <ptr to old object>;
270             return SWIG_OLDOBJ;
271           }
272         } else {
273           return SWIG_BADOBJ;
274         }
275       }
276 
277    Of course, returning the plain '0(success)/-1(fail)' still works, but you can be
278    more explicit by returning SWIG_BADOBJ, SWIG_ERROR or any of the
279    SWIG errors code.
280 
281    Finally, if the SWIG_CASTRANK_MODE is enabled, the result code
282    allows to return the 'cast rank', for example, if you have this
283 
284        int food(double)
285        int fooi(int);
286 
287    and you call
288 
289       food(1)   // cast rank '1'  (1 -> 1.0)
290       fooi(1)   // cast rank '0'
291 
292    just use the SWIG_AddCast()/SWIG_CheckState()
293 */
294 
295 #define SWIG_OK                    (0)
296 #define SWIG_ERROR                 (-1)
297 #define SWIG_IsOK(r)               (r >= 0)
298 #define SWIG_ArgError(r)           ((r != SWIG_ERROR) ? r : SWIG_TypeError)
299 
300 /* The CastRankLimit says how many bits are used for the cast rank */
301 #define SWIG_CASTRANKLIMIT         (1 << 8)
302 /* The NewMask denotes the object was created (using new/malloc) */
303 #define SWIG_NEWOBJMASK            (SWIG_CASTRANKLIMIT  << 1)
304 /* The TmpMask is for in/out typemaps that use temporal objects */
305 #define SWIG_TMPOBJMASK            (SWIG_NEWOBJMASK << 1)
306 /* Simple returning values */
307 #define SWIG_BADOBJ                (SWIG_ERROR)
308 #define SWIG_OLDOBJ                (SWIG_OK)
309 #define SWIG_NEWOBJ                (SWIG_OK | SWIG_NEWOBJMASK)
310 #define SWIG_TMPOBJ                (SWIG_OK | SWIG_TMPOBJMASK)
311 /* Check, add and del mask methods */
312 #define SWIG_AddNewMask(r)         (SWIG_IsOK(r) ? (r | SWIG_NEWOBJMASK) : r)
313 #define SWIG_DelNewMask(r)         (SWIG_IsOK(r) ? (r & ~SWIG_NEWOBJMASK) : r)
314 #define SWIG_IsNewObj(r)           (SWIG_IsOK(r) && (r & SWIG_NEWOBJMASK))
315 #define SWIG_AddTmpMask(r)         (SWIG_IsOK(r) ? (r | SWIG_TMPOBJMASK) : r)
316 #define SWIG_DelTmpMask(r)         (SWIG_IsOK(r) ? (r & ~SWIG_TMPOBJMASK) : r)
317 #define SWIG_IsTmpObj(r)           (SWIG_IsOK(r) && (r & SWIG_TMPOBJMASK))
318 
319 /* Cast-Rank Mode */
320 #if defined(SWIG_CASTRANK_MODE)
321 #  ifndef SWIG_TypeRank
322 #    define SWIG_TypeRank             unsigned long
323 #  endif
324 #  ifndef SWIG_MAXCASTRANK            /* Default cast allowed */
325 #    define SWIG_MAXCASTRANK          (2)
326 #  endif
327 #  define SWIG_CASTRANKMASK          ((SWIG_CASTRANKLIMIT) -1)
328 #  define SWIG_CastRank(r)           (r & SWIG_CASTRANKMASK)
SWIG_AddCast(int r)329 SWIGINTERNINLINE int SWIG_AddCast(int r) {
330   return SWIG_IsOK(r) ? ((SWIG_CastRank(r) < SWIG_MAXCASTRANK) ? (r + 1) : SWIG_ERROR) : r;
331 }
SWIG_CheckState(int r)332 SWIGINTERNINLINE int SWIG_CheckState(int r) {
333   return SWIG_IsOK(r) ? SWIG_CastRank(r) + 1 : 0;
334 }
335 #else /* no cast-rank mode */
336 #  define SWIG_AddCast(r) (r)
337 #  define SWIG_CheckState(r) (SWIG_IsOK(r) ? 1 : 0)
338 #endif
339 
340 
341 #include <string.h>
342 
343 #ifdef __cplusplus
344 extern "C" {
345 #endif
346 
347 typedef void *(*swig_converter_func)(void *, int *);
348 typedef struct swig_type_info *(*swig_dycast_func)(void **);
349 
350 /* Structure to store information on one type */
351 typedef struct swig_type_info {
352   const char             *name;			/* mangled name of this type */
353   const char             *str;			/* human readable name of this type */
354   swig_dycast_func        dcast;		/* dynamic cast function down a hierarchy */
355   struct swig_cast_info  *cast;			/* linked list of types that can cast into this type */
356   void                   *clientdata;		/* language specific type data */
357   int                    owndata;		/* flag if the structure owns the clientdata */
358 } swig_type_info;
359 
360 /* Structure to store a type and conversion function used for casting */
361 typedef struct swig_cast_info {
362   swig_type_info         *type;			/* pointer to type that is equivalent to this type */
363   swig_converter_func     converter;		/* function to cast the void pointers */
364   struct swig_cast_info  *next;			/* pointer to next cast in linked list */
365   struct swig_cast_info  *prev;			/* pointer to the previous cast */
366 } swig_cast_info;
367 
368 /* Structure used to store module information
369  * Each module generates one structure like this, and the runtime collects
370  * all of these structures and stores them in a circularly linked list.*/
371 typedef struct swig_module_info {
372   swig_type_info         **types;		/* Array of pointers to swig_type_info structures that are in this module */
373   size_t                 size;		        /* Number of types in this module */
374   struct swig_module_info *next;		/* Pointer to next element in circularly linked list */
375   swig_type_info         **type_initial;	/* Array of initially generated type structures */
376   swig_cast_info         **cast_initial;	/* Array of initially generated casting structures */
377   void                    *clientdata;		/* Language specific module data */
378 } swig_module_info;
379 
380 /*
381   Compare two type names skipping the space characters, therefore
382   "char*" == "char *" and "Class<int>" == "Class<int >", etc.
383 
384   Return 0 when the two name types are equivalent, as in
385   strncmp, but skipping ' '.
386 */
387 SWIGRUNTIME int
SWIG_TypeNameComp(const char * f1,const char * l1,const char * f2,const char * l2)388 SWIG_TypeNameComp(const char *f1, const char *l1,
389 		  const char *f2, const char *l2) {
390   for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
391     while ((*f1 == ' ') && (f1 != l1)) ++f1;
392     while ((*f2 == ' ') && (f2 != l2)) ++f2;
393     if (*f1 != *f2) return (*f1 > *f2) ? 1 : -1;
394   }
395   return (int)((l1 - f1) - (l2 - f2));
396 }
397 
398 /*
399   Check type equivalence in a name list like <name1>|<name2>|...
400   Return 0 if equal, -1 if nb < tb, 1 if nb > tb
401 */
402 SWIGRUNTIME int
SWIG_TypeCmp(const char * nb,const char * tb)403 SWIG_TypeCmp(const char *nb, const char *tb) {
404   int equiv = 1;
405   const char* te = tb + strlen(tb);
406   const char* ne = nb;
407   while (equiv != 0 && *ne) {
408     for (nb = ne; *ne; ++ne) {
409       if (*ne == '|') break;
410     }
411     equiv = SWIG_TypeNameComp(nb, ne, tb, te);
412     if (*ne) ++ne;
413   }
414   return equiv;
415 }
416 
417 /*
418   Check type equivalence in a name list like <name1>|<name2>|...
419   Return 0 if not equal, 1 if equal
420 */
421 SWIGRUNTIME int
SWIG_TypeEquiv(const char * nb,const char * tb)422 SWIG_TypeEquiv(const char *nb, const char *tb) {
423   return SWIG_TypeCmp(nb, tb) == 0 ? 1 : 0;
424 }
425 
426 /*
427   Check the typename
428 */
429 SWIGRUNTIME swig_cast_info *
SWIG_TypeCheck(const char * c,swig_type_info * ty)430 SWIG_TypeCheck(const char *c, swig_type_info *ty) {
431   if (ty) {
432     swig_cast_info *iter = ty->cast;
433     while (iter) {
434       if (strcmp(iter->type->name, c) == 0) {
435         if (iter == ty->cast)
436           return iter;
437         /* Move iter to the top of the linked list */
438         iter->prev->next = iter->next;
439         if (iter->next)
440           iter->next->prev = iter->prev;
441         iter->next = ty->cast;
442         iter->prev = 0;
443         if (ty->cast) ty->cast->prev = iter;
444         ty->cast = iter;
445         return iter;
446       }
447       iter = iter->next;
448     }
449   }
450   return 0;
451 }
452 
453 /*
454   Identical to SWIG_TypeCheck, except strcmp is replaced with a pointer comparison
455 */
456 SWIGRUNTIME swig_cast_info *
SWIG_TypeCheckStruct(swig_type_info * from,swig_type_info * ty)457 SWIG_TypeCheckStruct(swig_type_info *from, swig_type_info *ty) {
458   if (ty) {
459     swig_cast_info *iter = ty->cast;
460     while (iter) {
461       if (iter->type == from) {
462         if (iter == ty->cast)
463           return iter;
464         /* Move iter to the top of the linked list */
465         iter->prev->next = iter->next;
466         if (iter->next)
467           iter->next->prev = iter->prev;
468         iter->next = ty->cast;
469         iter->prev = 0;
470         if (ty->cast) ty->cast->prev = iter;
471         ty->cast = iter;
472         return iter;
473       }
474       iter = iter->next;
475     }
476   }
477   return 0;
478 }
479 
480 /*
481   Cast a pointer up an inheritance hierarchy
482 */
483 SWIGRUNTIMEINLINE void *
SWIG_TypeCast(swig_cast_info * ty,void * ptr,int * newmemory)484 SWIG_TypeCast(swig_cast_info *ty, void *ptr, int *newmemory) {
485   return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr, newmemory);
486 }
487 
488 /*
489    Dynamic pointer casting. Down an inheritance hierarchy
490 */
491 SWIGRUNTIME swig_type_info *
SWIG_TypeDynamicCast(swig_type_info * ty,void ** ptr)492 SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) {
493   swig_type_info *lastty = ty;
494   if (!ty || !ty->dcast) return ty;
495   while (ty && (ty->dcast)) {
496     ty = (*ty->dcast)(ptr);
497     if (ty) lastty = ty;
498   }
499   return lastty;
500 }
501 
502 /*
503   Return the name associated with this type
504 */
505 SWIGRUNTIMEINLINE const char *
SWIG_TypeName(const swig_type_info * ty)506 SWIG_TypeName(const swig_type_info *ty) {
507   return ty->name;
508 }
509 
510 /*
511   Return the pretty name associated with this type,
512   that is an unmangled type name in a form presentable to the user.
513 */
514 SWIGRUNTIME const char *
SWIG_TypePrettyName(const swig_type_info * type)515 SWIG_TypePrettyName(const swig_type_info *type) {
516   /* The "str" field contains the equivalent pretty names of the
517      type, separated by vertical-bar characters.  We choose
518      to print the last name, as it is often (?) the most
519      specific. */
520   if (!type) return NULL;
521   if (type->str != NULL) {
522     const char *last_name = type->str;
523     const char *s;
524     for (s = type->str; *s; s++)
525       if (*s == '|') last_name = s+1;
526     return last_name;
527   }
528   else
529     return type->name;
530 }
531 
532 /*
533    Set the clientdata field for a type
534 */
535 SWIGRUNTIME void
SWIG_TypeClientData(swig_type_info * ti,void * clientdata)536 SWIG_TypeClientData(swig_type_info *ti, void *clientdata) {
537   swig_cast_info *cast = ti->cast;
538   /* if (ti->clientdata == clientdata) return; */
539   ti->clientdata = clientdata;
540 
541   while (cast) {
542     if (!cast->converter) {
543       swig_type_info *tc = cast->type;
544       if (!tc->clientdata) {
545 	SWIG_TypeClientData(tc, clientdata);
546       }
547     }
548     cast = cast->next;
549   }
550 }
551 SWIGRUNTIME void
SWIG_TypeNewClientData(swig_type_info * ti,void * clientdata)552 SWIG_TypeNewClientData(swig_type_info *ti, void *clientdata) {
553   SWIG_TypeClientData(ti, clientdata);
554   ti->owndata = 1;
555 }
556 
557 /*
558   Search for a swig_type_info structure only by mangled name
559   Search is a O(log #types)
560 
561   We start searching at module start, and finish searching when start == end.
562   Note: if start == end at the beginning of the function, we go all the way around
563   the circular list.
564 */
565 SWIGRUNTIME swig_type_info *
SWIG_MangledTypeQueryModule(swig_module_info * start,swig_module_info * end,const char * name)566 SWIG_MangledTypeQueryModule(swig_module_info *start,
567                             swig_module_info *end,
568 		            const char *name) {
569   swig_module_info *iter = start;
570   do {
571     if (iter->size) {
572       size_t l = 0;
573       size_t r = iter->size - 1;
574       do {
575 	/* since l+r >= 0, we can (>> 1) instead (/ 2) */
576 	size_t i = (l + r) >> 1;
577 	const char *iname = iter->types[i]->name;
578 	if (iname) {
579 	  int compare = strcmp(name, iname);
580 	  if (compare == 0) {
581 	    return iter->types[i];
582 	  } else if (compare < 0) {
583 	    if (i) {
584 	      r = i - 1;
585 	    } else {
586 	      break;
587 	    }
588 	  } else if (compare > 0) {
589 	    l = i + 1;
590 	  }
591 	} else {
592 	  break; /* should never happen */
593 	}
594       } while (l <= r);
595     }
596     iter = iter->next;
597   } while (iter != end);
598   return 0;
599 }
600 
601 /*
602   Search for a swig_type_info structure for either a mangled name or a human readable name.
603   It first searches the mangled names of the types, which is a O(log #types)
604   If a type is not found it then searches the human readable names, which is O(#types).
605 
606   We start searching at module start, and finish searching when start == end.
607   Note: if start == end at the beginning of the function, we go all the way around
608   the circular list.
609 */
610 SWIGRUNTIME swig_type_info *
SWIG_TypeQueryModule(swig_module_info * start,swig_module_info * end,const char * name)611 SWIG_TypeQueryModule(swig_module_info *start,
612                      swig_module_info *end,
613 		     const char *name) {
614   /* STEP 1: Search the name field using binary search */
615   swig_type_info *ret = SWIG_MangledTypeQueryModule(start, end, name);
616   if (ret) {
617     return ret;
618   } else {
619     /* STEP 2: If the type hasn't been found, do a complete search
620        of the str field (the human readable name) */
621     swig_module_info *iter = start;
622     do {
623       size_t i = 0;
624       for (; i < iter->size; ++i) {
625 	if (iter->types[i]->str && (SWIG_TypeEquiv(iter->types[i]->str, name)))
626 	  return iter->types[i];
627       }
628       iter = iter->next;
629     } while (iter != end);
630   }
631 
632   /* neither found a match */
633   return 0;
634 }
635 
636 /*
637    Pack binary data into a string
638 */
639 SWIGRUNTIME char *
SWIG_PackData(char * c,void * ptr,size_t sz)640 SWIG_PackData(char *c, void *ptr, size_t sz) {
641   static const char hex[17] = "0123456789abcdef";
642   const unsigned char *u = (unsigned char *) ptr;
643   const unsigned char *eu =  u + sz;
644   for (; u != eu; ++u) {
645     unsigned char uu = *u;
646     *(c++) = hex[(uu & 0xf0) >> 4];
647     *(c++) = hex[uu & 0xf];
648   }
649   return c;
650 }
651 
652 /*
653    Unpack binary data from a string
654 */
655 SWIGRUNTIME const char *
SWIG_UnpackData(const char * c,void * ptr,size_t sz)656 SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
657   unsigned char *u = (unsigned char *) ptr;
658   const unsigned char *eu = u + sz;
659   for (; u != eu; ++u) {
660     char d = *(c++);
661     unsigned char uu;
662     if ((d >= '0') && (d <= '9'))
663       uu = (unsigned char)((d - '0') << 4);
664     else if ((d >= 'a') && (d <= 'f'))
665       uu = (unsigned char)((d - ('a'-10)) << 4);
666     else
667       return (char *) 0;
668     d = *(c++);
669     if ((d >= '0') && (d <= '9'))
670       uu |= (unsigned char)(d - '0');
671     else if ((d >= 'a') && (d <= 'f'))
672       uu |= (unsigned char)(d - ('a'-10));
673     else
674       return (char *) 0;
675     *u = uu;
676   }
677   return c;
678 }
679 
680 /*
681    Pack 'void *' into a string buffer.
682 */
683 SWIGRUNTIME char *
SWIG_PackVoidPtr(char * buff,void * ptr,const char * name,size_t bsz)684 SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) {
685   char *r = buff;
686   if ((2*sizeof(void *) + 2) > bsz) return 0;
687   *(r++) = '_';
688   r = SWIG_PackData(r,&ptr,sizeof(void *));
689   if (strlen(name) + 1 > (bsz - (r - buff))) return 0;
690   strcpy(r,name);
691   return buff;
692 }
693 
694 SWIGRUNTIME const char *
SWIG_UnpackVoidPtr(const char * c,void ** ptr,const char * name)695 SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) {
696   if (*c != '_') {
697     if (strcmp(c,"NULL") == 0) {
698       *ptr = (void *) 0;
699       return name;
700     } else {
701       return 0;
702     }
703   }
704   return SWIG_UnpackData(++c,ptr,sizeof(void *));
705 }
706 
707 SWIGRUNTIME char *
SWIG_PackDataName(char * buff,void * ptr,size_t sz,const char * name,size_t bsz)708 SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) {
709   char *r = buff;
710   size_t lname = (name ? strlen(name) : 0);
711   if ((2*sz + 2 + lname) > bsz) return 0;
712   *(r++) = '_';
713   r = SWIG_PackData(r,ptr,sz);
714   if (lname) {
715     strncpy(r,name,lname+1);
716   } else {
717     *r = 0;
718   }
719   return buff;
720 }
721 
722 SWIGRUNTIME const char *
SWIG_UnpackDataName(const char * c,void * ptr,size_t sz,const char * name)723 SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
724   if (*c != '_') {
725     if (strcmp(c,"NULL") == 0) {
726       memset(ptr,0,sz);
727       return name;
728     } else {
729       return 0;
730     }
731   }
732   return SWIG_UnpackData(++c,ptr,sz);
733 }
734 
735 #ifdef __cplusplus
736 }
737 #endif
738 
739 /*  Errors in SWIG */
740 #define  SWIG_UnknownError    	   -1
741 #define  SWIG_IOError        	   -2
742 #define  SWIG_RuntimeError   	   -3
743 #define  SWIG_IndexError     	   -4
744 #define  SWIG_TypeError      	   -5
745 #define  SWIG_DivisionByZero 	   -6
746 #define  SWIG_OverflowError  	   -7
747 #define  SWIG_SyntaxError    	   -8
748 #define  SWIG_ValueError     	   -9
749 #define  SWIG_SystemError    	   -10
750 #define  SWIG_AttributeError 	   -11
751 #define  SWIG_MemoryError    	   -12
752 #define  SWIG_NullReferenceError   -13
753 
754 
755 
756 #ifdef __cplusplus
757 /* Needed on some windows machines---since MS plays funny games with the header files under C++ */
758 #include <math.h>
759 #include <stdlib.h>
760 extern "C" {
761 #endif
762 #include "EXTERN.h"
763 #include "perl.h"
764 #include "XSUB.h"
765 
766 /* Add in functionality missing in older versions of Perl. Much of this is based on Devel-PPPort on cpan. */
767 
768 /* Add PERL_REVISION, PERL_VERSION, PERL_SUBVERSION if missing */
769 #ifndef PERL_REVISION
770 #  if !defined(__PATCHLEVEL_H_INCLUDED__) && !(defined(PATCHLEVEL) && defined(SUBVERSION))
771 #    define PERL_PATCHLEVEL_H_IMPLICIT
772 #    include <patchlevel.h>
773 #  endif
774 #  if !(defined(PERL_VERSION) || (defined(SUBVERSION) && defined(PATCHLEVEL)))
775 #    include <could_not_find_Perl_patchlevel.h>
776 #  endif
777 #  ifndef PERL_REVISION
778 #    define PERL_REVISION       (5)
779 #    define PERL_VERSION        PATCHLEVEL
780 #    define PERL_SUBVERSION     SUBVERSION
781 #  endif
782 #endif
783 
784 #if defined(WIN32) && defined(PERL_OBJECT) && !defined(PerlIO_exportFILE)
785 #define PerlIO_exportFILE(fh,fl) (FILE*)(fh)
786 #endif
787 
788 #ifndef SvIOK_UV
789 # define SvIOK_UV(sv)       (SvIOK(sv) && (SvUVX(sv) == SvIVX(sv)))
790 #endif
791 
792 #ifndef SvUOK
793 # define SvUOK(sv)           SvIOK_UV(sv)
794 #endif
795 
796 #if ((PERL_VERSION < 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION <= 5)))
797 #  define PL_sv_undef               sv_undef
798 #  define PL_na	                    na
799 #  define PL_errgv                  errgv
800 #  define PL_sv_no                  sv_no
801 #  define PL_sv_yes                 sv_yes
802 #  define PL_markstack_ptr          markstack_ptr
803 #endif
804 
805 #ifndef IVSIZE
806 #  ifdef LONGSIZE
807 #    define IVSIZE LONGSIZE
808 #  else
809 #    define IVSIZE 4 /* A bold guess, but the best we can make. */
810 #  endif
811 #endif
812 
813 #ifndef INT2PTR
814 #  if (IVSIZE == PTRSIZE) && (UVSIZE == PTRSIZE)
815 #    define PTRV                  UV
816 #    define INT2PTR(any,d)        (any)(d)
817 #  else
818 #    if PTRSIZE == LONGSIZE
819 #      define PTRV                unsigned long
820 #    else
821 #      define PTRV                unsigned
822 #    endif
823 #    define INT2PTR(any,d)        (any)(PTRV)(d)
824 #  endif
825 
826 #  define NUM2PTR(any,d)  (any)(PTRV)(d)
827 #  define PTR2IV(p)       INT2PTR(IV,p)
828 #  define PTR2UV(p)       INT2PTR(UV,p)
829 #  define PTR2NV(p)       NUM2PTR(NV,p)
830 
831 #  if PTRSIZE == LONGSIZE
832 #    define PTR2ul(p)     (unsigned long)(p)
833 #  else
834 #    define PTR2ul(p)     INT2PTR(unsigned long,p)
835 #  endif
836 #endif /* !INT2PTR */
837 
838 #ifndef SvPV_nolen
839 # define SvPV_nolen(x) SvPV(x,PL_na)
840 #endif
841 
842 #ifndef get_sv
843 #  define get_sv perl_get_sv
844 #endif
845 
846 #ifndef ERRSV
847 #  define ERRSV get_sv("@",FALSE)
848 #endif
849 
850 #ifndef pTHX_
851 #define pTHX_
852 #endif
853 
854 #include <string.h>
855 #ifdef __cplusplus
856 }
857 #endif
858 
859 /* -----------------------------------------------------------------------------
860  * error manipulation
861  * ----------------------------------------------------------------------------- */
862 
863 SWIGINTERN const char*
SWIG_Perl_ErrorType(int code)864 SWIG_Perl_ErrorType(int code) {
865   switch(code) {
866   case SWIG_MemoryError:
867     return "MemoryError";
868   case SWIG_IOError:
869     return "IOError";
870   case SWIG_RuntimeError:
871     return "RuntimeError";
872   case SWIG_IndexError:
873     return "IndexError";
874   case SWIG_TypeError:
875     return "TypeError";
876   case SWIG_DivisionByZero:
877     return "ZeroDivisionError";
878   case SWIG_OverflowError:
879     return "OverflowError";
880   case SWIG_SyntaxError:
881     return "SyntaxError";
882   case SWIG_ValueError:
883     return "ValueError";
884   case SWIG_SystemError:
885     return "SystemError";
886   case SWIG_AttributeError:
887     return "AttributeError";
888   default:
889     return "RuntimeError";
890   }
891 }
892 
893 
894 /* -----------------------------------------------------------------------------
895  * perlrun.swg
896  *
897  * This file contains the runtime support for Perl modules
898  * and includes code for managing global variables and pointer
899  * type checking.
900  * ----------------------------------------------------------------------------- */
901 
902 #ifdef PERL_OBJECT
903 #define SWIG_PERL_OBJECT_DECL CPerlObj *SWIGUNUSEDPARM(pPerl),
904 #define SWIG_PERL_OBJECT_CALL pPerl,
905 #else
906 #define SWIG_PERL_OBJECT_DECL
907 #define SWIG_PERL_OBJECT_CALL
908 #endif
909 
910 /* Common SWIG API */
911 
912 /* for raw pointers */
913 #define SWIG_ConvertPtr(obj, pp, type, flags)           SWIG_Perl_ConvertPtr(SWIG_PERL_OBJECT_CALL obj, pp, type, flags)
914 #define SWIG_ConvertPtrAndOwn(obj, pp, type, flags,own) SWIG_Perl_ConvertPtrAndOwn(SWIG_PERL_OBJECT_CALL obj, pp, type, flags, own)
915 #define SWIG_NewPointerObj(p, type, flags)              SWIG_Perl_NewPointerObj(SWIG_PERL_OBJECT_CALL p, type, flags)
916 #define swig_owntype                                    int
917 
918 /* for raw packed data */
919 #define SWIG_ConvertPacked(obj, p, s, type)             SWIG_Perl_ConvertPacked(SWIG_PERL_OBJECT_CALL obj, p, s, type)
920 #define SWIG_NewPackedObj(p, s, type)	                SWIG_Perl_NewPackedObj(SWIG_PERL_OBJECT_CALL p, s, type)
921 
922 /* for class or struct pointers */
923 #define SWIG_ConvertInstance(obj, pptr, type, flags)    SWIG_ConvertPtr(obj, pptr, type, flags)
924 #define SWIG_NewInstanceObj(ptr, type, flags)           SWIG_NewPointerObj(ptr, type, flags)
925 
926 /* for C or C++ function pointers */
927 #define SWIG_ConvertFunctionPtr(obj, pptr, type)        SWIG_ConvertPtr(obj, pptr, type, 0)
928 #define SWIG_NewFunctionPtrObj(ptr, type)               SWIG_NewPointerObj(ptr, type, 0)
929 
930 /* for C++ member pointers, ie, member methods */
931 #define SWIG_ConvertMember(obj, ptr, sz, ty)            SWIG_ConvertPacked(obj, ptr, sz, ty)
932 #define SWIG_NewMemberObj(ptr, sz, type)                SWIG_NewPackedObj(ptr, sz, type)
933 
934 
935 /* Runtime API */
936 
937 #define SWIG_GetModule(clientdata)                      SWIG_Perl_GetModule(clientdata)
938 #define SWIG_SetModule(clientdata, pointer)             SWIG_Perl_SetModule(pointer)
939 
940 
941 /* Error manipulation */
942 
943 #define SWIG_ErrorType(code)                            SWIG_Perl_ErrorType(code)
944 #define SWIG_Error(code, msg)            		sv_setpvf(get_sv("@", GV_ADD), "%s %s", SWIG_ErrorType(code), msg)
945 #define SWIG_fail                        		goto fail
946 
947 /* Perl-specific SWIG API */
948 
949 #define SWIG_MakePtr(sv, ptr, type, flags)              SWIG_Perl_MakePtr(SWIG_PERL_OBJECT_CALL sv, ptr, type, flags)
950 #define SWIG_MakePackedObj(sv, p, s, type)	        SWIG_Perl_MakePackedObj(SWIG_PERL_OBJECT_CALL sv, p, s, type)
951 #define SWIG_SetError(str)                              SWIG_Error(SWIG_RuntimeError, str)
952 
953 
954 #define SWIG_PERL_DECL_ARGS_1(arg1)                     (SWIG_PERL_OBJECT_DECL arg1)
955 #define SWIG_PERL_CALL_ARGS_1(arg1)                     (SWIG_PERL_OBJECT_CALL arg1)
956 #define SWIG_PERL_DECL_ARGS_2(arg1, arg2)               (SWIG_PERL_OBJECT_DECL arg1, arg2)
957 #define SWIG_PERL_CALL_ARGS_2(arg1, arg2)               (SWIG_PERL_OBJECT_CALL arg1, arg2)
958 
959 /* -----------------------------------------------------------------------------
960  * pointers/data manipulation
961  * ----------------------------------------------------------------------------- */
962 
963 /* For backward compatibility only */
964 #define SWIG_POINTER_EXCEPTION  0
965 
966 #ifdef __cplusplus
967 extern "C" {
968 #endif
969 
970 #define SWIG_OWNER   SWIG_POINTER_OWN
971 #define SWIG_SHADOW  SWIG_OWNER << 1
972 
973 #define SWIG_MAYBE_PERL_OBJECT SWIG_PERL_OBJECT_DECL
974 
975 /* SWIG Perl macros */
976 
977 /* Macro to declare an XS function */
978 #ifndef XSPROTO
979 #   define XSPROTO(name) void name(pTHX_ CV* cv)
980 #endif
981 
982 /* Macro to call an XS function */
983 #ifdef PERL_OBJECT
984 #  define SWIG_CALLXS(_name) _name(cv,pPerl)
985 #else
986 #  ifndef MULTIPLICITY
987 #    define SWIG_CALLXS(_name) _name(cv)
988 #  else
989 #    define SWIG_CALLXS(_name) _name(PERL_GET_THX, cv)
990 #  endif
991 #endif
992 
993 #ifdef PERL_OBJECT
994 #define MAGIC_PPERL  CPerlObj *pPerl = (CPerlObj *) this;
995 
996 #ifdef __cplusplus
997 extern "C" {
998 #endif
999 typedef int (CPerlObj::*SwigMagicFunc)(SV *, MAGIC *);
1000 #ifdef __cplusplus
1001 }
1002 #endif
1003 
1004 #define SWIG_MAGIC(a,b) (SV *a, MAGIC *b)
1005 #define SWIGCLASS_STATIC
1006 
1007 #else /* PERL_OBJECT */
1008 
1009 #define MAGIC_PPERL
1010 #define SWIGCLASS_STATIC static SWIGUNUSED
1011 
1012 #ifndef MULTIPLICITY
1013 #define SWIG_MAGIC(a,b) (SV *a, MAGIC *b)
1014 
1015 #ifdef __cplusplus
1016 extern "C" {
1017 #endif
1018 typedef int (*SwigMagicFunc)(SV *, MAGIC *);
1019 #ifdef __cplusplus
1020 }
1021 #endif
1022 
1023 #else /* MULTIPLICITY */
1024 
1025 #define SWIG_MAGIC(a,b) (struct interpreter *interp, SV *a, MAGIC *b)
1026 
1027 #ifdef __cplusplus
1028 extern "C" {
1029 #endif
1030 typedef int (*SwigMagicFunc)(struct interpreter *, SV *, MAGIC *);
1031 #ifdef __cplusplus
1032 }
1033 #endif
1034 
1035 #endif /* MULTIPLICITY */
1036 #endif /* PERL_OBJECT */
1037 
1038 #  ifdef PERL_OBJECT
1039 #    define SWIG_croak_null() SWIG_Perl_croak_null(pPerl)
SWIG_Perl_croak_null(CPerlObj * pPerl)1040 static void SWIGUNUSED SWIG_Perl_croak_null(CPerlObj *pPerl)
1041 #  else
1042 static void SWIGUNUSED SWIG_croak_null()
1043 #  endif
1044 {
1045   SV *err = get_sv("@", GV_ADD);
1046 #  if (PERL_VERSION < 6)
1047   croak("%_", err);
1048 #  else
1049   if (sv_isobject(err))
1050     croak(0);
1051   else
1052     croak("%s", SvPV_nolen(err));
1053 #  endif
1054 }
1055 
1056 
1057 /*
1058    Define how strict is the cast between strings and integers/doubles
1059    when overloading between these types occurs.
1060 
1061    The default is making it as strict as possible by using SWIG_AddCast
1062    when needed.
1063 
1064    You can use -DSWIG_PERL_NO_STRICT_STR2NUM at compilation time to
1065    disable the SWIG_AddCast, making the casting between string and
1066    numbers less strict.
1067 
1068    In the end, we try to solve the overloading between strings and
1069    numerical types in the more natural way, but if you can avoid it,
1070    well, avoid it using %rename, for example.
1071 */
1072 #ifndef SWIG_PERL_NO_STRICT_STR2NUM
1073 # ifndef SWIG_PERL_STRICT_STR2NUM
1074 #  define SWIG_PERL_STRICT_STR2NUM
1075 # endif
1076 #endif
1077 #ifdef SWIG_PERL_STRICT_STR2NUM
1078 /* string takes precedence */
1079 #define SWIG_Str2NumCast(x) SWIG_AddCast(x)
1080 #else
1081 /* number takes precedence */
1082 #define SWIG_Str2NumCast(x) x
1083 #endif
1084 
1085 
1086 
1087 #include <stdlib.h>
1088 
1089 SWIGRUNTIME const char *
SWIG_Perl_TypeProxyName(const swig_type_info * type)1090 SWIG_Perl_TypeProxyName(const swig_type_info *type) {
1091   if (!type) return NULL;
1092   if (type->clientdata != NULL) {
1093     return (const char*) type->clientdata;
1094   }
1095   else {
1096     return type->name;
1097   }
1098 }
1099 
1100 /* Identical to SWIG_TypeCheck, except for strcmp comparison */
1101 SWIGRUNTIME swig_cast_info *
SWIG_TypeProxyCheck(const char * c,swig_type_info * ty)1102 SWIG_TypeProxyCheck(const char *c, swig_type_info *ty) {
1103   if (ty) {
1104     swig_cast_info *iter = ty->cast;
1105     while (iter) {
1106       if (strcmp(SWIG_Perl_TypeProxyName(iter->type), c) == 0) {
1107         if (iter == ty->cast)
1108           return iter;
1109         /* Move iter to the top of the linked list */
1110         iter->prev->next = iter->next;
1111         if (iter->next)
1112           iter->next->prev = iter->prev;
1113         iter->next = ty->cast;
1114         iter->prev = 0;
1115         if (ty->cast) ty->cast->prev = iter;
1116         ty->cast = iter;
1117         return iter;
1118       }
1119       iter = iter->next;
1120     }
1121   }
1122   return 0;
1123 }
1124 
1125 /* Function for getting a pointer value */
1126 
1127 SWIGRUNTIME int
SWIG_Perl_ConvertPtrAndOwn(SWIG_MAYBE_PERL_OBJECT SV * sv,void ** ptr,swig_type_info * _t,int flags,int * own)1128 SWIG_Perl_ConvertPtrAndOwn(SWIG_MAYBE_PERL_OBJECT SV *sv, void **ptr, swig_type_info *_t, int flags, int *own) {
1129   swig_cast_info *tc;
1130   void *voidptr = (void *)0;
1131   SV *tsv = 0;
1132 
1133   if (own)
1134     *own = 0;
1135 
1136   /* If magical, apply more magic */
1137   if (SvGMAGICAL(sv))
1138     mg_get(sv);
1139 
1140   /* Check to see if this is an object */
1141   if (sv_isobject(sv)) {
1142     IV tmp = 0;
1143     tsv = (SV*) SvRV(sv);
1144     if ((SvTYPE(tsv) == SVt_PVHV)) {
1145       MAGIC *mg;
1146       if (SvMAGICAL(tsv)) {
1147         mg = mg_find(tsv,'P');
1148         if (mg) {
1149           sv = mg->mg_obj;
1150           if (sv_isobject(sv)) {
1151 	    tsv = (SV*)SvRV(sv);
1152             tmp = SvIV(tsv);
1153           }
1154         }
1155       } else {
1156         return SWIG_ERROR;
1157       }
1158     } else {
1159       tmp = SvIV(tsv);
1160     }
1161     voidptr = INT2PTR(void *,tmp);
1162   } else if (! SvOK(sv)) {            /* Check for undef */
1163     *(ptr) = (void *) 0;
1164     return SWIG_OK;
1165   } else if (SvTYPE(sv) == SVt_RV) {  /* Check for NULL pointer */
1166     if (!SvROK(sv)) {
1167       /* In Perl 5.12 and later, SVt_RV == SVt_IV, so sv could be a valid integer value.  */
1168       if (SvIOK(sv)) {
1169         return SWIG_ERROR;
1170       } else {
1171         /* NULL pointer (reference to undef). */
1172         *(ptr) = (void *) 0;
1173         return SWIG_OK;
1174       }
1175     } else {
1176       return SWIG_ERROR;
1177     }
1178   } else {                            /* Don't know what it is */
1179     return SWIG_ERROR;
1180   }
1181   if (_t) {
1182     /* Now see if the types match */
1183     char *_c = HvNAME(SvSTASH(SvRV(sv)));
1184     tc = SWIG_TypeProxyCheck(_c,_t);
1185 #ifdef SWIG_DIRECTORS
1186     if (!tc && !sv_derived_from(sv,SWIG_Perl_TypeProxyName(_t))) {
1187 #else
1188     if (!tc) {
1189 #endif
1190       return SWIG_ERROR;
1191     }
1192     {
1193       int newmemory = 0;
1194       *ptr = SWIG_TypeCast(tc,voidptr,&newmemory);
1195       if (newmemory == SWIG_CAST_NEW_MEMORY) {
1196         assert(own); /* badly formed typemap which will lead to a memory leak - it must set and use own to delete *ptr */
1197         if (own)
1198           *own = *own | SWIG_CAST_NEW_MEMORY;
1199       }
1200     }
1201   } else {
1202     *ptr = voidptr;
1203   }
1204 
1205   /*
1206    *  DISOWN implementation: we need a perl guru to check this one.
1207    */
1208   if (tsv && (flags & SWIG_POINTER_DISOWN)) {
1209     /*
1210      *  almost copy paste code from below SWIG_POINTER_OWN setting
1211      */
1212     SV *obj = sv;
1213     HV *stash = SvSTASH(SvRV(obj));
1214     GV *gv = *(GV**)hv_fetch(stash, "OWNER", 5, TRUE);
1215     if (isGV(gv)) {
1216       HV *hv = GvHVn(gv);
1217       /*
1218        * To set ownership (see below), a newSViv(1) entry is added.
1219        * Hence, to remove ownership, we delete the entry.
1220        */
1221       if (hv_exists_ent(hv, obj, 0)) {
1222 	hv_delete_ent(hv, obj, 0, 0);
1223       }
1224     }
1225   }
1226   return SWIG_OK;
1227 }
1228 
1229 SWIGRUNTIME int
1230 SWIG_Perl_ConvertPtr(SWIG_MAYBE_PERL_OBJECT SV *sv, void **ptr, swig_type_info *_t, int flags) {
1231   return SWIG_Perl_ConvertPtrAndOwn(sv, ptr, _t, flags, 0);
1232 }
1233 
1234 SWIGRUNTIME void
1235 SWIG_Perl_MakePtr(SWIG_MAYBE_PERL_OBJECT SV *sv, void *ptr, swig_type_info *t, int flags) {
1236   if (ptr && (flags & (SWIG_SHADOW | SWIG_POINTER_OWN))) {
1237     SV *self;
1238     SV *obj=newSV(0);
1239     HV *hash=newHV();
1240     HV *stash;
1241     sv_setref_pv(obj, SWIG_Perl_TypeProxyName(t), ptr);
1242     stash=SvSTASH(SvRV(obj));
1243     if (flags & SWIG_POINTER_OWN) {
1244       HV *hv;
1245       GV *gv = *(GV**)hv_fetch(stash, "OWNER", 5, TRUE);
1246       if (!isGV(gv))
1247         gv_init(gv, stash, "OWNER", 5, FALSE);
1248       hv=GvHVn(gv);
1249       hv_store_ent(hv, obj, newSViv(1), 0);
1250     }
1251     sv_magic((SV *)hash, (SV *)obj, 'P', Nullch, 0);
1252     SvREFCNT_dec(obj);
1253     self=newRV_noinc((SV *)hash);
1254     sv_setsv(sv, self);
1255     SvREFCNT_dec((SV *)self);
1256     sv_bless(sv, stash);
1257   }
1258   else {
1259     sv_setref_pv(sv, SWIG_Perl_TypeProxyName(t), ptr);
1260   }
1261 }
1262 
1263 SWIGRUNTIMEINLINE SV *
1264 SWIG_Perl_NewPointerObj(SWIG_MAYBE_PERL_OBJECT void *ptr, swig_type_info *t, int flags) {
1265   SV *result = sv_newmortal();
1266   SWIG_MakePtr(result, ptr, t, flags);
1267   return result;
1268 }
1269 
1270 SWIGRUNTIME void
1271 SWIG_Perl_MakePackedObj(SWIG_MAYBE_PERL_OBJECT SV *sv, void *ptr, int sz, swig_type_info *type) {
1272   char result[1024];
1273   char *r = result;
1274   if ((2*sz + 1 + strlen(SWIG_Perl_TypeProxyName(type))) > 1000) return;
1275   *(r++) = '_';
1276   r = SWIG_PackData(r,ptr,sz);
1277   strcpy(r,SWIG_Perl_TypeProxyName(type));
1278   sv_setpv(sv, result);
1279 }
1280 
1281 SWIGRUNTIME SV *
1282 SWIG_Perl_NewPackedObj(SWIG_MAYBE_PERL_OBJECT void *ptr, int sz, swig_type_info *type) {
1283   SV *result = sv_newmortal();
1284   SWIG_Perl_MakePackedObj(result, ptr, sz, type);
1285   return result;
1286 }
1287 
1288 /* Convert a packed value value */
1289 SWIGRUNTIME int
1290 SWIG_Perl_ConvertPacked(SWIG_MAYBE_PERL_OBJECT SV *obj, void *ptr, int sz, swig_type_info *ty) {
1291   swig_cast_info *tc;
1292   const char  *c = 0;
1293 
1294   if ((!obj) || (!SvOK(obj))) return SWIG_ERROR;
1295   c = SvPV_nolen(obj);
1296   /* Pointer values must start with leading underscore */
1297   if (*c != '_') return SWIG_ERROR;
1298   c++;
1299   c = SWIG_UnpackData(c,ptr,sz);
1300   if (ty) {
1301     tc = SWIG_TypeCheck(c,ty);
1302     if (!tc) return SWIG_ERROR;
1303   }
1304   return SWIG_OK;
1305 }
1306 
1307 
1308 /* Macros for low-level exception handling */
1309 #define SWIG_croak(x)    { SWIG_Error(SWIG_RuntimeError, x); SWIG_fail; }
1310 
1311 
1312 typedef XSPROTO(SwigPerlWrapper);
1313 typedef SwigPerlWrapper *SwigPerlWrapperPtr;
1314 
1315 /* Structure for command table */
1316 typedef struct {
1317   const char         *name;
1318   SwigPerlWrapperPtr  wrapper;
1319 } swig_command_info;
1320 
1321 /* Information for constant table */
1322 
1323 #define SWIG_INT     1
1324 #define SWIG_FLOAT   2
1325 #define SWIG_STRING  3
1326 #define SWIG_POINTER 4
1327 #define SWIG_BINARY  5
1328 
1329 /* Constant information structure */
1330 typedef struct swig_constant_info {
1331     int              type;
1332     const char      *name;
1333     long             lvalue;
1334     double           dvalue;
1335     void            *pvalue;
1336     swig_type_info **ptype;
1337 } swig_constant_info;
1338 
1339 
1340 /* Structure for variable table */
1341 typedef struct {
1342   const char   *name;
1343   SwigMagicFunc   set;
1344   SwigMagicFunc   get;
1345   swig_type_info  **type;
1346 } swig_variable_info;
1347 
1348 /* Magic variable code */
1349 #ifndef PERL_OBJECT
1350 # ifdef __cplusplus
1351 #  define swig_create_magic(s,a,b,c) _swig_create_magic(s,const_cast<char*>(a),b,c)
1352 # else
1353 #  define swig_create_magic(s,a,b,c) _swig_create_magic(s,(char*)(a),b,c)
1354 # endif
1355 # ifndef MULTIPLICITY
1356 SWIGRUNTIME void _swig_create_magic(SV *sv, char *name, int (*set)(SV *, MAGIC *), int (*get)(SV *,MAGIC *))
1357 # else
1358 SWIGRUNTIME void _swig_create_magic(SV *sv, char *name, int (*set)(struct interpreter*, SV *, MAGIC *), int (*get)(struct interpreter*, SV *,MAGIC *))
1359 # endif
1360 #else
1361 #  define swig_create_magic(s,a,b,c) _swig_create_magic(pPerl,s,a,b,c)
1362 SWIGRUNTIME void _swig_create_magic(CPerlObj *pPerl, SV *sv, const char *name, int (CPerlObj::*set)(SV *, MAGIC *), int (CPerlObj::*get)(SV *, MAGIC *))
1363 #endif
1364 {
1365   MAGIC *mg;
1366   sv_magic(sv,sv,'U',name,strlen(name));
1367   mg = mg_find(sv,'U');
1368   mg->mg_virtual = (MGVTBL *) malloc(sizeof(MGVTBL));
1369   mg->mg_virtual->svt_get = (SwigMagicFunc) get;
1370   mg->mg_virtual->svt_set = (SwigMagicFunc) set;
1371   mg->mg_virtual->svt_len = 0;
1372   mg->mg_virtual->svt_clear = 0;
1373   mg->mg_virtual->svt_free = 0;
1374 }
1375 
1376 
1377 SWIGRUNTIME swig_module_info *
1378 SWIG_Perl_GetModule(void *SWIGUNUSEDPARM(clientdata)) {
1379   static void *type_pointer = (void *)0;
1380   SV *pointer;
1381 
1382   /* first check if pointer already created */
1383   if (!type_pointer) {
1384     pointer = get_sv("swig_runtime_data::type_pointer" SWIG_RUNTIME_VERSION SWIG_TYPE_TABLE_NAME, FALSE | GV_ADDMULTI);
1385     if (pointer && SvOK(pointer)) {
1386       type_pointer = INT2PTR(swig_type_info **, SvIV(pointer));
1387     }
1388   }
1389 
1390   return (swig_module_info *) type_pointer;
1391 }
1392 
1393 SWIGRUNTIME void
1394 SWIG_Perl_SetModule(swig_module_info *module) {
1395   SV *pointer;
1396 
1397   /* create a new pointer */
1398   pointer = get_sv("swig_runtime_data::type_pointer" SWIG_RUNTIME_VERSION SWIG_TYPE_TABLE_NAME, TRUE | GV_ADDMULTI);
1399   sv_setiv(pointer, PTR2IV(module));
1400 }
1401 
1402 #ifdef __cplusplus
1403 }
1404 #endif
1405 
1406 /* Workaround perl5 global namespace pollution. Note that undefining library
1407  * functions like fopen will not solve the problem on all platforms as fopen
1408  * might be a macro on Windows but not necessarily on other operating systems. */
1409 #ifdef do_open
1410   #undef do_open
1411 #endif
1412 #ifdef do_close
1413   #undef do_close
1414 #endif
1415 #ifdef do_exec
1416   #undef do_exec
1417 #endif
1418 #ifdef scalar
1419   #undef scalar
1420 #endif
1421 #ifdef list
1422   #undef list
1423 #endif
1424 #ifdef apply
1425   #undef apply
1426 #endif
1427 #ifdef convert
1428   #undef convert
1429 #endif
1430 #ifdef Error
1431   #undef Error
1432 #endif
1433 #ifdef form
1434   #undef form
1435 #endif
1436 #ifdef vform
1437   #undef vform
1438 #endif
1439 #ifdef LABEL
1440   #undef LABEL
1441 #endif
1442 #ifdef METHOD
1443   #undef METHOD
1444 #endif
1445 #ifdef Move
1446   #undef Move
1447 #endif
1448 #ifdef yylex
1449   #undef yylex
1450 #endif
1451 #ifdef yyparse
1452   #undef yyparse
1453 #endif
1454 #ifdef yyerror
1455   #undef yyerror
1456 #endif
1457 #ifdef invert
1458   #undef invert
1459 #endif
1460 #ifdef ref
1461   #undef ref
1462 #endif
1463 #ifdef read
1464   #undef read
1465 #endif
1466 #ifdef write
1467   #undef write
1468 #endif
1469 #ifdef eof
1470   #undef eof
1471 #endif
1472 #ifdef close
1473   #undef close
1474 #endif
1475 #ifdef rewind
1476   #undef rewind
1477 #endif
1478 #ifdef free
1479   #undef free
1480 #endif
1481 #ifdef malloc
1482   #undef malloc
1483 #endif
1484 #ifdef calloc
1485   #undef calloc
1486 #endif
1487 #ifdef Stat
1488   #undef Stat
1489 #endif
1490 #ifdef check
1491   #undef check
1492 #endif
1493 #ifdef seekdir
1494   #undef seekdir
1495 #endif
1496 #ifdef open
1497   #undef open
1498 #endif
1499 #ifdef readdir
1500   #undef readdir
1501 #endif
1502 #ifdef bind
1503   #undef bind
1504 #endif
1505 #ifdef access
1506   #undef access
1507 #endif
1508 #ifdef stat
1509   #undef stat
1510 #endif
1511 #ifdef seed
1512   #undef seed
1513 #endif
1514 
1515 #ifdef bool
1516   /* Leave if macro is from C99 stdbool.h */
1517   #ifndef __bool_true_false_are_defined
1518     #undef bool
1519   #endif
1520 #endif
1521 
1522 
1523 
1524 
1525 #define SWIG_exception_fail(code, msg) do { SWIG_Error(code, msg); SWIG_fail; } while(0)
1526 
1527 #define SWIG_contract_assert(expr, msg) if (!(expr)) { SWIG_Error(SWIG_RuntimeError, msg); SWIG_fail; } else
1528 
1529 
1530 
1531   #define SWIG_exception(code, msg) do { SWIG_Error(code, msg); SWIG_fail;; } while(0)
1532 
1533 
1534 /* -------- TYPES TABLE (BEGIN) -------- */
1535 
1536 #define SWIGTYPE_p_GDALMajorObjectShadow swig_types[0]
1537 #define SWIGTYPE_p_GIntBig swig_types[1]
1538 #define SWIGTYPE_p_OGRFeatureDefnShadow swig_types[2]
1539 #define SWIGTYPE_p_OGRFeatureShadow swig_types[3]
1540 #define SWIGTYPE_p_OGRFieldDefnShadow swig_types[4]
1541 #define SWIGTYPE_p_OGRFieldDomainShadow swig_types[5]
1542 #define SWIGTYPE_p_OGRGeomFieldDefnShadow swig_types[6]
1543 #define SWIGTYPE_p_OGRGeomTransformerShadow swig_types[7]
1544 #define SWIGTYPE_p_OGRGeometryShadow swig_types[8]
1545 #define SWIGTYPE_p_OGRLayerShadow swig_types[9]
1546 #define SWIGTYPE_p_OGRPreparedGeometryShadow swig_types[10]
1547 #define SWIGTYPE_p_OGRStyleTableShadow swig_types[11]
1548 #define SWIGTYPE_p_OSRCoordinateTransformationShadow swig_types[12]
1549 #define SWIGTYPE_p_OSRSpatialReferenceShadow swig_types[13]
1550 #define SWIGTYPE_p_char swig_types[14]
1551 #define SWIGTYPE_p_double swig_types[15]
1552 #define SWIGTYPE_p_f_double_p_q_const__char_p_void__int swig_types[16]
1553 #define SWIGTYPE_p_float swig_types[17]
1554 #define SWIGTYPE_p_int swig_types[18]
1555 #define SWIGTYPE_p_p_GIntBig swig_types[19]
1556 #define SWIGTYPE_p_p_char swig_types[20]
1557 #define SWIGTYPE_p_p_double swig_types[21]
1558 #define SWIGTYPE_p_p_int swig_types[22]
1559 #define SWIGTYPE_p_p_p_char swig_types[23]
1560 static swig_type_info *swig_types[25];
1561 static swig_module_info swig_module = {swig_types, 24, 0, 0, 0, 0};
1562 #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
1563 #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
1564 
1565 /* -------- TYPES TABLE (END) -------- */
1566 
1567 #define SWIG_init    boot_Geo__OGR
1568 
1569 #define SWIG_name   "Geo::OGRc::boot_Geo__OGR"
1570 #define SWIG_prefix "Geo::OGRc::"
1571 
1572 #define SWIGVERSION 0x030012
1573 #define SWIG_VERSION SWIGVERSION
1574 
1575 
1576 #define SWIG_as_voidptr(a) const_cast< void * >(static_cast< const void * >(a))
1577 #define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),reinterpret_cast< void** >(a))
1578 
1579 
1580 #include <stdexcept>
1581 
1582 
1583 #ifdef __cplusplus
1584 extern "C"
1585 #endif
1586 #ifndef PERL_OBJECT
1587 #ifndef MULTIPLICITY
1588 SWIGEXPORT void SWIG_init (CV* cv);
1589 #else
1590 SWIGEXPORT void SWIG_init (pTHXo_ CV* cv);
1591 #endif
1592 #else
1593 SWIGEXPORT void SWIG_init (CV *cv, CPerlObj *);
1594 #endif
1595 
1596 
1597 typedef char retStringAndCPLFree;
1598 
1599 
1600 #include <iostream>
1601 using namespace std;
1602 
1603 #define CPL_SUPRESS_CPLUSPLUS
1604 
1605 #include "gdal.h"
1606 #include "ogr_api.h"
1607 #include "ogr_core.h"
1608 #include "cpl_port.h"
1609 #include "cpl_string.h"
1610 #include "ogr_srs_api.h"
1611 
1612 #define FIELD_INDEX_ERROR_TMPL "Invalid field index: '%i'"
1613 #define FIELD_NAME_ERROR_TMPL "Invalid field name: '%s'"
1614 
1615 typedef void GDALMajorObjectShadow;
1616 
1617 #ifdef DEBUG
1618 typedef struct OGRSpatialReferenceHS OSRSpatialReferenceShadow;
1619 #ifndef SWIGPERL
1620 typedef struct OGRDriverHS OGRDriverShadow;
1621 typedef struct OGRDataSourceHS OGRDataSourceShadow;
1622 #endif
1623 typedef struct OGRLayerHS OGRLayerShadow;
1624 typedef struct OGRFeatureHS OGRFeatureShadow;
1625 typedef struct OGRFeatureDefnHS OGRFeatureDefnShadow;
1626 typedef struct OGRGeometryHS OGRGeometryShadow;
1627 typedef struct OGRCoordinateTransformationHS OSRCoordinateTransformationShadow;
1628 typedef struct OGRFieldDefnHS OGRFieldDefnShadow;
1629 #else
1630 typedef void OSRSpatialReferenceShadow;
1631 #ifndef SWIGPERL
1632 typedef void OGRDriverShadow;
1633 typedef void OGRDataSourceShadow;
1634 #endif
1635 typedef void OGRLayerShadow;
1636 typedef void OGRFeatureShadow;
1637 typedef void OGRFeatureDefnShadow;
1638 typedef void OGRGeometryShadow;
1639 typedef void OSRCoordinateTransformationShadow;
1640 typedef void OGRFieldDefnShadow;
1641 #endif
1642 
1643 typedef struct OGRStyleTableHS OGRStyleTableShadow;
1644 typedef struct OGRGeomFieldDefnHS OGRGeomFieldDefnShadow;
1645 typedef struct OGRGeomTransformer OGRGeomTransformerShadow;
1646 typedef struct _OGRPreparedGeometry OGRPreparedGeometryShadow;
1647 typedef struct OGRFieldDomainHS OGRFieldDomainShadow;
1648 
1649 
1650 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(long value)1651 SWIG_From_long  SWIG_PERL_DECL_ARGS_1(long value)
1652 {
1653   SV *sv;
1654   if (IVSIZE >= sizeof(value) || (value >= IV_MIN && value <= IV_MAX))
1655     sv = newSViv(value);
1656   else
1657     sv = newSVpvf("%ld", value);
1658   return sv_2mortal(sv);
1659 }
1660 
1661 
1662 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(int value)1663 SWIG_From_int  SWIG_PERL_DECL_ARGS_1(int value)
1664 {
1665   return SWIG_From_long  SWIG_PERL_CALL_ARGS_1(value);
1666 }
1667 
1668 
1669 SWIGINTERNINLINE SV *
SWIG_FromCharPtrAndSize(const char * carray,size_t size)1670 SWIG_FromCharPtrAndSize(const char* carray, size_t size)
1671 {
1672   SV *obj = sv_newmortal();
1673   if (carray) {
1674     sv_setpvn(obj, carray, size);
1675   } else {
1676     sv_setsv(obj, &PL_sv_undef);
1677   }
1678   return obj;
1679 }
1680 
1681 
1682 SWIGINTERNINLINE SV *
SWIG_FromCharPtr(const char * cptr)1683 SWIG_FromCharPtr(const char *cptr)
1684 {
1685   return SWIG_FromCharPtrAndSize(cptr, (cptr ? strlen(cptr) : 0));
1686 }
1687 
1688 
1689     #ifndef SWIG
1690     typedef struct
1691     {
1692         SV *fct;
1693         SV *data;
1694     } SavedEnv;
1695     #endif
callback_d_cp_vp(double d,const char * cp,void * vp)1696     int callback_d_cp_vp(double d, const char *cp, void *vp)
1697     {
1698         int count, ret;
1699         SavedEnv *env_ptr = (SavedEnv *)vp;
1700         dSP;
1701         ENTER;
1702         SAVETMPS;
1703         PUSHMARK(SP);
1704         XPUSHs(sv_2mortal(newSVnv(d)));
1705         XPUSHs(sv_2mortal(newSVpv(cp, 0)));
1706         if (env_ptr->data)
1707             XPUSHs(env_ptr->data);
1708         PUTBACK;
1709         count = call_sv(env_ptr->fct, G_SCALAR);
1710         SPAGAIN;
1711         if (count != 1) {
1712             fprintf(stderr, "The callback must return only one value.\n");
1713             return 0; /* interrupt */
1714         }
1715         ret = POPi;
1716         PUTBACK;
1717         FREETMPS;
1718         LEAVE;
1719         return ret;
1720     }
1721     #ifndef SWIG
1722     static SV *VSIStdoutSetRedirectionFct = &PL_sv_undef;
1723     #endif
callback_fwrite(const void * ptr,size_t size,size_t nmemb,FILE * stream)1724     size_t callback_fwrite(const void *ptr, size_t size, size_t nmemb,
1725                            FILE *stream)
1726     {
1727         dSP;
1728         ENTER;
1729         SAVETMPS;
1730         PUSHMARK(SP);
1731         XPUSHs(sv_2mortal(newSVpv((const char*)ptr, size*nmemb)));
1732         PUTBACK;
1733         call_sv(VSIStdoutSetRedirectionFct, G_DISCARD);
1734         FREETMPS;
1735         LEAVE;
1736         return size*nmemb;
1737     }
1738 
1739 
do_confess(const char * error,int push_to_error_stack)1740     void do_confess(const char *error, int push_to_error_stack) {
1741         SV *sv = newSVpv("", 0);
1742         sv_setpvf(sv, "%s\n", error);
1743         if (push_to_error_stack) {
1744             AV* error_stack = get_av("Geo::GDAL::error", 0);
1745             av_push(error_stack, sv);
1746         } else {
1747             sv = sv_2mortal(sv);
1748         }
1749         dSP;
1750         ENTER;
1751         SAVETMPS;
1752         PUSHMARK(SP);
1753         XPUSHs( sv );
1754         PUTBACK;
1755         call_pv("Carp::confess", G_DISCARD);
1756         /*
1757         confess never returns, so these will not get executed:
1758         FREETMPS;
1759         LEAVE;
1760         */
1761     }
1762     #define OUT_OF_MEMORY "Out of memory."
1763     #define CALL_FAILED "Call failed. Possible reason is an index out of range, mathematical problem, or something else."
1764     #define NEED_DEF "A parameter which must be defined or not empty, is not."
1765     #define WRONG_CLASS "Object has a wrong class."
1766     #define NEED_REF "A parameter which must be a reference, is not."
1767     #define NEED_HASH_REF "A parameter/item which must be a hash reference, is not."
1768     #define NEED_ARRAY_REF "A parameter/item which must be an array reference, is not."
1769     #define NEED_BINARY_DATA "A parameter which must be binary data, is not."
1770     #define NEED_CODE_REF "A parameter which must be an anonymous subroutine, is not."
1771     #define WRONG_ITEM_IN_ARRAY "An item in an array parameter has wrong type."
1772     #define ARRAY_TO_XML_FAILED "An array parameter cannot be converted to an XMLTree."
1773     #define NOT_ENOUGH_ELEMENTS "The supplied array does not have enough elements."
1774 
1775 
VeryQuietErrorHandler(CPLErr eclass,int code,const char * msg)1776 void VeryQuietErrorHandler(CPLErr eclass, int code, const char *msg ) {
1777   /* If the error class is CE_Fatal, we want to have a message issued
1778      because the CPL support code does an abort() before any exception
1779      can be generated */
1780 #if defined(SWIGPERL)
1781     AV* error_stack = get_av("Geo::GDAL::error", 0);
1782     SV *error = newSVpv(msg, 0);
1783     av_push(error_stack, error);
1784 #endif
1785   if (eclass == CE_Fatal ) {
1786     CPLDefaultErrorHandler(eclass, code, msg );
1787   }
1788 }
1789 
1790 
UseExceptions()1791 void UseExceptions() {
1792   CPLSetErrorHandler( (CPLErrorHandler) VeryQuietErrorHandler );
1793 }
1794 
DontUseExceptions()1795 void DontUseExceptions() {
1796   CPLSetErrorHandler( CPLDefaultErrorHandler );
1797 }
1798 
new_OGRStyleTableShadow()1799 SWIGINTERN OGRStyleTableShadow *new_OGRStyleTableShadow(){
1800         return (OGRStyleTableShadow*) OGR_STBL_Create();
1801    }
delete_OGRStyleTableShadow(OGRStyleTableShadow * self)1802 SWIGINTERN void delete_OGRStyleTableShadow(OGRStyleTableShadow *self){
1803         OGR_STBL_Destroy( (OGRStyleTableH) self );
1804    }
1805 
1806 SWIGINTERN swig_type_info*
SWIG_pchar_descriptor(void)1807 SWIG_pchar_descriptor(void)
1808 {
1809   static int init = 0;
1810   static swig_type_info* info = 0;
1811   if (!init) {
1812     info = SWIG_TypeQuery("_p_char");
1813     init = 1;
1814   }
1815   return info;
1816 }
1817 
1818 
1819 SWIGINTERN int
SWIG_AsCharPtrAndSize(SV * obj,char ** cptr,size_t * psize,int * alloc)1820 SWIG_AsCharPtrAndSize(SV *obj, char** cptr, size_t* psize, int *alloc)
1821 {
1822   if (SvMAGICAL(obj)) {
1823      SV *tmp = sv_newmortal();
1824      SvSetSV(tmp, obj);
1825      obj = tmp;
1826   }
1827   if (SvPOK(obj)) {
1828     STRLEN len = 0;
1829     char *cstr = SvPV(obj, len);
1830     size_t size = len + 1;
1831     if (cptr)  {
1832       if (alloc) {
1833 	if (*alloc == SWIG_NEWOBJ) {
1834 	  *cptr = reinterpret_cast< char* >(memcpy(new char[size], cstr, sizeof(char)*(size)));
1835 	} else {
1836 	  *cptr = cstr;
1837 	  *alloc = SWIG_OLDOBJ;
1838 	}
1839       }
1840     }
1841     if (psize) *psize = size;
1842     return SWIG_OK;
1843   } else {
1844     swig_type_info* pchar_descriptor = SWIG_pchar_descriptor();
1845     if (pchar_descriptor) {
1846       char* vptr = 0;
1847       if (SWIG_ConvertPtr(obj, (void**)&vptr, pchar_descriptor, 0) == SWIG_OK) {
1848 	if (cptr) *cptr = vptr;
1849 	if (psize) *psize = vptr ? (strlen(vptr) + 1) : 0;
1850 	if (alloc) *alloc = SWIG_OLDOBJ;
1851 	return SWIG_OK;
1852       }
1853     }
1854   }
1855   return SWIG_TypeError;
1856 }
1857 
1858 
1859 
1860 
OGRStyleTableShadow_AddStyle(OGRStyleTableShadow * self,char const * pszName,char const * pszStyleString)1861 SWIGINTERN int OGRStyleTableShadow_AddStyle(OGRStyleTableShadow *self,char const *pszName,char const *pszStyleString){
1862         return OGR_STBL_AddStyle( (OGRStyleTableH) self, pszName, pszStyleString);
1863    }
1864 
sv_to_utf8_string(SV * sv,U8 ** tmpbuf,bool * safefree=NULL)1865     char *sv_to_utf8_string(SV *sv, U8 **tmpbuf, bool *safefree = NULL) {
1866         /* if tmpbuf is given, only tmpbuf needs to be freed, use Safefree!
1867            if not, ret needs to be freed, if safefree use Safefree else use free! */
1868         char *ret;
1869         if (safefree) *safefree = false;
1870         if (SvOK(sv)) {
1871             STRLEN len;
1872             ret = SvPV(sv, len);
1873             if (!SvUTF8(sv)) {
1874                 if (tmpbuf) {
1875                     *tmpbuf = bytes_to_utf8((const U8*)ret, &len);
1876                     ret = (char *)(*tmpbuf);
1877                 } else {
1878                     ret = (char *)bytes_to_utf8((const U8*)ret, &len);
1879                 }
1880                 if (safefree) *safefree = true;
1881             } else {
1882                 if (!tmpbuf)
1883                     ret = strdup(ret);
1884             }
1885         } else {
1886             ret = (char*)""; /* avoid "Use of uninitialized value in subroutine entry" errors */
1887             if (!tmpbuf)
1888                 ret = strdup(ret);
1889         }
1890         return ret;
1891     }
1892 
OGRStyleTableShadow_LoadStyleTable(OGRStyleTableShadow * self,char const * utf8_path)1893 SWIGINTERN int OGRStyleTableShadow_LoadStyleTable(OGRStyleTableShadow *self,char const *utf8_path){
1894         return OGR_STBL_LoadStyleTable( (OGRStyleTableH) self, utf8_path );
1895    }
OGRStyleTableShadow_SaveStyleTable(OGRStyleTableShadow * self,char const * utf8_path)1896 SWIGINTERN int OGRStyleTableShadow_SaveStyleTable(OGRStyleTableShadow *self,char const *utf8_path){
1897         return OGR_STBL_SaveStyleTable( (OGRStyleTableH) self, utf8_path );
1898    }
OGRStyleTableShadow_Find(OGRStyleTableShadow * self,char const * pszName)1899 SWIGINTERN char const *OGRStyleTableShadow_Find(OGRStyleTableShadow *self,char const *pszName){
1900         return OGR_STBL_Find( (OGRStyleTableH) self, pszName );
1901    }
OGRStyleTableShadow_ResetStyleStringReading(OGRStyleTableShadow * self)1902 SWIGINTERN void OGRStyleTableShadow_ResetStyleStringReading(OGRStyleTableShadow *self){
1903         OGR_STBL_ResetStyleStringReading( (OGRStyleTableH) self );
1904    }
OGRStyleTableShadow_GetNextStyle(OGRStyleTableShadow * self)1905 SWIGINTERN char const *OGRStyleTableShadow_GetNextStyle(OGRStyleTableShadow *self){
1906         return OGR_STBL_GetNextStyle( (OGRStyleTableH) self );
1907    }
OGRStyleTableShadow_GetLastStyleName(OGRStyleTableShadow * self)1908 SWIGINTERN char const *OGRStyleTableShadow_GetLastStyleName(OGRStyleTableShadow *self){
1909         return OGR_STBL_GetLastStyleName( (OGRStyleTableH) self );
1910    }
OGRLayerShadow_GetRefCount(OGRLayerShadow * self)1911 SWIGINTERN int OGRLayerShadow_GetRefCount(OGRLayerShadow *self){
1912     return OGR_L_GetRefCount(self);
1913   }
OGRLayerShadow_SetSpatialFilter__SWIG_0(OGRLayerShadow * self,OGRGeometryShadow * filter)1914 SWIGINTERN void OGRLayerShadow_SetSpatialFilter__SWIG_0(OGRLayerShadow *self,OGRGeometryShadow *filter){
1915     OGR_L_SetSpatialFilter (self, filter);
1916   }
1917 
1918 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,double * val)1919 SWIG_AsVal_double SWIG_PERL_DECL_ARGS_2(SV *obj, double *val)
1920 {
1921   if (SvNIOK(obj)) {
1922     if (val) *val = SvNV(obj);
1923     return SWIG_OK;
1924   } else if (SvIOK(obj)) {
1925     if (val) *val = (double) SvIV(obj);
1926     return SWIG_AddCast(SWIG_OK);
1927   } else {
1928     const char *nptr = SvPV_nolen(obj);
1929     if (nptr) {
1930       char *endptr;
1931       double v;
1932       errno = 0;
1933       v = strtod(nptr, &endptr);
1934       if (errno == ERANGE) {
1935 	errno = 0;
1936 	return SWIG_OverflowError;
1937       } else {
1938 	if (*endptr == '\0') {
1939 	  if (val) *val = v;
1940 	  return SWIG_Str2NumCast(SWIG_OK);
1941 	}
1942       }
1943     }
1944   }
1945   return SWIG_TypeError;
1946 }
1947 
OGRLayerShadow_SetSpatialFilterRect__SWIG_0(OGRLayerShadow * self,double minx,double miny,double maxx,double maxy)1948 SWIGINTERN void OGRLayerShadow_SetSpatialFilterRect__SWIG_0(OGRLayerShadow *self,double minx,double miny,double maxx,double maxy){
1949     OGR_L_SetSpatialFilterRect(self, minx, miny, maxx, maxy);
1950   }
1951 
1952 #include <limits.h>
1953 #if !defined(SWIG_NO_LLONG_MAX)
1954 # if !defined(LLONG_MAX) && defined(__GNUC__) && defined (__LONG_LONG_MAX__)
1955 #   define LLONG_MAX __LONG_LONG_MAX__
1956 #   define LLONG_MIN (-LLONG_MAX - 1LL)
1957 #   define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL)
1958 # endif
1959 #endif
1960 
1961 
1962 #include <stdlib.h>
1963 #ifdef _MSC_VER
1964 # ifndef strtoull
1965 #  define strtoull _strtoui64
1966 # endif
1967 # ifndef strtoll
1968 #  define strtoll _strtoi64
1969 # endif
1970 #endif
1971 
1972 
1973 #include <float.h>
1974 
1975 
1976 #include <math.h>
1977 
1978 
1979 SWIGINTERNINLINE int
SWIG_CanCastAsInteger(double * d,double min,double max)1980 SWIG_CanCastAsInteger(double *d, double min, double max) {
1981   double x = *d;
1982   if ((min <= x && x <= max)) {
1983    double fx = floor(x);
1984    double cx = ceil(x);
1985    double rd =  ((x - fx) < 0.5) ? fx : cx; /* simple rint */
1986    if ((errno == EDOM) || (errno == ERANGE)) {
1987      errno = 0;
1988    } else {
1989      double summ, reps, diff;
1990      if (rd < x) {
1991        diff = x - rd;
1992      } else if (rd > x) {
1993        diff = rd - x;
1994      } else {
1995        return 1;
1996      }
1997      summ = rd + x;
1998      reps = diff/summ;
1999      if (reps < 8*DBL_EPSILON) {
2000        *d = rd;
2001        return 1;
2002      }
2003    }
2004   }
2005   return 0;
2006 }
2007 
2008 
2009 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,long * val)2010 SWIG_AsVal_long SWIG_PERL_DECL_ARGS_2(SV *obj, long* val)
2011 {
2012   if (SvUOK(obj)) {
2013     UV v = SvUV(obj);
2014     if (UVSIZE < sizeof(*val) || v <= LONG_MAX) {
2015       if (val) *val = v;
2016       return SWIG_OK;
2017     }
2018     return SWIG_OverflowError;
2019   } else if (SvIOK(obj)) {
2020     IV v = SvIV(obj);
2021     if (IVSIZE <= sizeof(*val) || (v >= LONG_MIN && v <= LONG_MAX)) {
2022       if(val) *val = v;
2023       return SWIG_OK;
2024     }
2025     return SWIG_OverflowError;
2026   } else {
2027     int dispatch = 0;
2028     const char *nptr = SvPV_nolen(obj);
2029     if (nptr) {
2030       char *endptr;
2031       long v;
2032       errno = 0;
2033       v = strtol(nptr, &endptr,0);
2034       if (errno == ERANGE) {
2035 	errno = 0;
2036 	return SWIG_OverflowError;
2037       } else {
2038 	if (*endptr == '\0') {
2039 	  if (val) *val = v;
2040 	  return SWIG_Str2NumCast(SWIG_OK);
2041 	}
2042       }
2043     }
2044     if (!dispatch) {
2045       double d;
2046       int res = SWIG_AddCast(SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(obj,&d));
2047       if (SWIG_IsOK(res) && SWIG_CanCastAsInteger(&d, LONG_MIN, LONG_MAX)) {
2048 	if (val) *val = (long)(d);
2049 	return res;
2050       }
2051     }
2052   }
2053   return SWIG_TypeError;
2054 }
2055 
2056 
2057 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,int * val)2058 SWIG_AsVal_int SWIG_PERL_DECL_ARGS_2(SV * obj, int *val)
2059 {
2060   long v;
2061   int res = SWIG_AsVal_long SWIG_PERL_CALL_ARGS_2(obj, &v);
2062   if (SWIG_IsOK(res)) {
2063     if ((v < INT_MIN || v > INT_MAX)) {
2064       return SWIG_OverflowError;
2065     } else {
2066       if (val) *val = static_cast< int >(v);
2067     }
2068   }
2069   return res;
2070 }
2071 
OGRLayerShadow_SetSpatialFilter__SWIG_1(OGRLayerShadow * self,int iGeomField,OGRGeometryShadow * filter)2072 SWIGINTERN void OGRLayerShadow_SetSpatialFilter__SWIG_1(OGRLayerShadow *self,int iGeomField,OGRGeometryShadow *filter){
2073     OGR_L_SetSpatialFilterEx (self, iGeomField, filter);
2074   }
OGRLayerShadow_SetSpatialFilterRect__SWIG_1(OGRLayerShadow * self,int iGeomField,double minx,double miny,double maxx,double maxy)2075 SWIGINTERN void OGRLayerShadow_SetSpatialFilterRect__SWIG_1(OGRLayerShadow *self,int iGeomField,double minx,double miny,double maxx,double maxy){
2076     OGR_L_SetSpatialFilterRectEx(self, iGeomField, minx, miny, maxx, maxy);
2077   }
OGRLayerShadow_GetSpatialFilter(OGRLayerShadow * self)2078 SWIGINTERN OGRGeometryShadow *OGRLayerShadow_GetSpatialFilter(OGRLayerShadow *self){
2079     return (OGRGeometryShadow *) OGR_L_GetSpatialFilter(self);
2080   }
OGRLayerShadow_SetAttributeFilter(OGRLayerShadow * self,char * filter_string)2081 SWIGINTERN OGRErr OGRLayerShadow_SetAttributeFilter(OGRLayerShadow *self,char *filter_string){
2082     return OGR_L_SetAttributeFilter((OGRLayerShadow*)self, filter_string);
2083   }
2084 
2085 
2086 #include "ogr_core.h"
2087 static char const *
OGRErrMessages(int rc)2088 OGRErrMessages( int rc ) {
2089   switch( rc ) {
2090   case OGRERR_NONE:
2091     return "OGR Error: None";
2092   case OGRERR_NOT_ENOUGH_DATA:
2093     return "OGR Error: Not enough data to deserialize";
2094   case OGRERR_NOT_ENOUGH_MEMORY:
2095     return "OGR Error: Not enough memory";
2096   case OGRERR_UNSUPPORTED_GEOMETRY_TYPE:
2097     return "OGR Error: Unsupported geometry type";
2098   case OGRERR_UNSUPPORTED_OPERATION:
2099     return "OGR Error: Unsupported operation";
2100   case OGRERR_CORRUPT_DATA:
2101     return "OGR Error: Corrupt data";
2102   case OGRERR_FAILURE:
2103     return "OGR Error: General Error";
2104   case OGRERR_UNSUPPORTED_SRS:
2105     return "OGR Error: Unsupported SRS";
2106   case OGRERR_INVALID_HANDLE:
2107     return "OGR Error: Invalid handle";
2108   case OGRERR_NON_EXISTING_FEATURE:
2109     return "OGR Error: Non existing feature";
2110   default:
2111     return "OGR Error: Unknown";
2112   }
2113 }
2114 
OGRLayerShadow_ResetReading(OGRLayerShadow * self)2115 SWIGINTERN void OGRLayerShadow_ResetReading(OGRLayerShadow *self){
2116     OGR_L_ResetReading(self);
2117   }
OGRLayerShadow_GetName(OGRLayerShadow * self)2118 SWIGINTERN char const *OGRLayerShadow_GetName(OGRLayerShadow *self){
2119     return OGR_L_GetName(self);
2120   }
OGRLayerShadow_GetGeomType(OGRLayerShadow * self)2121 SWIGINTERN OGRwkbGeometryType OGRLayerShadow_GetGeomType(OGRLayerShadow *self){
2122     return (OGRwkbGeometryType) OGR_L_GetGeomType(self);
2123   }
OGRLayerShadow_GetGeometryColumn(OGRLayerShadow * self)2124 SWIGINTERN char const *OGRLayerShadow_GetGeometryColumn(OGRLayerShadow *self){
2125     return OGR_L_GetGeometryColumn(self);
2126   }
OGRLayerShadow_GetFIDColumn(OGRLayerShadow * self)2127 SWIGINTERN char const *OGRLayerShadow_GetFIDColumn(OGRLayerShadow *self){
2128     return OGR_L_GetFIDColumn(self);
2129   }
OGRLayerShadow_GetFeature(OGRLayerShadow * self,GIntBig fid)2130 SWIGINTERN OGRFeatureShadow *OGRLayerShadow_GetFeature(OGRLayerShadow *self,GIntBig fid){
2131     return (OGRFeatureShadow*) OGR_L_GetFeature(self, fid);
2132   }
OGRLayerShadow_GetNextFeature(OGRLayerShadow * self)2133 SWIGINTERN OGRFeatureShadow *OGRLayerShadow_GetNextFeature(OGRLayerShadow *self){
2134     return (OGRFeatureShadow*) OGR_L_GetNextFeature(self);
2135   }
OGRLayerShadow_SetNextByIndex(OGRLayerShadow * self,GIntBig new_index)2136 SWIGINTERN OGRErr OGRLayerShadow_SetNextByIndex(OGRLayerShadow *self,GIntBig new_index){
2137     return OGR_L_SetNextByIndex(self, new_index);
2138   }
OGRLayerShadow_SetFeature(OGRLayerShadow * self,OGRFeatureShadow * feature)2139 SWIGINTERN OGRErr OGRLayerShadow_SetFeature(OGRLayerShadow *self,OGRFeatureShadow *feature){
2140     return OGR_L_SetFeature(self, feature);
2141   }
OGRLayerShadow_CreateFeature(OGRLayerShadow * self,OGRFeatureShadow * feature)2142 SWIGINTERN OGRErr OGRLayerShadow_CreateFeature(OGRLayerShadow *self,OGRFeatureShadow *feature){
2143     return OGR_L_CreateFeature(self, feature);
2144   }
OGRLayerShadow_DeleteFeature(OGRLayerShadow * self,GIntBig fid)2145 SWIGINTERN OGRErr OGRLayerShadow_DeleteFeature(OGRLayerShadow *self,GIntBig fid){
2146     return OGR_L_DeleteFeature(self, fid);
2147   }
OGRLayerShadow_SyncToDisk(OGRLayerShadow * self)2148 SWIGINTERN OGRErr OGRLayerShadow_SyncToDisk(OGRLayerShadow *self){
2149     return OGR_L_SyncToDisk(self);
2150   }
OGRLayerShadow_GetLayerDefn(OGRLayerShadow * self)2151 SWIGINTERN OGRFeatureDefnShadow *OGRLayerShadow_GetLayerDefn(OGRLayerShadow *self){
2152     return (OGRFeatureDefnShadow*) OGR_L_GetLayerDefn(self);
2153   }
OGRLayerShadow_GetFeatureCount(OGRLayerShadow * self,int force=1)2154 SWIGINTERN GIntBig OGRLayerShadow_GetFeatureCount(OGRLayerShadow *self,int force=1){
2155     return OGR_L_GetFeatureCount(self, force);
2156   }
2157 
2158     static SV *
CreateArrayFromDoubleArray(double * first,unsigned int size)2159         CreateArrayFromDoubleArray( double *first, unsigned int size ) {
2160         AV *av = (AV*)sv_2mortal((SV*)newAV());
2161         for( unsigned int i=0; i<size; i++ ) {
2162             av_store(av,i,newSVnv(*first));
2163             ++first;
2164         }
2165         return sv_2mortal(newRV((SV*)av));
2166     }
2167 
OGRLayerShadow_GetExtent(OGRLayerShadow * self,double argout[4],int force=1)2168 SWIGINTERN OGRErr OGRLayerShadow_GetExtent(OGRLayerShadow *self,double argout[4],int force=1){
2169 
2170 
2171 
2172     return OGR_L_GetExtent(self, (OGREnvelope*)argout, force);
2173   }
OGRLayerShadow_TestCapability(OGRLayerShadow * self,char const * cap)2174 SWIGINTERN bool OGRLayerShadow_TestCapability(OGRLayerShadow *self,char const *cap){
2175     return (OGR_L_TestCapability(self, cap) > 0);
2176   }
2177 
2178 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(bool value)2179 SWIG_From_bool  SWIG_PERL_DECL_ARGS_1(bool value)
2180 {
2181   return boolSV(value);
2182 }
2183 
OGRLayerShadow_CreateField(OGRLayerShadow * self,OGRFieldDefnShadow * field_def,int approx_ok=1)2184 SWIGINTERN OGRErr OGRLayerShadow_CreateField(OGRLayerShadow *self,OGRFieldDefnShadow *field_def,int approx_ok=1){
2185     return OGR_L_CreateField(self, field_def, approx_ok);
2186   }
OGRLayerShadow_DeleteField(OGRLayerShadow * self,int iField)2187 SWIGINTERN OGRErr OGRLayerShadow_DeleteField(OGRLayerShadow *self,int iField){
2188     return OGR_L_DeleteField(self, iField);
2189   }
OGRLayerShadow_ReorderField(OGRLayerShadow * self,int iOldFieldPos,int iNewFieldPos)2190 SWIGINTERN OGRErr OGRLayerShadow_ReorderField(OGRLayerShadow *self,int iOldFieldPos,int iNewFieldPos){
2191     return OGR_L_ReorderField(self, iOldFieldPos, iNewFieldPos);
2192   }
OGRLayerShadow_ReorderFields(OGRLayerShadow * self,int nList,int * pList)2193 SWIGINTERN OGRErr OGRLayerShadow_ReorderFields(OGRLayerShadow *self,int nList,int *pList){
2194     if (nList != OGR_FD_GetFieldCount(OGR_L_GetLayerDefn(self)))
2195     {
2196       CPLError(CE_Failure, CPLE_IllegalArg,
2197                "List should have %d elements",
2198                OGR_FD_GetFieldCount(OGR_L_GetLayerDefn(self)));
2199       return OGRERR_FAILURE;
2200     }
2201     return OGR_L_ReorderFields(self, pList);
2202   }
OGRLayerShadow_AlterFieldDefn(OGRLayerShadow * self,int iField,OGRFieldDefnShadow * field_def,int nFlags)2203 SWIGINTERN OGRErr OGRLayerShadow_AlterFieldDefn(OGRLayerShadow *self,int iField,OGRFieldDefnShadow *field_def,int nFlags){
2204     return OGR_L_AlterFieldDefn(self, iField, field_def, nFlags);
2205   }
OGRLayerShadow_CreateGeomField(OGRLayerShadow * self,OGRGeomFieldDefnShadow * field_def,int approx_ok=1)2206 SWIGINTERN OGRErr OGRLayerShadow_CreateGeomField(OGRLayerShadow *self,OGRGeomFieldDefnShadow *field_def,int approx_ok=1){
2207     return OGR_L_CreateGeomField(self, field_def, approx_ok);
2208   }
OGRLayerShadow_StartTransaction(OGRLayerShadow * self)2209 SWIGINTERN OGRErr OGRLayerShadow_StartTransaction(OGRLayerShadow *self){
2210     return OGR_L_StartTransaction(self);
2211   }
OGRLayerShadow_CommitTransaction(OGRLayerShadow * self)2212 SWIGINTERN OGRErr OGRLayerShadow_CommitTransaction(OGRLayerShadow *self){
2213     return OGR_L_CommitTransaction(self);
2214   }
OGRLayerShadow_RollbackTransaction(OGRLayerShadow * self)2215 SWIGINTERN OGRErr OGRLayerShadow_RollbackTransaction(OGRLayerShadow *self){
2216     return OGR_L_RollbackTransaction(self);
2217   }
OGRLayerShadow_FindFieldIndex(OGRLayerShadow * self,char const * pszFieldName,int bExactMatch)2218 SWIGINTERN int OGRLayerShadow_FindFieldIndex(OGRLayerShadow *self,char const *pszFieldName,int bExactMatch){
2219     return OGR_L_FindFieldIndex(self, pszFieldName, bExactMatch );
2220   }
OGRLayerShadow_GetSpatialRef(OGRLayerShadow * self)2221 SWIGINTERN OSRSpatialReferenceShadow *OGRLayerShadow_GetSpatialRef(OGRLayerShadow *self){
2222     OGRSpatialReferenceH ref =  OGR_L_GetSpatialRef(self);
2223     if( ref )
2224         OSRReference(ref);
2225     return (OSRSpatialReferenceShadow*) ref;
2226   }
OGRLayerShadow_GetFeaturesRead(OGRLayerShadow * self)2227 SWIGINTERN GIntBig OGRLayerShadow_GetFeaturesRead(OGRLayerShadow *self){
2228     return OGR_L_GetFeaturesRead(self);
2229   }
OGRLayerShadow_SetIgnoredFields(OGRLayerShadow * self,char const ** options)2230 SWIGINTERN OGRErr OGRLayerShadow_SetIgnoredFields(OGRLayerShadow *self,char const **options){
2231     return OGR_L_SetIgnoredFields( self, options );
2232   }
OGRLayerShadow_Intersection(OGRLayerShadow * self,OGRLayerShadow * method_layer,OGRLayerShadow * result_layer,char ** options=NULL,GDALProgressFunc callback=NULL,void * callback_data=NULL)2233 SWIGINTERN OGRErr OGRLayerShadow_Intersection(OGRLayerShadow *self,OGRLayerShadow *method_layer,OGRLayerShadow *result_layer,char **options=NULL,GDALProgressFunc callback=NULL,void *callback_data=NULL){
2234     return OGR_L_Intersection( self, method_layer, result_layer, options, callback, callback_data );
2235   }
OGRLayerShadow_Union(OGRLayerShadow * self,OGRLayerShadow * method_layer,OGRLayerShadow * result_layer,char ** options=NULL,GDALProgressFunc callback=NULL,void * callback_data=NULL)2236 SWIGINTERN OGRErr OGRLayerShadow_Union(OGRLayerShadow *self,OGRLayerShadow *method_layer,OGRLayerShadow *result_layer,char **options=NULL,GDALProgressFunc callback=NULL,void *callback_data=NULL){
2237     return OGR_L_Union( self, method_layer, result_layer, options, callback, callback_data );
2238   }
OGRLayerShadow_SymDifference(OGRLayerShadow * self,OGRLayerShadow * method_layer,OGRLayerShadow * result_layer,char ** options=NULL,GDALProgressFunc callback=NULL,void * callback_data=NULL)2239 SWIGINTERN OGRErr OGRLayerShadow_SymDifference(OGRLayerShadow *self,OGRLayerShadow *method_layer,OGRLayerShadow *result_layer,char **options=NULL,GDALProgressFunc callback=NULL,void *callback_data=NULL){
2240     return OGR_L_SymDifference( self, method_layer, result_layer, options, callback, callback_data );
2241   }
OGRLayerShadow_Identity(OGRLayerShadow * self,OGRLayerShadow * method_layer,OGRLayerShadow * result_layer,char ** options=NULL,GDALProgressFunc callback=NULL,void * callback_data=NULL)2242 SWIGINTERN OGRErr OGRLayerShadow_Identity(OGRLayerShadow *self,OGRLayerShadow *method_layer,OGRLayerShadow *result_layer,char **options=NULL,GDALProgressFunc callback=NULL,void *callback_data=NULL){
2243     return OGR_L_Identity( self, method_layer, result_layer, options, callback, callback_data );
2244   }
OGRLayerShadow_Update(OGRLayerShadow * self,OGRLayerShadow * method_layer,OGRLayerShadow * result_layer,char ** options=NULL,GDALProgressFunc callback=NULL,void * callback_data=NULL)2245 SWIGINTERN OGRErr OGRLayerShadow_Update(OGRLayerShadow *self,OGRLayerShadow *method_layer,OGRLayerShadow *result_layer,char **options=NULL,GDALProgressFunc callback=NULL,void *callback_data=NULL){
2246     return OGR_L_Update( self, method_layer, result_layer, options, callback, callback_data );
2247   }
OGRLayerShadow_Clip(OGRLayerShadow * self,OGRLayerShadow * method_layer,OGRLayerShadow * result_layer,char ** options=NULL,GDALProgressFunc callback=NULL,void * callback_data=NULL)2248 SWIGINTERN OGRErr OGRLayerShadow_Clip(OGRLayerShadow *self,OGRLayerShadow *method_layer,OGRLayerShadow *result_layer,char **options=NULL,GDALProgressFunc callback=NULL,void *callback_data=NULL){
2249     return OGR_L_Clip( self, method_layer, result_layer, options, callback, callback_data );
2250   }
OGRLayerShadow_Erase(OGRLayerShadow * self,OGRLayerShadow * method_layer,OGRLayerShadow * result_layer,char ** options=NULL,GDALProgressFunc callback=NULL,void * callback_data=NULL)2251 SWIGINTERN OGRErr OGRLayerShadow_Erase(OGRLayerShadow *self,OGRLayerShadow *method_layer,OGRLayerShadow *result_layer,char **options=NULL,GDALProgressFunc callback=NULL,void *callback_data=NULL){
2252     return OGR_L_Erase( self, method_layer, result_layer, options, callback, callback_data );
2253   }
OGRLayerShadow_GetStyleTable(OGRLayerShadow * self)2254 SWIGINTERN OGRStyleTableShadow *OGRLayerShadow_GetStyleTable(OGRLayerShadow *self){
2255     return (OGRStyleTableShadow*) OGR_L_GetStyleTable(self);
2256   }
OGRLayerShadow_SetStyleTable(OGRLayerShadow * self,OGRStyleTableShadow * table)2257 SWIGINTERN void OGRLayerShadow_SetStyleTable(OGRLayerShadow *self,OGRStyleTableShadow *table){
2258     if( table != NULL )
2259         OGR_L_SetStyleTable(self, (OGRStyleTableH) table);
2260   }
delete_OGRFeatureShadow(OGRFeatureShadow * self)2261 SWIGINTERN void delete_OGRFeatureShadow(OGRFeatureShadow *self){
2262     OGR_F_Destroy(self);
2263   }
new_OGRFeatureShadow(OGRFeatureDefnShadow * feature_def)2264 SWIGINTERN OGRFeatureShadow *new_OGRFeatureShadow(OGRFeatureDefnShadow *feature_def){
2265       return (OGRFeatureShadow*) OGR_F_Create( feature_def );
2266   }
OGRFeatureShadow_GetDefnRef(OGRFeatureShadow * self)2267 SWIGINTERN OGRFeatureDefnShadow *OGRFeatureShadow_GetDefnRef(OGRFeatureShadow *self){
2268     return (OGRFeatureDefnShadow*) OGR_F_GetDefnRef(self);
2269   }
OGRFeatureShadow_SetGeometry(OGRFeatureShadow * self,OGRGeometryShadow * geom)2270 SWIGINTERN OGRErr OGRFeatureShadow_SetGeometry(OGRFeatureShadow *self,OGRGeometryShadow *geom){
2271     return OGR_F_SetGeometry(self, geom);
2272   }
OGRFeatureShadow_SetGeometryDirectly(OGRFeatureShadow * self,OGRGeometryShadow * geom)2273 SWIGINTERN OGRErr OGRFeatureShadow_SetGeometryDirectly(OGRFeatureShadow *self,OGRGeometryShadow *geom){
2274     return OGR_F_SetGeometryDirectly(self, geom);
2275   }
OGRFeatureShadow_GetGeometryRef(OGRFeatureShadow * self)2276 SWIGINTERN OGRGeometryShadow *OGRFeatureShadow_GetGeometryRef(OGRFeatureShadow *self){
2277     return (OGRGeometryShadow*) OGR_F_GetGeometryRef(self);
2278   }
OGRFeatureShadow_SetGeomField__SWIG_0(OGRFeatureShadow * self,int iField,OGRGeometryShadow * geom)2279 SWIGINTERN OGRErr OGRFeatureShadow_SetGeomField__SWIG_0(OGRFeatureShadow *self,int iField,OGRGeometryShadow *geom){
2280     return OGR_F_SetGeomField(self, iField, geom);
2281   }
OGRFeatureShadow_SetGeomField__SWIG_1(OGRFeatureShadow * self,char const * field_name,OGRGeometryShadow * geom)2282 SWIGINTERN OGRErr OGRFeatureShadow_SetGeomField__SWIG_1(OGRFeatureShadow *self,char const *field_name,OGRGeometryShadow *geom){
2283       int iField = OGR_F_GetGeomFieldIndex(self, field_name);
2284       if (iField == -1)
2285       {
2286           CPLError(CE_Failure, 1, FIELD_NAME_ERROR_TMPL, field_name);
2287           return OGRERR_FAILURE;
2288       }
2289       else
2290           return OGR_F_SetGeomField(self, iField, geom);
2291   }
OGRFeatureShadow_SetGeomFieldDirectly__SWIG_0(OGRFeatureShadow * self,int iField,OGRGeometryShadow * geom)2292 SWIGINTERN OGRErr OGRFeatureShadow_SetGeomFieldDirectly__SWIG_0(OGRFeatureShadow *self,int iField,OGRGeometryShadow *geom){
2293     return OGR_F_SetGeomFieldDirectly(self, iField, geom);
2294   }
OGRFeatureShadow_SetGeomFieldDirectly__SWIG_1(OGRFeatureShadow * self,char const * field_name,OGRGeometryShadow * geom)2295 SWIGINTERN OGRErr OGRFeatureShadow_SetGeomFieldDirectly__SWIG_1(OGRFeatureShadow *self,char const *field_name,OGRGeometryShadow *geom){
2296       int iField = OGR_F_GetGeomFieldIndex(self, field_name);
2297       if (iField == -1)
2298       {
2299           CPLError(CE_Failure, 1, FIELD_NAME_ERROR_TMPL, field_name);
2300           return OGRERR_FAILURE;
2301       }
2302       else
2303           return OGR_F_SetGeomFieldDirectly(self, iField, geom);
2304   }
OGRFeatureShadow_GetGeomFieldRef__SWIG_0(OGRFeatureShadow * self,int iField)2305 SWIGINTERN OGRGeometryShadow *OGRFeatureShadow_GetGeomFieldRef__SWIG_0(OGRFeatureShadow *self,int iField){
2306     return (OGRGeometryShadow*) OGR_F_GetGeomFieldRef(self, iField);
2307   }
OGRFeatureShadow_GetGeomFieldRef__SWIG_1(OGRFeatureShadow * self,char const * field_name)2308 SWIGINTERN OGRGeometryShadow *OGRFeatureShadow_GetGeomFieldRef__SWIG_1(OGRFeatureShadow *self,char const *field_name){
2309       int i = OGR_F_GetGeomFieldIndex(self, field_name);
2310       if (i == -1)
2311       {
2312           CPLError(CE_Failure, 1, FIELD_NAME_ERROR_TMPL, field_name);
2313           return NULL;
2314       }
2315       else
2316           return (OGRGeometryShadow*) OGR_F_GetGeomFieldRef(self, i);
2317   }
OGRFeatureShadow_Clone(OGRFeatureShadow * self)2318 SWIGINTERN OGRFeatureShadow *OGRFeatureShadow_Clone(OGRFeatureShadow *self){
2319     return (OGRFeatureShadow*) OGR_F_Clone(self);
2320   }
OGRFeatureShadow_Equal(OGRFeatureShadow * self,OGRFeatureShadow * feature)2321 SWIGINTERN bool OGRFeatureShadow_Equal(OGRFeatureShadow *self,OGRFeatureShadow *feature){
2322     return (OGR_F_Equal(self, feature) > 0);
2323   }
OGRFeatureShadow_GetFieldCount(OGRFeatureShadow * self)2324 SWIGINTERN int OGRFeatureShadow_GetFieldCount(OGRFeatureShadow *self){
2325     return OGR_F_GetFieldCount(self);
2326   }
OGRFeatureShadow_GetFieldDefnRef(OGRFeatureShadow * self,int id)2327 SWIGINTERN OGRFieldDefnShadow *OGRFeatureShadow_GetFieldDefnRef(OGRFeatureShadow *self,int id){
2328     return (OGRFieldDefnShadow *) OGR_F_GetFieldDefnRef(self, id);
2329   }
OGRFeatureShadow_GetGeomFieldCount(OGRFeatureShadow * self)2330 SWIGINTERN int OGRFeatureShadow_GetGeomFieldCount(OGRFeatureShadow *self){
2331     return OGR_F_GetGeomFieldCount(self);
2332   }
OGRFeatureShadow_GetGeomFieldDefnRef(OGRFeatureShadow * self,int id)2333 SWIGINTERN OGRGeomFieldDefnShadow *OGRFeatureShadow_GetGeomFieldDefnRef(OGRFeatureShadow *self,int id){
2334       return (OGRGeomFieldDefnShadow *) OGR_F_GetGeomFieldDefnRef(self, id);
2335   }
OGRFeatureShadow_GetFieldAsString(OGRFeatureShadow * self,int id)2336 SWIGINTERN char const *OGRFeatureShadow_GetFieldAsString(OGRFeatureShadow *self,int id){
2337     return (const char *) OGR_F_GetFieldAsString(self, id);
2338   }
OGRFeatureShadow_GetFieldAsInteger(OGRFeatureShadow * self,int id)2339 SWIGINTERN int OGRFeatureShadow_GetFieldAsInteger(OGRFeatureShadow *self,int id){
2340     return OGR_F_GetFieldAsInteger(self, id);
2341   }
OGRFeatureShadow_GetFieldAsInteger64(OGRFeatureShadow * self,int id)2342 SWIGINTERN GIntBig OGRFeatureShadow_GetFieldAsInteger64(OGRFeatureShadow *self,int id){
2343     return OGR_F_GetFieldAsInteger64(self, id);
2344   }
OGRFeatureShadow_GetFieldAsDouble(OGRFeatureShadow * self,int id)2345 SWIGINTERN double OGRFeatureShadow_GetFieldAsDouble(OGRFeatureShadow *self,int id){
2346     return OGR_F_GetFieldAsDouble(self, id);
2347   }
2348 
2349 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(double value)2350 SWIG_From_double  SWIG_PERL_DECL_ARGS_1(double value)
2351 {
2352   return sv_2mortal(newSVnv(value));
2353 }
2354 
2355 
2356 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(float value)2357 SWIG_From_float  SWIG_PERL_DECL_ARGS_1(float value)
2358 {
2359   return SWIG_From_double  SWIG_PERL_CALL_ARGS_1(value);
2360 }
2361 
OGRFeatureShadow_GetFieldAsDateTime(OGRFeatureShadow * self,int id,int * pnYear,int * pnMonth,int * pnDay,int * pnHour,int * pnMinute,float * pfSecond,int * pnTZFlag)2362 SWIGINTERN void OGRFeatureShadow_GetFieldAsDateTime(OGRFeatureShadow *self,int id,int *pnYear,int *pnMonth,int *pnDay,int *pnHour,int *pnMinute,float *pfSecond,int *pnTZFlag){
2363       OGR_F_GetFieldAsDateTimeEx(self, id, pnYear, pnMonth, pnDay,
2364 			       pnHour, pnMinute, pfSecond,
2365 			       pnTZFlag);
2366   }
2367 
2368     static SV *
CreateArrayFromIntArray(int * first,unsigned int size)2369         CreateArrayFromIntArray( int *first, unsigned int size ) {
2370         AV *av = (AV*)sv_2mortal((SV*)newAV());
2371         for( unsigned int i=0; i<size; i++ ) {
2372             av_store(av,i,newSViv(*first));
2373             ++first;
2374         }
2375         return sv_2mortal(newRV((SV*)av));
2376     }
2377 
OGRFeatureShadow_GetFieldAsIntegerList(OGRFeatureShadow * self,int id,int * nLen,int const ** pList)2378 SWIGINTERN void OGRFeatureShadow_GetFieldAsIntegerList(OGRFeatureShadow *self,int id,int *nLen,int const **pList){
2379       *pList = OGR_F_GetFieldAsIntegerList(self, id, nLen);
2380   }
2381 
2382 #define LENGTH_OF_GIntBig_AS_STRING 30
2383     static SV *
CreateArrayFromGIntBigArray(GIntBig * first,unsigned int size)2384         CreateArrayFromGIntBigArray( GIntBig *first, unsigned int size ) {
2385         AV *av = (AV*)sv_2mortal((SV*)newAV());
2386         for( unsigned int i=0; i<size; i++ ) {
2387             char s[LENGTH_OF_GIntBig_AS_STRING];
2388             snprintf(s, LENGTH_OF_GIntBig_AS_STRING-1, CPL_FRMT_GIB, *first);
2389             av_store(av,i,newSVpv(s, 0));
2390             ++first;
2391         }
2392         return sv_2mortal(newRV((SV*)av));
2393     }
2394 
OGRFeatureShadow_GetFieldAsInteger64List(OGRFeatureShadow * self,int id,int * nLen,GIntBig const ** pList)2395 SWIGINTERN void OGRFeatureShadow_GetFieldAsInteger64List(OGRFeatureShadow *self,int id,int *nLen,GIntBig const **pList){
2396       *pList = OGR_F_GetFieldAsInteger64List(self, id, nLen);
2397   }
OGRFeatureShadow_GetFieldAsDoubleList(OGRFeatureShadow * self,int id,int * nLen,double const ** pList)2398 SWIGINTERN void OGRFeatureShadow_GetFieldAsDoubleList(OGRFeatureShadow *self,int id,int *nLen,double const **pList){
2399       *pList = OGR_F_GetFieldAsDoubleList(self, id, nLen);
2400   }
2401 
2402     static SV *
CreateArrayFromStringArray(char ** first)2403         CreateArrayFromStringArray( char **first ) {
2404         AV *av = (AV*)sv_2mortal((SV*)newAV());
2405         for( unsigned int i = 0; *first != NULL; i++ ) {
2406             SV *sv = newSVpv(*first, strlen(*first));
2407             SvUTF8_on(sv); /* expecting UTF-8 from GDAL */
2408             av_store(av,i,sv);
2409             ++first;
2410         }
2411         return sv_2mortal(newRV((SV*)av));
2412     }
2413 
OGRFeatureShadow_GetFieldAsStringList(OGRFeatureShadow * self,int id,char *** pList)2414 SWIGINTERN void OGRFeatureShadow_GetFieldAsStringList(OGRFeatureShadow *self,int id,char ***pList){
2415       *pList = OGR_F_GetFieldAsStringList(self, id);
2416   }
OGRFeatureShadow_GetFieldAsBinary(OGRFeatureShadow * self,int id,int * nLen,char ** pBuf)2417 SWIGINTERN OGRErr OGRFeatureShadow_GetFieldAsBinary(OGRFeatureShadow *self,int id,int *nLen,char **pBuf){
2418     GByte* pabyBlob = OGR_F_GetFieldAsBinary(self, id, nLen);
2419     *pBuf = (char*)malloc(*nLen);
2420     memcpy(*pBuf, pabyBlob, *nLen);
2421     return OGRERR_NONE;
2422   }
OGRFeatureShadow_IsFieldSet(OGRFeatureShadow * self,int id)2423 SWIGINTERN bool OGRFeatureShadow_IsFieldSet(OGRFeatureShadow *self,int id){
2424     return (OGR_F_IsFieldSet(self, id) > 0);
2425   }
OGRFeatureShadow_IsFieldNull(OGRFeatureShadow * self,int id)2426 SWIGINTERN bool OGRFeatureShadow_IsFieldNull(OGRFeatureShadow *self,int id){
2427     return (OGR_F_IsFieldNull(self, id) > 0);
2428   }
OGRFeatureShadow_IsFieldSetAndNotNull(OGRFeatureShadow * self,int id)2429 SWIGINTERN bool OGRFeatureShadow_IsFieldSetAndNotNull(OGRFeatureShadow *self,int id){
2430     return (OGR_F_IsFieldSetAndNotNull(self, id) > 0);
2431   }
OGRFeatureShadow_GetFieldIndex(OGRFeatureShadow * self,char const * field_name)2432 SWIGINTERN int OGRFeatureShadow_GetFieldIndex(OGRFeatureShadow *self,char const *field_name){
2433       // Do not issue an error if the field doesn't exist. It is intended to be silent
2434       return OGR_F_GetFieldIndex(self, field_name);
2435   }
OGRFeatureShadow_GetGeomFieldIndex(OGRFeatureShadow * self,char const * field_name)2436 SWIGINTERN int OGRFeatureShadow_GetGeomFieldIndex(OGRFeatureShadow *self,char const *field_name){
2437       // Do not issue an error if the field doesn't exist. It is intended to be silent
2438       return OGR_F_GetGeomFieldIndex(self, field_name);
2439   }
OGRFeatureShadow_GetFID(OGRFeatureShadow * self)2440 SWIGINTERN GIntBig OGRFeatureShadow_GetFID(OGRFeatureShadow *self){
2441     return OGR_F_GetFID(self);
2442   }
OGRFeatureShadow_SetFID(OGRFeatureShadow * self,GIntBig fid)2443 SWIGINTERN OGRErr OGRFeatureShadow_SetFID(OGRFeatureShadow *self,GIntBig fid){
2444     return OGR_F_SetFID(self, fid);
2445   }
OGRFeatureShadow_DumpReadable(OGRFeatureShadow * self)2446 SWIGINTERN void OGRFeatureShadow_DumpReadable(OGRFeatureShadow *self){
2447     OGR_F_DumpReadable(self, NULL);
2448   }
OGRFeatureShadow_UnsetField(OGRFeatureShadow * self,int id)2449 SWIGINTERN void OGRFeatureShadow_UnsetField(OGRFeatureShadow *self,int id){
2450     OGR_F_UnsetField(self, id);
2451   }
OGRFeatureShadow_SetFieldNull(OGRFeatureShadow * self,int id)2452 SWIGINTERN void OGRFeatureShadow_SetFieldNull(OGRFeatureShadow *self,int id){
2453     OGR_F_SetFieldNull(self, id);
2454   }
OGRFeatureShadow_SetField__SWIG_0(OGRFeatureShadow * self,int id,char const * value)2455 SWIGINTERN void OGRFeatureShadow_SetField__SWIG_0(OGRFeatureShadow *self,int id,char const *value){
2456     OGR_F_SetFieldString(self, id, value);
2457   }
OGRFeatureShadow_SetFieldInteger64(OGRFeatureShadow * self,int id,GIntBig value)2458 SWIGINTERN void OGRFeatureShadow_SetFieldInteger64(OGRFeatureShadow *self,int id,GIntBig value){
2459     OGR_F_SetFieldInteger64(self, id, value);
2460   }
OGRFeatureShadow_SetField__SWIG_1(OGRFeatureShadow * self,int id,int value)2461 SWIGINTERN void OGRFeatureShadow_SetField__SWIG_1(OGRFeatureShadow *self,int id,int value){
2462     OGR_F_SetFieldInteger(self, id, value);
2463   }
OGRFeatureShadow_SetField__SWIG_2(OGRFeatureShadow * self,int id,double value)2464 SWIGINTERN void OGRFeatureShadow_SetField__SWIG_2(OGRFeatureShadow *self,int id,double value){
2465     OGR_F_SetFieldDouble(self, id, value);
2466   }
2467 
2468 /* Getting isfinite working pre C99 across multiple platforms is non-trivial. Users can provide SWIG_isfinite on older platforms. */
2469 #ifndef SWIG_isfinite
2470 /* isfinite() is a macro for C99 */
2471 # if defined(isfinite)
2472 #  define SWIG_isfinite(X) (isfinite(X))
2473 # elif defined __cplusplus && __cplusplus >= 201103L
2474 /* Use a template so that this works whether isfinite() is std::isfinite() or
2475  * in the global namespace.  The reality seems to vary between compiler
2476  * versions.
2477  *
2478  * Make sure namespace std exists to avoid compiler warnings.
2479  *
2480  * extern "C++" is required as this fragment can end up inside an extern "C" { } block
2481  */
2482 namespace std { }
2483 extern "C++" template<typename T>
SWIG_isfinite_func(T x)2484 inline int SWIG_isfinite_func(T x) {
2485   using namespace std;
2486   return isfinite(x);
2487 }
2488 #  define SWIG_isfinite(X) (SWIG_isfinite_func(X))
2489 # elif defined(_MSC_VER)
2490 #  define SWIG_isfinite(X) (_finite(X))
2491 # elif defined(__sun) && defined(__SVR4)
2492 #  include <ieeefp.h>
2493 #  define SWIG_isfinite(X) (finite(X))
2494 # endif
2495 #endif
2496 
2497 
2498 /* Accept infinite as a valid float value unless we are unable to check if a value is finite */
2499 #ifdef SWIG_isfinite
2500 # define SWIG_Float_Overflow_Check(X) ((X < -FLT_MAX || X > FLT_MAX) && SWIG_isfinite(X))
2501 #else
2502 # define SWIG_Float_Overflow_Check(X) ((X < -FLT_MAX || X > FLT_MAX))
2503 #endif
2504 
2505 
2506 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,float * val)2507 SWIG_AsVal_float SWIG_PERL_DECL_ARGS_2(SV * obj, float *val)
2508 {
2509   double v;
2510   int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(obj, &v);
2511   if (SWIG_IsOK(res)) {
2512     if (SWIG_Float_Overflow_Check(v)) {
2513       return SWIG_OverflowError;
2514     } else {
2515       if (val) *val = static_cast< float >(v);
2516     }
2517   }
2518   return res;
2519 }
2520 
OGRFeatureShadow_SetField__SWIG_3(OGRFeatureShadow * self,int id,int year,int month,int day,int hour,int minute,float second,int tzflag)2521 SWIGINTERN void OGRFeatureShadow_SetField__SWIG_3(OGRFeatureShadow *self,int id,int year,int month,int day,int hour,int minute,float second,int tzflag){
2522     OGR_F_SetFieldDateTimeEx(self, id, year, month, day,
2523                              hour, minute, second,
2524                              tzflag);
2525   }
OGRFeatureShadow_SetFieldIntegerList(OGRFeatureShadow * self,int id,int nList,int * pList)2526 SWIGINTERN void OGRFeatureShadow_SetFieldIntegerList(OGRFeatureShadow *self,int id,int nList,int *pList){
2527       OGR_F_SetFieldIntegerList(self, id, nList, pList);
2528   }
OGRFeatureShadow_SetFieldInteger64List(OGRFeatureShadow * self,int id,int nList,GIntBig * pList)2529 SWIGINTERN void OGRFeatureShadow_SetFieldInteger64List(OGRFeatureShadow *self,int id,int nList,GIntBig *pList){
2530       OGR_F_SetFieldInteger64List(self, id, nList, pList);
2531   }
OGRFeatureShadow_SetFieldDoubleList(OGRFeatureShadow * self,int id,int nList,double * pList)2532 SWIGINTERN void OGRFeatureShadow_SetFieldDoubleList(OGRFeatureShadow *self,int id,int nList,double *pList){
2533       OGR_F_SetFieldDoubleList(self, id, nList, pList);
2534   }
OGRFeatureShadow_SetFieldStringList(OGRFeatureShadow * self,int id,char ** pList)2535 SWIGINTERN void OGRFeatureShadow_SetFieldStringList(OGRFeatureShadow *self,int id,char **pList){
2536       OGR_F_SetFieldStringList(self, id, pList);
2537   }
OGRFeatureShadow_SetFieldBinary(OGRFeatureShadow * self,int i,int nBytes,GByte * pabyBuf)2538 SWIGINTERN void OGRFeatureShadow_SetFieldBinary(OGRFeatureShadow *self,int i,int nBytes,GByte *pabyBuf){
2539       OGR_F_SetFieldBinary(self, i, nBytes, pabyBuf);
2540   }
OGRFeatureShadow_SetFieldBinaryFromHexString(OGRFeatureShadow * self,int id,char const * pszValue)2541 SWIGINTERN void OGRFeatureShadow_SetFieldBinaryFromHexString(OGRFeatureShadow *self,int id,char const *pszValue){
2542      int nBytes;
2543      GByte* pabyBuf = CPLHexToBinary(pszValue, &nBytes );
2544      OGR_F_SetFieldBinary(self, id, nBytes, pabyBuf);
2545      CPLFree(pabyBuf);
2546   }
OGRFeatureShadow_SetFrom(OGRFeatureShadow * self,OGRFeatureShadow * other,int forgiving=1)2547 SWIGINTERN OGRErr OGRFeatureShadow_SetFrom(OGRFeatureShadow *self,OGRFeatureShadow *other,int forgiving=1){
2548     return OGR_F_SetFrom(self, other, forgiving);
2549   }
OGRFeatureShadow_SetFromWithMap(OGRFeatureShadow * self,OGRFeatureShadow * other,int forgiving,int nList,int * pList)2550 SWIGINTERN OGRErr OGRFeatureShadow_SetFromWithMap(OGRFeatureShadow *self,OGRFeatureShadow *other,int forgiving,int nList,int *pList){
2551     if (nList != OGR_F_GetFieldCount(other))
2552     {
2553         CPLError(CE_Failure, CPLE_AppDefined,
2554                  "The size of map doesn't match with the field count of the source feature");
2555         return OGRERR_FAILURE;
2556     }
2557     return OGR_F_SetFromWithMap(self, other, forgiving, pList);
2558   }
OGRFeatureShadow_GetStyleString(OGRFeatureShadow * self)2559 SWIGINTERN char const *OGRFeatureShadow_GetStyleString(OGRFeatureShadow *self){
2560     return (const char*) OGR_F_GetStyleString(self);
2561   }
OGRFeatureShadow_SetStyleString(OGRFeatureShadow * self,char const * the_string)2562 SWIGINTERN void OGRFeatureShadow_SetStyleString(OGRFeatureShadow *self,char const *the_string){
2563     OGR_F_SetStyleString(self, the_string);
2564   }
OGRFeatureShadow_GetFieldType(OGRFeatureShadow * self,int id)2565 SWIGINTERN OGRFieldType OGRFeatureShadow_GetFieldType(OGRFeatureShadow *self,int id){
2566       OGRFieldDefnH fd = OGR_F_GetFieldDefnRef( self,  id );
2567       if (fd)
2568           return (OGRFieldType) OGR_Fld_GetType( fd );
2569       else
2570           return (OGRFieldType)0;
2571   }
OGRFeatureShadow_Validate(OGRFeatureShadow * self,int flags=OGR_F_VAL_ALL,int bEmitError=TRUE)2572 SWIGINTERN int OGRFeatureShadow_Validate(OGRFeatureShadow *self,int flags=OGR_F_VAL_ALL,int bEmitError=TRUE){
2573     return OGR_F_Validate(self, flags, bEmitError);
2574   }
OGRFeatureShadow_FillUnsetWithDefault(OGRFeatureShadow * self,int bNotNullableOnly=FALSE,char ** options=NULL)2575 SWIGINTERN void OGRFeatureShadow_FillUnsetWithDefault(OGRFeatureShadow *self,int bNotNullableOnly=FALSE,char **options=NULL){
2576     OGR_F_FillUnsetWithDefault(self, bNotNullableOnly, options );
2577   }
OGRFeatureShadow_GetNativeData(OGRFeatureShadow * self)2578 SWIGINTERN char const *OGRFeatureShadow_GetNativeData(OGRFeatureShadow *self){
2579     return OGR_F_GetNativeData(self);
2580   }
OGRFeatureShadow_GetNativeMediaType(OGRFeatureShadow * self)2581 SWIGINTERN char const *OGRFeatureShadow_GetNativeMediaType(OGRFeatureShadow *self){
2582     return OGR_F_GetNativeMediaType(self);
2583   }
OGRFeatureShadow_SetNativeData(OGRFeatureShadow * self,char const * nativeData)2584 SWIGINTERN void OGRFeatureShadow_SetNativeData(OGRFeatureShadow *self,char const *nativeData){
2585     OGR_F_SetNativeData(self, nativeData);
2586   }
OGRFeatureShadow_SetNativeMediaType(OGRFeatureShadow * self,char const * nativeMediaType)2587 SWIGINTERN void OGRFeatureShadow_SetNativeMediaType(OGRFeatureShadow *self,char const *nativeMediaType){
2588     OGR_F_SetNativeMediaType(self, nativeMediaType);
2589   }
2590 
ValidateOGRGeometryType(OGRwkbGeometryType field_type)2591     static int ValidateOGRGeometryType(OGRwkbGeometryType field_type)
2592     {
2593         switch(field_type)
2594         {
2595             case wkbUnknown:
2596             case wkbPoint:
2597             case wkbLineString:
2598             case wkbPolygon:
2599             case wkbMultiPoint:
2600             case wkbMultiLineString:
2601             case wkbMultiPolygon:
2602             case wkbGeometryCollection:
2603             case wkbCircularString:
2604             case wkbCompoundCurve:
2605             case wkbCurvePolygon:
2606             case wkbMultiCurve:
2607             case wkbMultiSurface:
2608             case wkbCurve:
2609             case wkbSurface:
2610             case wkbTriangle:
2611             case wkbTIN:
2612             case wkbPolyhedralSurface:
2613             case wkbNone:
2614             /*case wkbLinearRing:*/
2615             case wkbCircularStringZ:
2616             case wkbCompoundCurveZ:
2617             case wkbCurvePolygonZ:
2618             case wkbMultiCurveZ:
2619             case wkbMultiSurfaceZ:
2620             case wkbCurveZ:
2621             case wkbSurfaceZ:
2622             case wkbTriangleZ:
2623             case wkbTINZ:
2624             case wkbPolyhedralSurfaceZ:
2625             case wkbPoint25D:
2626             case wkbLineString25D:
2627             case wkbPolygon25D:
2628             case wkbMultiPoint25D:
2629             case wkbMultiLineString25D:
2630             case wkbMultiPolygon25D:
2631             case wkbGeometryCollection25D:
2632             case wkbPointM:
2633             case wkbLineStringM:
2634             case wkbPolygonM:
2635             case wkbMultiPointM:
2636             case wkbMultiLineStringM:
2637             case wkbMultiPolygonM:
2638             case wkbGeometryCollectionM:
2639             case wkbCircularStringM:
2640             case wkbCompoundCurveM:
2641             case wkbCurvePolygonM:
2642             case wkbMultiCurveM:
2643             case wkbMultiSurfaceM:
2644             case wkbCurveM:
2645             case wkbSurfaceM:
2646             case wkbTriangleM:
2647             case wkbTINM:
2648             case wkbPolyhedralSurfaceM:
2649             case wkbPointZM:
2650             case wkbLineStringZM:
2651             case wkbPolygonZM:
2652             case wkbMultiPointZM:
2653             case wkbMultiLineStringZM:
2654             case wkbMultiPolygonZM:
2655             case wkbGeometryCollectionZM:
2656             case wkbCircularStringZM:
2657             case wkbCompoundCurveZM:
2658             case wkbCurvePolygonZM:
2659             case wkbMultiCurveZM:
2660             case wkbMultiSurfaceZM:
2661             case wkbCurveZM:
2662             case wkbSurfaceZM:
2663             case wkbTriangleZM:
2664             case wkbTINZM:
2665             case wkbPolyhedralSurfaceZM:
2666                 return TRUE;
2667             default:
2668                 CPLError(CE_Failure, CPLE_IllegalArg, "Illegal geometry type value");
2669                 return FALSE;
2670         }
2671     }
2672 
delete_OGRFeatureDefnShadow(OGRFeatureDefnShadow * self)2673 SWIGINTERN void delete_OGRFeatureDefnShadow(OGRFeatureDefnShadow *self){
2674     /*OGR_FD_Destroy(self);*/
2675     OGR_FD_Release( OGRFeatureDefnH(self) );
2676   }
new_OGRFeatureDefnShadow(char const * name_null_ok=NULL)2677 SWIGINTERN OGRFeatureDefnShadow *new_OGRFeatureDefnShadow(char const *name_null_ok=NULL){
2678     OGRFeatureDefnH h = OGR_FD_Create(name_null_ok);
2679     OGR_FD_Reference(h);
2680     return (OGRFeatureDefnShadow* )h;
2681   }
OGRFeatureDefnShadow_GetName(OGRFeatureDefnShadow * self)2682 SWIGINTERN char const *OGRFeatureDefnShadow_GetName(OGRFeatureDefnShadow *self){
2683     return OGR_FD_GetName(self);
2684   }
OGRFeatureDefnShadow_GetFieldCount(OGRFeatureDefnShadow * self)2685 SWIGINTERN int OGRFeatureDefnShadow_GetFieldCount(OGRFeatureDefnShadow *self){
2686     return OGR_FD_GetFieldCount(self);
2687   }
OGRFeatureDefnShadow_GetFieldDefn(OGRFeatureDefnShadow * self,int i)2688 SWIGINTERN OGRFieldDefnShadow *OGRFeatureDefnShadow_GetFieldDefn(OGRFeatureDefnShadow *self,int i){
2689     return (OGRFieldDefnShadow*) OGR_FD_GetFieldDefn(self, i);
2690   }
OGRFeatureDefnShadow_GetFieldIndex(OGRFeatureDefnShadow * self,char const * field_name)2691 SWIGINTERN int OGRFeatureDefnShadow_GetFieldIndex(OGRFeatureDefnShadow *self,char const *field_name){
2692       // Do not issue an error if the field doesn't exist. It is intended to be silent
2693       return OGR_FD_GetFieldIndex(self, field_name);
2694   }
OGRFeatureDefnShadow_AddFieldDefn(OGRFeatureDefnShadow * self,OGRFieldDefnShadow * defn)2695 SWIGINTERN void OGRFeatureDefnShadow_AddFieldDefn(OGRFeatureDefnShadow *self,OGRFieldDefnShadow *defn){
2696     OGR_FD_AddFieldDefn(self, defn);
2697   }
OGRFeatureDefnShadow_GetGeomFieldCount(OGRFeatureDefnShadow * self)2698 SWIGINTERN int OGRFeatureDefnShadow_GetGeomFieldCount(OGRFeatureDefnShadow *self){
2699     return OGR_FD_GetGeomFieldCount(self);
2700   }
OGRFeatureDefnShadow_GetGeomFieldDefn(OGRFeatureDefnShadow * self,int i)2701 SWIGINTERN OGRGeomFieldDefnShadow *OGRFeatureDefnShadow_GetGeomFieldDefn(OGRFeatureDefnShadow *self,int i){
2702     return (OGRGeomFieldDefnShadow*) OGR_FD_GetGeomFieldDefn(self, i);
2703   }
OGRFeatureDefnShadow_GetGeomFieldIndex(OGRFeatureDefnShadow * self,char const * field_name)2704 SWIGINTERN int OGRFeatureDefnShadow_GetGeomFieldIndex(OGRFeatureDefnShadow *self,char const *field_name){
2705       // Do not issue an error if the field doesn't exist. It is intended to be silent
2706       return OGR_FD_GetGeomFieldIndex(self, field_name);
2707   }
OGRFeatureDefnShadow_AddGeomFieldDefn(OGRFeatureDefnShadow * self,OGRGeomFieldDefnShadow * defn)2708 SWIGINTERN void OGRFeatureDefnShadow_AddGeomFieldDefn(OGRFeatureDefnShadow *self,OGRGeomFieldDefnShadow *defn){
2709     OGR_FD_AddGeomFieldDefn(self, defn);
2710   }
OGRFeatureDefnShadow_DeleteGeomFieldDefn(OGRFeatureDefnShadow * self,int idx)2711 SWIGINTERN OGRErr OGRFeatureDefnShadow_DeleteGeomFieldDefn(OGRFeatureDefnShadow *self,int idx){
2712     return OGR_FD_DeleteGeomFieldDefn(self, idx);
2713   }
OGRFeatureDefnShadow_GetGeomType(OGRFeatureDefnShadow * self)2714 SWIGINTERN OGRwkbGeometryType OGRFeatureDefnShadow_GetGeomType(OGRFeatureDefnShadow *self){
2715     return (OGRwkbGeometryType) OGR_FD_GetGeomType(self);
2716   }
OGRFeatureDefnShadow_SetGeomType(OGRFeatureDefnShadow * self,OGRwkbGeometryType geom_type)2717 SWIGINTERN void OGRFeatureDefnShadow_SetGeomType(OGRFeatureDefnShadow *self,OGRwkbGeometryType geom_type){
2718     if( ValidateOGRGeometryType(geom_type) )
2719         OGR_FD_SetGeomType(self, geom_type);
2720   }
OGRFeatureDefnShadow_GetReferenceCount(OGRFeatureDefnShadow * self)2721 SWIGINTERN int OGRFeatureDefnShadow_GetReferenceCount(OGRFeatureDefnShadow *self){
2722     return OGR_FD_GetReferenceCount(self);
2723   }
OGRFeatureDefnShadow_IsGeometryIgnored(OGRFeatureDefnShadow * self)2724 SWIGINTERN int OGRFeatureDefnShadow_IsGeometryIgnored(OGRFeatureDefnShadow *self){
2725     return OGR_FD_IsGeometryIgnored(self);
2726   }
OGRFeatureDefnShadow_SetGeometryIgnored(OGRFeatureDefnShadow * self,int bIgnored)2727 SWIGINTERN void OGRFeatureDefnShadow_SetGeometryIgnored(OGRFeatureDefnShadow *self,int bIgnored){
2728     return OGR_FD_SetGeometryIgnored(self,bIgnored);
2729   }
OGRFeatureDefnShadow_IsStyleIgnored(OGRFeatureDefnShadow * self)2730 SWIGINTERN int OGRFeatureDefnShadow_IsStyleIgnored(OGRFeatureDefnShadow *self){
2731     return OGR_FD_IsStyleIgnored(self);
2732   }
OGRFeatureDefnShadow_SetStyleIgnored(OGRFeatureDefnShadow * self,int bIgnored)2733 SWIGINTERN void OGRFeatureDefnShadow_SetStyleIgnored(OGRFeatureDefnShadow *self,int bIgnored){
2734     return OGR_FD_SetStyleIgnored(self,bIgnored);
2735   }
OGRFeatureDefnShadow_IsSame(OGRFeatureDefnShadow * self,OGRFeatureDefnShadow * other_defn)2736 SWIGINTERN int OGRFeatureDefnShadow_IsSame(OGRFeatureDefnShadow *self,OGRFeatureDefnShadow *other_defn){
2737     return OGR_FD_IsSame(self, other_defn);
2738   }
2739 
ValidateOGRFieldType(OGRFieldType field_type)2740     static int ValidateOGRFieldType(OGRFieldType field_type)
2741     {
2742         switch(field_type)
2743         {
2744             case OFTInteger:
2745             case OFTIntegerList:
2746             case OFTReal:
2747             case OFTRealList:
2748             case OFTString:
2749             case OFTStringList:
2750             case OFTBinary:
2751             case OFTDate:
2752             case OFTTime:
2753             case OFTDateTime:
2754             case OFTInteger64:
2755             case OFTInteger64List:
2756                 return TRUE;
2757             default:
2758                 CPLError(CE_Failure, CPLE_IllegalArg, "Illegal field type value");
2759                 return FALSE;
2760         }
2761     }
2762 
2763 
ValidateOGRFieldSubType(OGRFieldSubType field_subtype)2764     static int ValidateOGRFieldSubType(OGRFieldSubType field_subtype)
2765     {
2766         switch(field_subtype)
2767         {
2768             case OFSTNone:
2769             case OFSTBoolean:
2770             case OFSTInt16:
2771             case OFSTFloat32:
2772             case OFSTJSON:
2773             case OFSTUUID:
2774                 return TRUE;
2775             default:
2776                 CPLError(CE_Failure, CPLE_IllegalArg, "Illegal field subtype value");
2777                 return FALSE;
2778         }
2779     }
2780 
delete_OGRFieldDefnShadow(OGRFieldDefnShadow * self)2781 SWIGINTERN void delete_OGRFieldDefnShadow(OGRFieldDefnShadow *self){
2782     OGR_Fld_Destroy(self);
2783   }
new_OGRFieldDefnShadow(char const * name_null_ok="unnamed",OGRFieldType field_type=OFTString)2784 SWIGINTERN OGRFieldDefnShadow *new_OGRFieldDefnShadow(char const *name_null_ok="unnamed",OGRFieldType field_type=OFTString){
2785     if (ValidateOGRFieldType(field_type))
2786         return (OGRFieldDefnShadow*) OGR_Fld_Create(name_null_ok, field_type);
2787     else
2788         return NULL;
2789   }
OGRFieldDefnShadow_GetName(OGRFieldDefnShadow * self)2790 SWIGINTERN char const *OGRFieldDefnShadow_GetName(OGRFieldDefnShadow *self){
2791     return (const char *) OGR_Fld_GetNameRef(self);
2792   }
OGRFieldDefnShadow_GetNameRef(OGRFieldDefnShadow * self)2793 SWIGINTERN char const *OGRFieldDefnShadow_GetNameRef(OGRFieldDefnShadow *self){
2794     return (const char *) OGR_Fld_GetNameRef(self);
2795   }
OGRFieldDefnShadow_SetName(OGRFieldDefnShadow * self,char const * name)2796 SWIGINTERN void OGRFieldDefnShadow_SetName(OGRFieldDefnShadow *self,char const *name){
2797     OGR_Fld_SetName(self, name);
2798   }
OGRFieldDefnShadow_GetAlternativeName(OGRFieldDefnShadow * self)2799 SWIGINTERN char const *OGRFieldDefnShadow_GetAlternativeName(OGRFieldDefnShadow *self){
2800     return OGR_Fld_GetAlternativeNameRef(self);
2801   }
OGRFieldDefnShadow_GetAlternativeNameRef(OGRFieldDefnShadow * self)2802 SWIGINTERN char const *OGRFieldDefnShadow_GetAlternativeNameRef(OGRFieldDefnShadow *self){
2803     return OGR_Fld_GetAlternativeNameRef(self);
2804   }
OGRFieldDefnShadow_SetAlternativeName(OGRFieldDefnShadow * self,char const * alternativeName)2805 SWIGINTERN void OGRFieldDefnShadow_SetAlternativeName(OGRFieldDefnShadow *self,char const *alternativeName){
2806     OGR_Fld_SetAlternativeName(self, alternativeName);
2807   }
OGRFieldDefnShadow_GetType(OGRFieldDefnShadow * self)2808 SWIGINTERN OGRFieldType OGRFieldDefnShadow_GetType(OGRFieldDefnShadow *self){
2809     return OGR_Fld_GetType(self);
2810   }
OGRFieldDefnShadow_SetType(OGRFieldDefnShadow * self,OGRFieldType type)2811 SWIGINTERN void OGRFieldDefnShadow_SetType(OGRFieldDefnShadow *self,OGRFieldType type){
2812     if (ValidateOGRFieldType(type))
2813         OGR_Fld_SetType(self, type);
2814   }
OGRFieldDefnShadow_GetSubType(OGRFieldDefnShadow * self)2815 SWIGINTERN OGRFieldSubType OGRFieldDefnShadow_GetSubType(OGRFieldDefnShadow *self){
2816     return OGR_Fld_GetSubType(self);
2817   }
OGRFieldDefnShadow_SetSubType(OGRFieldDefnShadow * self,OGRFieldSubType type)2818 SWIGINTERN void OGRFieldDefnShadow_SetSubType(OGRFieldDefnShadow *self,OGRFieldSubType type){
2819     if (ValidateOGRFieldSubType(type))
2820         OGR_Fld_SetSubType(self, type);
2821   }
OGRFieldDefnShadow_GetJustify(OGRFieldDefnShadow * self)2822 SWIGINTERN OGRJustification OGRFieldDefnShadow_GetJustify(OGRFieldDefnShadow *self){
2823     return OGR_Fld_GetJustify(self);
2824   }
OGRFieldDefnShadow_SetJustify(OGRFieldDefnShadow * self,OGRJustification justify)2825 SWIGINTERN void OGRFieldDefnShadow_SetJustify(OGRFieldDefnShadow *self,OGRJustification justify){
2826     OGR_Fld_SetJustify(self, justify);
2827   }
OGRFieldDefnShadow_GetWidth(OGRFieldDefnShadow * self)2828 SWIGINTERN int OGRFieldDefnShadow_GetWidth(OGRFieldDefnShadow *self){
2829     return OGR_Fld_GetWidth(self);
2830   }
OGRFieldDefnShadow_SetWidth(OGRFieldDefnShadow * self,int width)2831 SWIGINTERN void OGRFieldDefnShadow_SetWidth(OGRFieldDefnShadow *self,int width){
2832     OGR_Fld_SetWidth(self, width);
2833   }
OGRFieldDefnShadow_GetPrecision(OGRFieldDefnShadow * self)2834 SWIGINTERN int OGRFieldDefnShadow_GetPrecision(OGRFieldDefnShadow *self){
2835     return OGR_Fld_GetPrecision(self);
2836   }
OGRFieldDefnShadow_SetPrecision(OGRFieldDefnShadow * self,int precision)2837 SWIGINTERN void OGRFieldDefnShadow_SetPrecision(OGRFieldDefnShadow *self,int precision){
2838     OGR_Fld_SetPrecision(self, precision);
2839   }
OGRFieldDefnShadow_GetTypeName(OGRFieldDefnShadow * self)2840 SWIGINTERN char const *OGRFieldDefnShadow_GetTypeName(OGRFieldDefnShadow *self){
2841       return OGR_GetFieldTypeName(OGR_Fld_GetType(self));
2842   }
OGRFieldDefnShadow_GetFieldTypeName(OGRFieldDefnShadow * self,OGRFieldType type)2843 SWIGINTERN char const *OGRFieldDefnShadow_GetFieldTypeName(OGRFieldDefnShadow *self,OGRFieldType type){
2844     return OGR_GetFieldTypeName(type);
2845   }
OGRFieldDefnShadow_IsIgnored(OGRFieldDefnShadow * self)2846 SWIGINTERN int OGRFieldDefnShadow_IsIgnored(OGRFieldDefnShadow *self){
2847     return OGR_Fld_IsIgnored( self );
2848   }
OGRFieldDefnShadow_SetIgnored(OGRFieldDefnShadow * self,int bIgnored)2849 SWIGINTERN void OGRFieldDefnShadow_SetIgnored(OGRFieldDefnShadow *self,int bIgnored){
2850     OGR_Fld_SetIgnored( self, bIgnored );
2851   }
OGRFieldDefnShadow_IsNullable(OGRFieldDefnShadow * self)2852 SWIGINTERN int OGRFieldDefnShadow_IsNullable(OGRFieldDefnShadow *self){
2853     return OGR_Fld_IsNullable( self );
2854   }
OGRFieldDefnShadow_SetNullable(OGRFieldDefnShadow * self,int bNullable)2855 SWIGINTERN void OGRFieldDefnShadow_SetNullable(OGRFieldDefnShadow *self,int bNullable){
2856     OGR_Fld_SetNullable( self, bNullable );
2857   }
OGRFieldDefnShadow_IsUnique(OGRFieldDefnShadow * self)2858 SWIGINTERN int OGRFieldDefnShadow_IsUnique(OGRFieldDefnShadow *self){
2859     return OGR_Fld_IsUnique( self );
2860   }
OGRFieldDefnShadow_SetUnique(OGRFieldDefnShadow * self,int bUnique)2861 SWIGINTERN void OGRFieldDefnShadow_SetUnique(OGRFieldDefnShadow *self,int bUnique){
2862     OGR_Fld_SetUnique( self, bUnique );
2863   }
OGRFieldDefnShadow_GetDefault(OGRFieldDefnShadow * self)2864 SWIGINTERN char const *OGRFieldDefnShadow_GetDefault(OGRFieldDefnShadow *self){
2865     return OGR_Fld_GetDefault( self );
2866   }
OGRFieldDefnShadow_SetDefault(OGRFieldDefnShadow * self,char const * pszValue)2867 SWIGINTERN void OGRFieldDefnShadow_SetDefault(OGRFieldDefnShadow *self,char const *pszValue){
2868     OGR_Fld_SetDefault( self, pszValue );
2869   }
OGRFieldDefnShadow_IsDefaultDriverSpecific(OGRFieldDefnShadow * self)2870 SWIGINTERN int OGRFieldDefnShadow_IsDefaultDriverSpecific(OGRFieldDefnShadow *self){
2871     return OGR_Fld_IsDefaultDriverSpecific( self );
2872   }
OGRFieldDefnShadow_GetDomainName(OGRFieldDefnShadow * self)2873 SWIGINTERN char const *OGRFieldDefnShadow_GetDomainName(OGRFieldDefnShadow *self){
2874     return OGR_Fld_GetDomainName(self);
2875   }
OGRFieldDefnShadow_SetDomainName(OGRFieldDefnShadow * self,char const * name)2876 SWIGINTERN void OGRFieldDefnShadow_SetDomainName(OGRFieldDefnShadow *self,char const *name){
2877     OGR_Fld_SetDomainName( self, name );
2878   }
delete_OGRGeomFieldDefnShadow(OGRGeomFieldDefnShadow * self)2879 SWIGINTERN void delete_OGRGeomFieldDefnShadow(OGRGeomFieldDefnShadow *self){
2880     OGR_GFld_Destroy(self);
2881   }
new_OGRGeomFieldDefnShadow(char const * name_null_ok="",OGRwkbGeometryType field_type=wkbUnknown)2882 SWIGINTERN OGRGeomFieldDefnShadow *new_OGRGeomFieldDefnShadow(char const *name_null_ok="",OGRwkbGeometryType field_type=wkbUnknown){
2883     if( ValidateOGRGeometryType(field_type) )
2884         return (OGRGeomFieldDefnShadow*) OGR_GFld_Create(name_null_ok, field_type);
2885     else
2886         return NULL;
2887   }
OGRGeomFieldDefnShadow_GetName(OGRGeomFieldDefnShadow * self)2888 SWIGINTERN char const *OGRGeomFieldDefnShadow_GetName(OGRGeomFieldDefnShadow *self){
2889     return (const char *) OGR_GFld_GetNameRef(self);
2890   }
OGRGeomFieldDefnShadow_GetNameRef(OGRGeomFieldDefnShadow * self)2891 SWIGINTERN char const *OGRGeomFieldDefnShadow_GetNameRef(OGRGeomFieldDefnShadow *self){
2892     return (const char *) OGR_GFld_GetNameRef(self);
2893   }
OGRGeomFieldDefnShadow_SetName(OGRGeomFieldDefnShadow * self,char const * name)2894 SWIGINTERN void OGRGeomFieldDefnShadow_SetName(OGRGeomFieldDefnShadow *self,char const *name){
2895     OGR_GFld_SetName(self, name);
2896   }
OGRGeomFieldDefnShadow_GetType(OGRGeomFieldDefnShadow * self)2897 SWIGINTERN OGRwkbGeometryType OGRGeomFieldDefnShadow_GetType(OGRGeomFieldDefnShadow *self){
2898     return OGR_GFld_GetType(self);
2899   }
OGRGeomFieldDefnShadow_SetType(OGRGeomFieldDefnShadow * self,OGRwkbGeometryType type)2900 SWIGINTERN void OGRGeomFieldDefnShadow_SetType(OGRGeomFieldDefnShadow *self,OGRwkbGeometryType type){
2901     if( ValidateOGRGeometryType(type) )
2902         OGR_GFld_SetType(self, type);
2903   }
OGRGeomFieldDefnShadow_GetSpatialRef(OGRGeomFieldDefnShadow * self)2904 SWIGINTERN OSRSpatialReferenceShadow *OGRGeomFieldDefnShadow_GetSpatialRef(OGRGeomFieldDefnShadow *self){
2905     OGRSpatialReferenceH ref =  OGR_GFld_GetSpatialRef(self);
2906     if( ref )
2907         OSRReference(ref);
2908     return (OSRSpatialReferenceShadow*) ref;
2909   }
OGRGeomFieldDefnShadow_SetSpatialRef(OGRGeomFieldDefnShadow * self,OSRSpatialReferenceShadow * srs)2910 SWIGINTERN void OGRGeomFieldDefnShadow_SetSpatialRef(OGRGeomFieldDefnShadow *self,OSRSpatialReferenceShadow *srs){
2911      OGR_GFld_SetSpatialRef( self, (OGRSpatialReferenceH)srs );
2912   }
OGRGeomFieldDefnShadow_IsIgnored(OGRGeomFieldDefnShadow * self)2913 SWIGINTERN int OGRGeomFieldDefnShadow_IsIgnored(OGRGeomFieldDefnShadow *self){
2914     return OGR_GFld_IsIgnored( self );
2915   }
OGRGeomFieldDefnShadow_SetIgnored(OGRGeomFieldDefnShadow * self,int bIgnored)2916 SWIGINTERN void OGRGeomFieldDefnShadow_SetIgnored(OGRGeomFieldDefnShadow *self,int bIgnored){
2917     OGR_GFld_SetIgnored( self, bIgnored );
2918   }
OGRGeomFieldDefnShadow_IsNullable(OGRGeomFieldDefnShadow * self)2919 SWIGINTERN int OGRGeomFieldDefnShadow_IsNullable(OGRGeomFieldDefnShadow *self){
2920     return OGR_GFld_IsNullable( self );
2921   }
OGRGeomFieldDefnShadow_SetNullable(OGRGeomFieldDefnShadow * self,int bNullable)2922 SWIGINTERN void OGRGeomFieldDefnShadow_SetNullable(OGRGeomFieldDefnShadow *self,int bNullable){
2923     return OGR_GFld_SetNullable( self, bNullable );
2924   }
2925 
CreateGeometryFromWkb(size_t len,char * bin_string,OSRSpatialReferenceShadow * reference=NULL)2926   OGRGeometryShadow* CreateGeometryFromWkb( size_t len, char *bin_string,
2927                                             OSRSpatialReferenceShadow *reference=NULL ) {
2928     OGRGeometryH geom = NULL;
2929     OGRErr err = OGR_G_CreateFromWkb( (unsigned char *) bin_string,
2930                                       reference,
2931                                       &geom,
2932                                       len );
2933     if (err != 0 ) {
2934        CPLError(CE_Failure, err, "%s", OGRErrMessages(err));
2935        return NULL;
2936     }
2937     return (OGRGeometryShadow*) geom;
2938   }
2939 
2940 
2941 
2942 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,unsigned long * val)2943 SWIG_AsVal_unsigned_SS_long SWIG_PERL_DECL_ARGS_2(SV *obj, unsigned long *val)
2944 {
2945   if (SvUOK(obj)) {
2946     UV v = SvUV(obj);
2947     if (UVSIZE <= sizeof(*val) || v <= ULONG_MAX) {
2948       if (val) *val = v;
2949       return SWIG_OK;
2950     }
2951     return SWIG_OverflowError;
2952   } else if (SvIOK(obj)) {
2953     IV v = SvIV(obj);
2954     if (v >= 0 && (IVSIZE <= sizeof(*val) || v <= ULONG_MAX)) {
2955       if (val) *val = v;
2956       return SWIG_OK;
2957     }
2958     return SWIG_OverflowError;
2959   } else {
2960     int dispatch = 0;
2961     const char *nptr = SvPV_nolen(obj);
2962     if (nptr) {
2963       char *endptr;
2964       unsigned long v;
2965       errno = 0;
2966       v = strtoul(nptr, &endptr,0);
2967       if (errno == ERANGE) {
2968 	errno = 0;
2969 	return SWIG_OverflowError;
2970       } else {
2971 	if (*endptr == '\0') {
2972 	  if (val) *val = v;
2973 	  return SWIG_Str2NumCast(SWIG_OK);
2974 	}
2975       }
2976     }
2977     if (!dispatch) {
2978       double d;
2979       int res = SWIG_AddCast(SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(obj,&d));
2980       if (SWIG_IsOK(res) && SWIG_CanCastAsInteger(&d, 0, ULONG_MAX)) {
2981 	if (val) *val = (unsigned long)(d);
2982 	return res;
2983       }
2984     }
2985   }
2986   return SWIG_TypeError;
2987 }
2988 
2989 
2990 #if defined(LLONG_MAX) && !defined(SWIG_LONG_LONG_AVAILABLE)
2991 #  define SWIG_LONG_LONG_AVAILABLE
2992 #endif
2993 
2994 
2995 #ifdef SWIG_LONG_LONG_AVAILABLE
2996 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,unsigned long long * val)2997 SWIG_AsVal_unsigned_SS_long_SS_long SWIG_PERL_DECL_ARGS_2(SV *obj, unsigned long long *val)
2998 {
2999   if (SvUOK(obj)) {
3000     /* pretty sure this should be conditional on
3001      * (UVSIZE <= sizeof(*val) || v <= ULLONG_MAX) */
3002     if (val) *val = SvUV(obj);
3003     return SWIG_OK;
3004   } else  if (SvIOK(obj)) {
3005     IV v = SvIV(obj);
3006     if (v >= 0 && (IVSIZE <= sizeof(*val) || v <= ULLONG_MAX)) {
3007       if (val) *val = v;
3008       return SWIG_OK;
3009     } else {
3010       return SWIG_OverflowError;
3011     }
3012   } else {
3013     int dispatch = 0;
3014     const char *nptr = SvPV_nolen(obj);
3015     if (nptr) {
3016       char *endptr;
3017       unsigned long long v;
3018       errno = 0;
3019       v = strtoull(nptr, &endptr,0);
3020       if (errno == ERANGE) {
3021 	errno = 0;
3022 	return SWIG_OverflowError;
3023       } else {
3024 	if (*endptr == '\0') {
3025 	  if (val) *val = v;
3026 	  return SWIG_Str2NumCast(SWIG_OK);
3027 	}
3028       }
3029     }
3030     if (!dispatch) {
3031       const double mant_max = 1LL << DBL_MANT_DIG;
3032       double d;
3033       int res = SWIG_AddCast(SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(obj,&d));
3034       if (SWIG_IsOK(res) && SWIG_CanCastAsInteger(&d, 0, mant_max)) {
3035 	if (val) *val = (unsigned long long)(d);
3036 	return res;
3037       }
3038     }
3039   }
3040   return SWIG_TypeError;
3041 }
3042 #endif
3043 
3044 
3045 SWIGINTERNINLINE int
SWIG_PERL_DECL_ARGS_2(SV * obj,size_t * val)3046 SWIG_AsVal_size_t SWIG_PERL_DECL_ARGS_2(SV * obj, size_t *val)
3047 {
3048   int res = SWIG_TypeError;
3049 #ifdef SWIG_LONG_LONG_AVAILABLE
3050   if (sizeof(size_t) <= sizeof(unsigned long)) {
3051 #endif
3052     unsigned long v;
3053     res = SWIG_AsVal_unsigned_SS_long SWIG_PERL_CALL_ARGS_2(obj, val ? &v : 0);
3054     if (SWIG_IsOK(res) && val) *val = static_cast< size_t >(v);
3055 #ifdef SWIG_LONG_LONG_AVAILABLE
3056   } else if (sizeof(size_t) <= sizeof(unsigned long long)) {
3057     unsigned long long v;
3058     res = SWIG_AsVal_unsigned_SS_long_SS_long SWIG_PERL_CALL_ARGS_2(obj, val ? &v : 0);
3059     if (SWIG_IsOK(res) && val) *val = static_cast< size_t >(v);
3060   }
3061 #endif
3062   return res;
3063 }
3064 
3065 
CreateGeometryFromWkt(char ** val,OSRSpatialReferenceShadow * reference=NULL)3066   OGRGeometryShadow* CreateGeometryFromWkt( char **val,
3067                                       OSRSpatialReferenceShadow *reference=NULL ) {
3068     OGRGeometryH geom = NULL;
3069     OGRErr err = OGR_G_CreateFromWkt(val,
3070                                       reference,
3071                                       &geom);
3072     if (err != 0 ) {
3073        CPLError(CE_Failure, err, "%s", OGRErrMessages(err));
3074        return NULL;
3075     }
3076     return (OGRGeometryShadow*) geom;
3077   }
3078 
3079 
3080 
CreateGeometryFromGML(const char * input_string)3081   OGRGeometryShadow *CreateGeometryFromGML( const char * input_string ) {
3082     OGRGeometryShadow* geom = (OGRGeometryShadow*)OGR_G_CreateFromGML(input_string);
3083     return geom;
3084   }
3085 
3086 
3087 
CreateGeometryFromJson(const char * input_string)3088   OGRGeometryShadow *CreateGeometryFromJson( const char * input_string ) {
3089     OGRGeometryShadow* geom = (OGRGeometryShadow*)OGR_G_CreateGeometryFromJson(input_string);
3090     return geom;
3091   }
3092 
3093 
3094 
CreateGeometryFromEsriJson(const char * input_string)3095   OGRGeometryShadow *CreateGeometryFromEsriJson( const char * input_string ) {
3096     OGRGeometryShadow* geom = (OGRGeometryShadow*)OGR_G_CreateGeometryFromEsriJson(input_string);
3097     return geom;
3098   }
3099 
3100 
3101 
BuildPolygonFromEdges(OGRGeometryShadow * hLineCollection,int bBestEffort=0,int bAutoClose=0,double dfTolerance=0)3102   OGRGeometryShadow* BuildPolygonFromEdges( OGRGeometryShadow*  hLineCollection,
3103                                             int bBestEffort = 0,
3104                                             int bAutoClose = 0,
3105                                             double dfTolerance=0) {
3106 
3107   OGRGeometryH hPolygon = NULL;
3108 
3109   OGRErr eErr;
3110 
3111   hPolygon = OGRBuildPolygonFromEdges( hLineCollection, bBestEffort,
3112                                        bAutoClose, dfTolerance, &eErr );
3113 
3114   if (eErr != OGRERR_NONE ) {
3115     CPLError(CE_Failure, eErr, "%s", OGRErrMessages(eErr));
3116     return NULL;
3117   }
3118 
3119   return (OGRGeometryShadow* )hPolygon;
3120   }
3121 
3122 
ApproximateArcAngles(double dfCenterX,double dfCenterY,double dfZ,double dfPrimaryRadius,double dfSecondaryAxis,double dfRotation,double dfStartAngle,double dfEndAngle,double dfMaxAngleStepSizeDegrees)3123   OGRGeometryShadow* ApproximateArcAngles(
3124         double dfCenterX, double dfCenterY, double dfZ,
3125   	double dfPrimaryRadius, double dfSecondaryAxis, double dfRotation,
3126         double dfStartAngle, double dfEndAngle,
3127         double dfMaxAngleStepSizeDegrees ) {
3128 
3129   return (OGRGeometryShadow* )OGR_G_ApproximateArcAngles(
3130              dfCenterX, dfCenterY, dfZ,
3131              dfPrimaryRadius, dfSecondaryAxis, dfRotation,
3132              dfStartAngle, dfEndAngle, dfMaxAngleStepSizeDegrees );
3133   }
3134 
3135 
ForceToPolygon(OGRGeometryShadow * geom_in)3136 OGRGeometryShadow* ForceToPolygon( OGRGeometryShadow *geom_in ) {
3137  if (geom_in == NULL)
3138      return NULL;
3139  return (OGRGeometryShadow* )OGR_G_ForceToPolygon( OGR_G_Clone(geom_in) );
3140 }
3141 
3142 
ForceToLineString(OGRGeometryShadow * geom_in)3143 OGRGeometryShadow* ForceToLineString( OGRGeometryShadow *geom_in ) {
3144  if (geom_in == NULL)
3145      return NULL;
3146  return (OGRGeometryShadow* )OGR_G_ForceToLineString( OGR_G_Clone(geom_in) );
3147 }
3148 
3149 
ForceToMultiPolygon(OGRGeometryShadow * geom_in)3150 OGRGeometryShadow* ForceToMultiPolygon( OGRGeometryShadow *geom_in ) {
3151  if (geom_in == NULL)
3152      return NULL;
3153  return (OGRGeometryShadow* )OGR_G_ForceToMultiPolygon( OGR_G_Clone(geom_in) );
3154 }
3155 
3156 
ForceToMultiPoint(OGRGeometryShadow * geom_in)3157 OGRGeometryShadow* ForceToMultiPoint( OGRGeometryShadow *geom_in ) {
3158  if (geom_in == NULL)
3159      return NULL;
3160  return (OGRGeometryShadow* )OGR_G_ForceToMultiPoint( OGR_G_Clone(geom_in) );
3161 }
3162 
3163 
ForceToMultiLineString(OGRGeometryShadow * geom_in)3164 OGRGeometryShadow* ForceToMultiLineString( OGRGeometryShadow *geom_in ) {
3165  if (geom_in == NULL)
3166      return NULL;
3167  return (OGRGeometryShadow* )OGR_G_ForceToMultiLineString( OGR_G_Clone(geom_in) );
3168 }
3169 
3170 
ForceTo(OGRGeometryShadow * geom_in,OGRwkbGeometryType eTargetType,char ** options=NULL)3171 OGRGeometryShadow* ForceTo( OGRGeometryShadow *geom_in, OGRwkbGeometryType eTargetType, char** options = NULL ) {
3172  if (geom_in == NULL)
3173      return NULL;
3174  return (OGRGeometryShadow* )OGR_G_ForceTo( OGR_G_Clone(geom_in), eTargetType, options );
3175 }
3176 
delete_OGRGeometryShadow(OGRGeometryShadow * self)3177 SWIGINTERN void delete_OGRGeometryShadow(OGRGeometryShadow *self){
3178     OGR_G_DestroyGeometry( self );
3179   }
new_OGRGeometryShadow(OGRwkbGeometryType type=wkbUnknown,char * wkt=0,int wkb=0,char * wkb_buf=0,char * gml=0)3180 SWIGINTERN OGRGeometryShadow *new_OGRGeometryShadow(OGRwkbGeometryType type=wkbUnknown,char *wkt=0,int wkb=0,char *wkb_buf=0,char *gml=0){
3181     if (type != wkbUnknown ) {
3182       return (OGRGeometryShadow*) OGR_G_CreateGeometry( type );
3183     }
3184     else if ( wkt != 0 ) {
3185       return CreateGeometryFromWkt( &wkt );
3186     }
3187     else if ( wkb != 0 ) {
3188       return CreateGeometryFromWkb( wkb, wkb_buf );
3189     }
3190     else if ( gml != 0 ) {
3191       return CreateGeometryFromGML( gml );
3192     }
3193     // throw?
3194     else {
3195         CPLError(CE_Failure, 1, "Empty geometries cannot be constructed");
3196         return NULL;}
3197 
3198   }
OGRGeometryShadow_ExportToWkt(OGRGeometryShadow * self,char ** argout)3199 SWIGINTERN OGRErr OGRGeometryShadow_ExportToWkt(OGRGeometryShadow *self,char **argout){
3200     return OGR_G_ExportToWkt(self, argout);
3201   }
OGRGeometryShadow_ExportToIsoWkt(OGRGeometryShadow * self,char ** argout)3202 SWIGINTERN OGRErr OGRGeometryShadow_ExportToIsoWkt(OGRGeometryShadow *self,char **argout){
3203     return OGR_G_ExportToIsoWkt(self, argout);
3204   }
OGRGeometryShadow_ExportToWkb(OGRGeometryShadow * self,int * nLen,char ** pBuf,OGRwkbByteOrder byte_order=wkbXDR)3205 SWIGINTERN OGRErr OGRGeometryShadow_ExportToWkb(OGRGeometryShadow *self,int *nLen,char **pBuf,OGRwkbByteOrder byte_order=wkbXDR){
3206     *nLen = OGR_G_WkbSize( self );
3207     *pBuf = (char *) VSI_MALLOC_VERBOSE( *nLen );
3208     if( *pBuf == NULL )
3209         return OGRERR_FAILURE;
3210     return OGR_G_ExportToWkb(self, byte_order, (unsigned char*) *pBuf );
3211   }
OGRGeometryShadow_ExportToIsoWkb(OGRGeometryShadow * self,int * nLen,char ** pBuf,OGRwkbByteOrder byte_order=wkbXDR)3212 SWIGINTERN OGRErr OGRGeometryShadow_ExportToIsoWkb(OGRGeometryShadow *self,int *nLen,char **pBuf,OGRwkbByteOrder byte_order=wkbXDR){
3213     *nLen = OGR_G_WkbSize( self );
3214     *pBuf = (char *) VSI_MALLOC_VERBOSE( *nLen );
3215     if( *pBuf == NULL )
3216         return OGRERR_FAILURE;
3217     return OGR_G_ExportToIsoWkb(self, byte_order, (unsigned char*) *pBuf );
3218   }
OGRGeometryShadow_ExportToGML(OGRGeometryShadow * self,char ** options=0)3219 SWIGINTERN retStringAndCPLFree *OGRGeometryShadow_ExportToGML(OGRGeometryShadow *self,char **options=0){
3220     return (retStringAndCPLFree*) OGR_G_ExportToGMLEx(self, options);
3221   }
OGRGeometryShadow_ExportToKML(OGRGeometryShadow * self,char const * altitude_mode=NULL)3222 SWIGINTERN retStringAndCPLFree *OGRGeometryShadow_ExportToKML(OGRGeometryShadow *self,char const *altitude_mode=NULL){
3223     return (retStringAndCPLFree *) OGR_G_ExportToKML(self, altitude_mode);
3224   }
OGRGeometryShadow_ExportToJson(OGRGeometryShadow * self,char ** options=0)3225 SWIGINTERN retStringAndCPLFree *OGRGeometryShadow_ExportToJson(OGRGeometryShadow *self,char **options=0){
3226     return (retStringAndCPLFree *) OGR_G_ExportToJsonEx(self, options);
3227   }
OGRGeometryShadow_AddPoint(OGRGeometryShadow * self,double x,double y,double z=0)3228 SWIGINTERN void OGRGeometryShadow_AddPoint(OGRGeometryShadow *self,double x,double y,double z=0){
3229     OGR_G_AddPoint( self, x, y, z );
3230   }
OGRGeometryShadow_AddPointM(OGRGeometryShadow * self,double x,double y,double m)3231 SWIGINTERN void OGRGeometryShadow_AddPointM(OGRGeometryShadow *self,double x,double y,double m){
3232       OGR_G_AddPointM( self, x, y, m );
3233   }
OGRGeometryShadow_AddPointZM(OGRGeometryShadow * self,double x,double y,double z,double m)3234 SWIGINTERN void OGRGeometryShadow_AddPointZM(OGRGeometryShadow *self,double x,double y,double z,double m){
3235       OGR_G_AddPointZM( self, x, y, z, m );
3236   }
OGRGeometryShadow_AddPoint_2D(OGRGeometryShadow * self,double x,double y)3237 SWIGINTERN void OGRGeometryShadow_AddPoint_2D(OGRGeometryShadow *self,double x,double y){
3238     OGR_G_AddPoint_2D( self, x, y );
3239   }
OGRGeometryShadow_AddGeometryDirectly(OGRGeometryShadow * self,OGRGeometryShadow * other_disown)3240 SWIGINTERN OGRErr OGRGeometryShadow_AddGeometryDirectly(OGRGeometryShadow *self,OGRGeometryShadow *other_disown){
3241     return OGR_G_AddGeometryDirectly( self, other_disown );
3242   }
OGRGeometryShadow_AddGeometry(OGRGeometryShadow * self,OGRGeometryShadow * other)3243 SWIGINTERN OGRErr OGRGeometryShadow_AddGeometry(OGRGeometryShadow *self,OGRGeometryShadow *other){
3244     return OGR_G_AddGeometry( self, other );
3245   }
OGRGeometryShadow_RemoveGeometry(OGRGeometryShadow * self,int iSubGeom)3246 SWIGINTERN OGRErr OGRGeometryShadow_RemoveGeometry(OGRGeometryShadow *self,int iSubGeom){
3247     return OGR_G_RemoveGeometry( self, iSubGeom, TRUE );
3248   }
OGRGeometryShadow_Clone(OGRGeometryShadow * self)3249 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_Clone(OGRGeometryShadow *self){
3250     return (OGRGeometryShadow*) OGR_G_Clone(self);
3251   }
OGRGeometryShadow_GetGeometryType(OGRGeometryShadow * self)3252 SWIGINTERN OGRwkbGeometryType OGRGeometryShadow_GetGeometryType(OGRGeometryShadow *self){
3253     return (OGRwkbGeometryType) OGR_G_GetGeometryType(self);
3254   }
OGRGeometryShadow_GetGeometryName(OGRGeometryShadow * self)3255 SWIGINTERN char const *OGRGeometryShadow_GetGeometryName(OGRGeometryShadow *self){
3256     return (const char *) OGR_G_GetGeometryName(self);
3257   }
OGRGeometryShadow_Length(OGRGeometryShadow * self)3258 SWIGINTERN double OGRGeometryShadow_Length(OGRGeometryShadow *self){
3259     return OGR_G_Length(self);
3260   }
OGRGeometryShadow_Area(OGRGeometryShadow * self)3261 SWIGINTERN double OGRGeometryShadow_Area(OGRGeometryShadow *self){
3262     return OGR_G_Area(self);
3263   }
OGRGeometryShadow_GetArea(OGRGeometryShadow * self)3264 SWIGINTERN double OGRGeometryShadow_GetArea(OGRGeometryShadow *self){
3265     return OGR_G_Area(self);
3266   }
OGRGeometryShadow_GetPointCount(OGRGeometryShadow * self)3267 SWIGINTERN int OGRGeometryShadow_GetPointCount(OGRGeometryShadow *self){
3268     return OGR_G_GetPointCount(self);
3269   }
OGRGeometryShadow_GetX(OGRGeometryShadow * self,int point=0)3270 SWIGINTERN double OGRGeometryShadow_GetX(OGRGeometryShadow *self,int point=0){
3271     return OGR_G_GetX(self, point);
3272   }
OGRGeometryShadow_GetY(OGRGeometryShadow * self,int point=0)3273 SWIGINTERN double OGRGeometryShadow_GetY(OGRGeometryShadow *self,int point=0){
3274     return OGR_G_GetY(self, point);
3275   }
OGRGeometryShadow_GetZ(OGRGeometryShadow * self,int point=0)3276 SWIGINTERN double OGRGeometryShadow_GetZ(OGRGeometryShadow *self,int point=0){
3277     return OGR_G_GetZ(self, point);
3278   }
OGRGeometryShadow_GetM(OGRGeometryShadow * self,int point=0)3279 SWIGINTERN double OGRGeometryShadow_GetM(OGRGeometryShadow *self,int point=0){
3280     return OGR_G_GetM(self, point);
3281   }
OGRGeometryShadow_GetPoint(OGRGeometryShadow * self,int iPoint=0,double argout[3]=NULL)3282 SWIGINTERN void OGRGeometryShadow_GetPoint(OGRGeometryShadow *self,int iPoint=0,double argout[3]=NULL){
3283 
3284     OGR_G_GetPoint( self, iPoint, argout+0, argout+1, argout+2 );
3285   }
OGRGeometryShadow_GetPointZM(OGRGeometryShadow * self,int iPoint=0,double argout[4]=NULL)3286 SWIGINTERN void OGRGeometryShadow_GetPointZM(OGRGeometryShadow *self,int iPoint=0,double argout[4]=NULL){
3287 
3288       OGR_G_GetPointZM( self, iPoint, argout+0, argout+1, argout+2, argout+3 );
3289   }
OGRGeometryShadow_GetPoint_2D(OGRGeometryShadow * self,int iPoint=0,double argout[2]=NULL)3290 SWIGINTERN void OGRGeometryShadow_GetPoint_2D(OGRGeometryShadow *self,int iPoint=0,double argout[2]=NULL){
3291 
3292     OGR_G_GetPoint( self, iPoint, argout+0, argout+1, NULL );
3293   }
OGRGeometryShadow_GetGeometryCount(OGRGeometryShadow * self)3294 SWIGINTERN int OGRGeometryShadow_GetGeometryCount(OGRGeometryShadow *self){
3295     return OGR_G_GetGeometryCount(self);
3296   }
OGRGeometryShadow_SetPoint(OGRGeometryShadow * self,int point,double x,double y,double z=0)3297 SWIGINTERN void OGRGeometryShadow_SetPoint(OGRGeometryShadow *self,int point,double x,double y,double z=0){
3298     OGR_G_SetPoint(self, point, x, y, z);
3299   }
OGRGeometryShadow_SetPointM(OGRGeometryShadow * self,int point,double x,double y,double m)3300 SWIGINTERN void OGRGeometryShadow_SetPointM(OGRGeometryShadow *self,int point,double x,double y,double m){
3301       OGR_G_SetPointM(self, point, x, y, m);
3302   }
OGRGeometryShadow_SetPointZM(OGRGeometryShadow * self,int point,double x,double y,double z,double m)3303 SWIGINTERN void OGRGeometryShadow_SetPointZM(OGRGeometryShadow *self,int point,double x,double y,double z,double m){
3304       OGR_G_SetPointZM(self, point, x, y, z, m);
3305   }
OGRGeometryShadow_SetPoint_2D(OGRGeometryShadow * self,int point,double x,double y)3306 SWIGINTERN void OGRGeometryShadow_SetPoint_2D(OGRGeometryShadow *self,int point,double x,double y){
3307     OGR_G_SetPoint_2D(self, point, x, y);
3308   }
OGRGeometryShadow_SwapXY(OGRGeometryShadow * self)3309 SWIGINTERN void OGRGeometryShadow_SwapXY(OGRGeometryShadow *self){
3310     OGR_G_SwapXY(self);
3311   }
OGRGeometryShadow_GetGeometryRef(OGRGeometryShadow * self,int geom)3312 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_GetGeometryRef(OGRGeometryShadow *self,int geom){
3313     return (OGRGeometryShadow*) OGR_G_GetGeometryRef(self, geom);
3314   }
OGRGeometryShadow_Simplify(OGRGeometryShadow * self,double tolerance)3315 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_Simplify(OGRGeometryShadow *self,double tolerance){
3316     return (OGRGeometryShadow*) OGR_G_Simplify(self, tolerance);
3317   }
OGRGeometryShadow_SimplifyPreserveTopology(OGRGeometryShadow * self,double tolerance)3318 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_SimplifyPreserveTopology(OGRGeometryShadow *self,double tolerance){
3319     return (OGRGeometryShadow*) OGR_G_SimplifyPreserveTopology(self, tolerance);
3320   }
OGRGeometryShadow_DelaunayTriangulation(OGRGeometryShadow * self,double dfTolerance=0.0,int bOnlyEdges=FALSE)3321 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_DelaunayTriangulation(OGRGeometryShadow *self,double dfTolerance=0.0,int bOnlyEdges=FALSE){
3322     return (OGRGeometryShadow*) OGR_G_DelaunayTriangulation(self, dfTolerance, bOnlyEdges);
3323   }
OGRGeometryShadow_Polygonize(OGRGeometryShadow * self)3324 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_Polygonize(OGRGeometryShadow *self){
3325     return (OGRGeometryShadow*) OGR_G_Polygonize(self);
3326   }
OGRGeometryShadow_Boundary(OGRGeometryShadow * self)3327 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_Boundary(OGRGeometryShadow *self){
3328     return (OGRGeometryShadow*) OGR_G_Boundary(self);
3329   }
OGRGeometryShadow_GetBoundary(OGRGeometryShadow * self)3330 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_GetBoundary(OGRGeometryShadow *self){
3331     return (OGRGeometryShadow*) OGR_G_Boundary(self);
3332   }
OGRGeometryShadow_ConvexHull(OGRGeometryShadow * self)3333 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_ConvexHull(OGRGeometryShadow *self){
3334     return (OGRGeometryShadow*) OGR_G_ConvexHull(self);
3335   }
OGRGeometryShadow_MakeValid(OGRGeometryShadow * self)3336 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_MakeValid(OGRGeometryShadow *self){
3337     return (OGRGeometryShadow*) OGR_G_MakeValid(self);
3338   }
OGRGeometryShadow_Normalize(OGRGeometryShadow * self)3339 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_Normalize(OGRGeometryShadow *self){
3340     return (OGRGeometryShadow*) OGR_G_Normalize(self);
3341   }
OGRGeometryShadow_RemoveLowerDimensionSubGeoms(OGRGeometryShadow * self)3342 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_RemoveLowerDimensionSubGeoms(OGRGeometryShadow *self){
3343     return (OGRGeometryShadow*) OGR_G_RemoveLowerDimensionSubGeoms(self);
3344   }
OGRGeometryShadow_Buffer(OGRGeometryShadow * self,double distance,int quadsecs=30)3345 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_Buffer(OGRGeometryShadow *self,double distance,int quadsecs=30){
3346     return (OGRGeometryShadow*) OGR_G_Buffer( self, distance, quadsecs );
3347   }
OGRGeometryShadow_Intersection(OGRGeometryShadow * self,OGRGeometryShadow * other)3348 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_Intersection(OGRGeometryShadow *self,OGRGeometryShadow *other){
3349     return (OGRGeometryShadow*) OGR_G_Intersection( self, other );
3350   }
OGRGeometryShadow_Union(OGRGeometryShadow * self,OGRGeometryShadow * other)3351 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_Union(OGRGeometryShadow *self,OGRGeometryShadow *other){
3352     return (OGRGeometryShadow*) OGR_G_Union( self, other );
3353   }
OGRGeometryShadow_UnionCascaded(OGRGeometryShadow * self)3354 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_UnionCascaded(OGRGeometryShadow *self){
3355     return (OGRGeometryShadow*) OGR_G_UnionCascaded( self );
3356   }
OGRGeometryShadow_Difference(OGRGeometryShadow * self,OGRGeometryShadow * other)3357 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_Difference(OGRGeometryShadow *self,OGRGeometryShadow *other){
3358     return (OGRGeometryShadow*) OGR_G_Difference( self, other );
3359   }
OGRGeometryShadow_SymDifference(OGRGeometryShadow * self,OGRGeometryShadow * other)3360 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_SymDifference(OGRGeometryShadow *self,OGRGeometryShadow *other){
3361     return (OGRGeometryShadow*) OGR_G_SymDifference( self, other );
3362   }
OGRGeometryShadow_SymmetricDifference(OGRGeometryShadow * self,OGRGeometryShadow * other)3363 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_SymmetricDifference(OGRGeometryShadow *self,OGRGeometryShadow *other){
3364     return (OGRGeometryShadow*) OGR_G_SymDifference( self, other );
3365   }
OGRGeometryShadow_Distance(OGRGeometryShadow * self,OGRGeometryShadow * other)3366 SWIGINTERN double OGRGeometryShadow_Distance(OGRGeometryShadow *self,OGRGeometryShadow *other){
3367     return OGR_G_Distance(self, other);
3368   }
OGRGeometryShadow_Distance3D(OGRGeometryShadow * self,OGRGeometryShadow * other)3369 SWIGINTERN double OGRGeometryShadow_Distance3D(OGRGeometryShadow *self,OGRGeometryShadow *other){
3370     return OGR_G_Distance3D(self, other);
3371   }
OGRGeometryShadow_Empty(OGRGeometryShadow * self)3372 SWIGINTERN void OGRGeometryShadow_Empty(OGRGeometryShadow *self){
3373     OGR_G_Empty(self);
3374   }
OGRGeometryShadow_IsEmpty(OGRGeometryShadow * self)3375 SWIGINTERN bool OGRGeometryShadow_IsEmpty(OGRGeometryShadow *self){
3376     return (OGR_G_IsEmpty(self) > 0);
3377   }
OGRGeometryShadow_IsValid(OGRGeometryShadow * self)3378 SWIGINTERN bool OGRGeometryShadow_IsValid(OGRGeometryShadow *self){
3379     return (OGR_G_IsValid(self) > 0);
3380   }
OGRGeometryShadow_IsSimple(OGRGeometryShadow * self)3381 SWIGINTERN bool OGRGeometryShadow_IsSimple(OGRGeometryShadow *self){
3382     return (OGR_G_IsSimple(self) > 0);
3383   }
OGRGeometryShadow_IsRing(OGRGeometryShadow * self)3384 SWIGINTERN bool OGRGeometryShadow_IsRing(OGRGeometryShadow *self){
3385     return (OGR_G_IsRing(self) > 0);
3386   }
OGRGeometryShadow_Intersects(OGRGeometryShadow * self,OGRGeometryShadow * other)3387 SWIGINTERN bool OGRGeometryShadow_Intersects(OGRGeometryShadow *self,OGRGeometryShadow *other){
3388     return (OGR_G_Intersects(self, other) > 0);
3389   }
OGRGeometryShadow_Intersect(OGRGeometryShadow * self,OGRGeometryShadow * other)3390 SWIGINTERN bool OGRGeometryShadow_Intersect(OGRGeometryShadow *self,OGRGeometryShadow *other){
3391     return (OGR_G_Intersects(self, other) > 0);
3392   }
OGRGeometryShadow_Equals(OGRGeometryShadow * self,OGRGeometryShadow * other)3393 SWIGINTERN bool OGRGeometryShadow_Equals(OGRGeometryShadow *self,OGRGeometryShadow *other){
3394     return (OGR_G_Equals(self, other) > 0);
3395   }
OGRGeometryShadow_Equal(OGRGeometryShadow * self,OGRGeometryShadow * other)3396 SWIGINTERN bool OGRGeometryShadow_Equal(OGRGeometryShadow *self,OGRGeometryShadow *other){
3397     return (OGR_G_Equals(self, other) > 0);
3398   }
OGRGeometryShadow_Disjoint(OGRGeometryShadow * self,OGRGeometryShadow * other)3399 SWIGINTERN bool OGRGeometryShadow_Disjoint(OGRGeometryShadow *self,OGRGeometryShadow *other){
3400     return (OGR_G_Disjoint(self, other) > 0);
3401   }
OGRGeometryShadow_Touches(OGRGeometryShadow * self,OGRGeometryShadow * other)3402 SWIGINTERN bool OGRGeometryShadow_Touches(OGRGeometryShadow *self,OGRGeometryShadow *other){
3403     return (OGR_G_Touches(self, other) > 0);
3404   }
OGRGeometryShadow_Crosses(OGRGeometryShadow * self,OGRGeometryShadow * other)3405 SWIGINTERN bool OGRGeometryShadow_Crosses(OGRGeometryShadow *self,OGRGeometryShadow *other){
3406     return (OGR_G_Crosses(self, other) > 0);
3407   }
OGRGeometryShadow_Within(OGRGeometryShadow * self,OGRGeometryShadow * other)3408 SWIGINTERN bool OGRGeometryShadow_Within(OGRGeometryShadow *self,OGRGeometryShadow *other){
3409     return (OGR_G_Within(self, other) > 0);
3410   }
OGRGeometryShadow_Contains(OGRGeometryShadow * self,OGRGeometryShadow * other)3411 SWIGINTERN bool OGRGeometryShadow_Contains(OGRGeometryShadow *self,OGRGeometryShadow *other){
3412     return (OGR_G_Contains(self, other) > 0);
3413   }
OGRGeometryShadow_Overlaps(OGRGeometryShadow * self,OGRGeometryShadow * other)3414 SWIGINTERN bool OGRGeometryShadow_Overlaps(OGRGeometryShadow *self,OGRGeometryShadow *other){
3415     return (OGR_G_Overlaps(self, other) > 0);
3416   }
OGRGeometryShadow_TransformTo(OGRGeometryShadow * self,OSRSpatialReferenceShadow * reference)3417 SWIGINTERN OGRErr OGRGeometryShadow_TransformTo(OGRGeometryShadow *self,OSRSpatialReferenceShadow *reference){
3418     return OGR_G_TransformTo(self, reference);
3419   }
OGRGeometryShadow_Transform__SWIG_0(OGRGeometryShadow * self,OSRCoordinateTransformationShadow * trans)3420 SWIGINTERN OGRErr OGRGeometryShadow_Transform__SWIG_0(OGRGeometryShadow *self,OSRCoordinateTransformationShadow *trans){
3421     return OGR_G_Transform(self, trans);
3422   }
OGRGeometryShadow_GetSpatialReference(OGRGeometryShadow * self)3423 SWIGINTERN OSRSpatialReferenceShadow *OGRGeometryShadow_GetSpatialReference(OGRGeometryShadow *self){
3424     OGRSpatialReferenceH ref =  OGR_G_GetSpatialReference(self);
3425     if( ref )
3426         OSRReference(ref);
3427     return (OSRSpatialReferenceShadow*) ref;
3428   }
OGRGeometryShadow_AssignSpatialReference(OGRGeometryShadow * self,OSRSpatialReferenceShadow * reference)3429 SWIGINTERN void OGRGeometryShadow_AssignSpatialReference(OGRGeometryShadow *self,OSRSpatialReferenceShadow *reference){
3430     OGR_G_AssignSpatialReference(self, reference);
3431   }
OGRGeometryShadow_CloseRings(OGRGeometryShadow * self)3432 SWIGINTERN void OGRGeometryShadow_CloseRings(OGRGeometryShadow *self){
3433     OGR_G_CloseRings(self);
3434   }
OGRGeometryShadow_FlattenTo2D(OGRGeometryShadow * self)3435 SWIGINTERN void OGRGeometryShadow_FlattenTo2D(OGRGeometryShadow *self){
3436     OGR_G_FlattenTo2D(self);
3437   }
OGRGeometryShadow_Segmentize(OGRGeometryShadow * self,double dfMaxLength)3438 SWIGINTERN void OGRGeometryShadow_Segmentize(OGRGeometryShadow *self,double dfMaxLength){
3439     OGR_G_Segmentize(self, dfMaxLength);
3440   }
OGRGeometryShadow_GetEnvelope(OGRGeometryShadow * self,double argout[4])3441 SWIGINTERN void OGRGeometryShadow_GetEnvelope(OGRGeometryShadow *self,double argout[4]){
3442     OGR_G_GetEnvelope(self, (OGREnvelope*)argout);
3443   }
OGRGeometryShadow_GetEnvelope3D(OGRGeometryShadow * self,double argout[6])3444 SWIGINTERN void OGRGeometryShadow_GetEnvelope3D(OGRGeometryShadow *self,double argout[6]){
3445     OGR_G_GetEnvelope3D(self, (OGREnvelope3D*)argout);
3446   }
OGRGeometryShadow_Centroid(OGRGeometryShadow * self)3447 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_Centroid(OGRGeometryShadow *self){
3448     OGRGeometryShadow *pt = (OGRGeometryShadow*) OGR_G_CreateGeometry( wkbPoint );
3449     OGR_G_Centroid( self, pt );
3450     return pt;
3451   }
OGRGeometryShadow_PointOnSurface(OGRGeometryShadow * self)3452 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_PointOnSurface(OGRGeometryShadow *self){
3453     return (OGRGeometryShadow*) OGR_G_PointOnSurface( self );
3454   }
OGRGeometryShadow_WkbSize(OGRGeometryShadow * self)3455 SWIGINTERN size_t OGRGeometryShadow_WkbSize(OGRGeometryShadow *self){
3456     return OGR_G_WkbSizeEx(self);
3457   }
3458 
3459 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(unsigned long value)3460 SWIG_From_unsigned_SS_long  SWIG_PERL_DECL_ARGS_1(unsigned long value)
3461 {
3462   SV *sv;
3463   if (UVSIZE >= sizeof(value) || value <= UV_MAX)
3464     sv = newSVuv(value);
3465   else
3466     sv = newSVpvf("%lu", value);
3467   return sv_2mortal(sv);
3468 }
3469 
3470 
3471 #include <stdio.h>
3472 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(_WATCOM)
3473 # ifndef snprintf
3474 #  define snprintf _snprintf
3475 # endif
3476 #endif
3477 
3478 
3479 #ifdef SWIG_LONG_LONG_AVAILABLE
3480 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(unsigned long long value)3481 SWIG_From_unsigned_SS_long_SS_long  SWIG_PERL_DECL_ARGS_1(unsigned long long value)
3482 {
3483   SV *sv;
3484   if (UVSIZE >= sizeof(value) || value <= UV_MAX)
3485     sv = newSVuv((UV)(value));
3486   else {
3487     //sv = newSVpvf("%llu", value); doesn't work in non 64bit Perl
3488     char temp[256];
3489     sprintf(temp, "%llu", value);
3490     sv = newSVpv(temp, 0);
3491   }
3492   return sv_2mortal(sv);
3493 }
3494 #endif
3495 
3496 
3497 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(size_t value)3498 SWIG_From_size_t  SWIG_PERL_DECL_ARGS_1(size_t value)
3499 {
3500 #ifdef SWIG_LONG_LONG_AVAILABLE
3501   if (sizeof(size_t) <= sizeof(unsigned long)) {
3502 #endif
3503     return SWIG_From_unsigned_SS_long  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned long >(value));
3504 #ifdef SWIG_LONG_LONG_AVAILABLE
3505   } else {
3506     /* assume sizeof(size_t) <= sizeof(unsigned long long) */
3507     return SWIG_From_unsigned_SS_long_SS_long  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned long long >(value));
3508   }
3509 #endif
3510 }
3511 
OGRGeometryShadow_GetCoordinateDimension(OGRGeometryShadow * self)3512 SWIGINTERN int OGRGeometryShadow_GetCoordinateDimension(OGRGeometryShadow *self){
3513     return OGR_G_GetCoordinateDimension(self);
3514   }
OGRGeometryShadow_CoordinateDimension(OGRGeometryShadow * self)3515 SWIGINTERN int OGRGeometryShadow_CoordinateDimension(OGRGeometryShadow *self){
3516     return OGR_G_CoordinateDimension(self);
3517   }
OGRGeometryShadow_Is3D(OGRGeometryShadow * self)3518 SWIGINTERN int OGRGeometryShadow_Is3D(OGRGeometryShadow *self){
3519       return OGR_G_Is3D(self);
3520   }
OGRGeometryShadow_IsMeasured(OGRGeometryShadow * self)3521 SWIGINTERN int OGRGeometryShadow_IsMeasured(OGRGeometryShadow *self){
3522       return OGR_G_IsMeasured(self);
3523   }
OGRGeometryShadow_SetCoordinateDimension(OGRGeometryShadow * self,int dimension)3524 SWIGINTERN void OGRGeometryShadow_SetCoordinateDimension(OGRGeometryShadow *self,int dimension){
3525     OGR_G_SetCoordinateDimension(self, dimension);
3526   }
OGRGeometryShadow_Set3D(OGRGeometryShadow * self,int b3D)3527 SWIGINTERN void OGRGeometryShadow_Set3D(OGRGeometryShadow *self,int b3D){
3528       OGR_G_Set3D(self, b3D);
3529   }
OGRGeometryShadow_SetMeasured(OGRGeometryShadow * self,int bMeasured)3530 SWIGINTERN void OGRGeometryShadow_SetMeasured(OGRGeometryShadow *self,int bMeasured){
3531       OGR_G_SetMeasured(self, bMeasured);
3532   }
OGRGeometryShadow_GetDimension(OGRGeometryShadow * self)3533 SWIGINTERN int OGRGeometryShadow_GetDimension(OGRGeometryShadow *self){
3534     return OGR_G_GetDimension(self);
3535   }
OGRGeometryShadow_HasCurveGeometry(OGRGeometryShadow * self,int bLookForCircular=FALSE)3536 SWIGINTERN int OGRGeometryShadow_HasCurveGeometry(OGRGeometryShadow *self,int bLookForCircular=FALSE){
3537         return OGR_G_HasCurveGeometry(self, bLookForCircular);
3538   }
OGRGeometryShadow_GetLinearGeometry(OGRGeometryShadow * self,double dfMaxAngleStepSizeDegrees=0.0,char ** options=NULL)3539 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_GetLinearGeometry(OGRGeometryShadow *self,double dfMaxAngleStepSizeDegrees=0.0,char **options=NULL){
3540     return (OGRGeometryShadow* )OGR_G_GetLinearGeometry(self, dfMaxAngleStepSizeDegrees, options);
3541   }
OGRGeometryShadow_GetCurveGeometry(OGRGeometryShadow * self,char ** options=NULL)3542 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_GetCurveGeometry(OGRGeometryShadow *self,char **options=NULL){
3543     return (OGRGeometryShadow* )OGR_G_GetCurveGeometry(self, options);
3544   }
OGRGeometryShadow_Value(OGRGeometryShadow * self,double dfDistance)3545 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_Value(OGRGeometryShadow *self,double dfDistance){
3546     return OGR_G_Value(self, dfDistance);
3547   }
OGRGeometryShadow_Transform__SWIG_1(OGRGeometryShadow * self,OGRGeomTransformerShadow * transformer)3548 SWIGINTERN OGRGeometryShadow *OGRGeometryShadow_Transform__SWIG_1(OGRGeometryShadow *self,OGRGeomTransformerShadow *transformer){
3549     return (OGRGeometryShadow*)OGR_GeomTransformer_Transform(transformer, self);
3550   }
OGRGeometryShadow_CreatePreparedGeometry(OGRGeometryShadow * self)3551 SWIGINTERN OGRPreparedGeometryShadow *OGRGeometryShadow_CreatePreparedGeometry(OGRGeometryShadow *self){
3552     return (OGRPreparedGeometryShadow*)OGRCreatePreparedGeometry(self);
3553   }
OGRGeometryShadow_Move(OGRGeometryShadow * self,double dx,double dy,double dz=0)3554 SWIGINTERN void OGRGeometryShadow_Move(OGRGeometryShadow *self,double dx,double dy,double dz=0){
3555         int n = OGR_G_GetGeometryCount(self);
3556         if (n > 0) {
3557             int i;
3558             for (i = 0; i < n; i++) {
3559                 OGRGeometryShadow *g = (OGRGeometryShadow*)OGR_G_GetGeometryRef(self, i);
3560                 OGRGeometryShadow_Move(g, dx, dy, dz);
3561             }
3562         } else {
3563             int i;
3564             int d = OGR_G_GetCoordinateDimension(self);
3565             for (i = 0; i < OGR_G_GetPointCount(self); i++) {
3566                 if (d == 0) {
3567                 } else {
3568                     double x = OGR_G_GetX(self, i);
3569                     double y = OGR_G_GetY(self, i);
3570                     if (d == 2) {
3571                         OGR_G_SetPoint_2D(self, i, x+dx, y+dy);
3572                     } else {
3573                         double z = OGR_G_GetZ(self, i);
3574                         OGR_G_SetPoint(self, i, x+dx, y+dy, z+dz);
3575                     }
3576                 }
3577             }
3578         }
3579     }
delete_OGRPreparedGeometryShadow(OGRPreparedGeometryShadow * self)3580 SWIGINTERN void delete_OGRPreparedGeometryShadow(OGRPreparedGeometryShadow *self){
3581     OGRDestroyPreparedGeometry( self );
3582   }
OGRPreparedGeometryShadow_Intersects(OGRPreparedGeometryShadow * self,OGRGeometryShadow const * otherGeom)3583 SWIGINTERN bool OGRPreparedGeometryShadow_Intersects(OGRPreparedGeometryShadow *self,OGRGeometryShadow const *otherGeom){
3584     return OGRPreparedGeometryIntersects(self, (OGRGeometryH)otherGeom);
3585   }
OGRPreparedGeometryShadow_Contains(OGRPreparedGeometryShadow * self,OGRGeometryShadow const * otherGeom)3586 SWIGINTERN bool OGRPreparedGeometryShadow_Contains(OGRPreparedGeometryShadow *self,OGRGeometryShadow const *otherGeom){
3587     return OGRPreparedGeometryContains(self, (OGRGeometryH)otherGeom);
3588   }
new_OGRGeomTransformerShadow(OSRCoordinateTransformationShadow * ct,char ** options=NULL)3589 SWIGINTERN OGRGeomTransformerShadow *new_OGRGeomTransformerShadow(OSRCoordinateTransformationShadow *ct,char **options=NULL){
3590     return OGR_GeomTransformer_Create(ct, options);
3591   }
delete_OGRGeomTransformerShadow(OGRGeomTransformerShadow * self)3592 SWIGINTERN void delete_OGRGeomTransformerShadow(OGRGeomTransformerShadow *self){
3593     OGR_GeomTransformer_Destroy( self );
3594   }
OGRGeomTransformerShadow_Transform(OGRGeomTransformerShadow * self,OGRGeometryShadow * src_geom)3595 SWIGINTERN OGRGeometryShadow *OGRGeomTransformerShadow_Transform(OGRGeomTransformerShadow *self,OGRGeometryShadow *src_geom){
3596     return (OGRGeometryShadow*)OGR_GeomTransformer_Transform(self, src_geom);
3597   }
delete_OGRFieldDomainShadow(OGRFieldDomainShadow * self)3598 SWIGINTERN void delete_OGRFieldDomainShadow(OGRFieldDomainShadow *self){
3599     OGR_FldDomain_Destroy(self);
3600   }
OGRFieldDomainShadow_GetName(OGRFieldDomainShadow * self)3601 SWIGINTERN char const *OGRFieldDomainShadow_GetName(OGRFieldDomainShadow *self){
3602     return OGR_FldDomain_GetName(self);
3603   }
OGRFieldDomainShadow_GetDescription(OGRFieldDomainShadow * self)3604 SWIGINTERN char const *OGRFieldDomainShadow_GetDescription(OGRFieldDomainShadow *self){
3605     return OGR_FldDomain_GetDescription(self);
3606   }
OGRFieldDomainShadow_GetFieldType(OGRFieldDomainShadow * self)3607 SWIGINTERN OGRFieldType OGRFieldDomainShadow_GetFieldType(OGRFieldDomainShadow *self){
3608     return OGR_FldDomain_GetFieldType(self);
3609   }
OGRFieldDomainShadow_GetFieldSubType(OGRFieldDomainShadow * self)3610 SWIGINTERN OGRFieldSubType OGRFieldDomainShadow_GetFieldSubType(OGRFieldDomainShadow *self){
3611     return OGR_FldDomain_GetFieldSubType(self);
3612   }
OGRFieldDomainShadow_GetDomainType(OGRFieldDomainShadow * self)3613 SWIGINTERN OGRFieldDomainType OGRFieldDomainShadow_GetDomainType(OGRFieldDomainShadow *self){
3614     return OGR_FldDomain_GetDomainType(self);
3615   }
OGRFieldDomainShadow_GetSplitPolicy(OGRFieldDomainShadow * self)3616 SWIGINTERN OGRFieldDomainSplitPolicy OGRFieldDomainShadow_GetSplitPolicy(OGRFieldDomainShadow *self){
3617     return OGR_FldDomain_GetSplitPolicy(self);
3618   }
OGRFieldDomainShadow_SetSplitPolicy(OGRFieldDomainShadow * self,OGRFieldDomainSplitPolicy policy)3619 SWIGINTERN void OGRFieldDomainShadow_SetSplitPolicy(OGRFieldDomainShadow *self,OGRFieldDomainSplitPolicy policy){
3620     OGR_FldDomain_SetSplitPolicy(self, policy);
3621   }
OGRFieldDomainShadow_GetMergePolicy(OGRFieldDomainShadow * self)3622 SWIGINTERN OGRFieldDomainMergePolicy OGRFieldDomainShadow_GetMergePolicy(OGRFieldDomainShadow *self){
3623     return OGR_FldDomain_GetMergePolicy(self);
3624   }
OGRFieldDomainShadow_SetMergePolicy(OGRFieldDomainShadow * self,OGRFieldDomainMergePolicy policy)3625 SWIGINTERN void OGRFieldDomainShadow_SetMergePolicy(OGRFieldDomainShadow *self,OGRFieldDomainMergePolicy policy){
3626     OGR_FldDomain_SetMergePolicy(self, policy);
3627   }
OGRFieldDomainShadow_GetMinAsDouble(OGRFieldDomainShadow * self)3628 SWIGINTERN double OGRFieldDomainShadow_GetMinAsDouble(OGRFieldDomainShadow *self){
3629       const OGRField* psVal = OGR_RangeFldDomain_GetMin(self, NULL);
3630       if( psVal == NULL || OGR_RawField_IsUnset(psVal) )
3631           return CPLAtof("-inf");
3632       const OGRFieldType eType = OGR_FldDomain_GetFieldType(self);
3633       if( eType == OFTInteger )
3634           return psVal->Integer;
3635       if( eType == OFTInteger64 )
3636           return psVal->Integer64;
3637       if( eType == OFTReal )
3638           return psVal->Real;
3639       return CPLAtof("-inf");
3640   }
OGRFieldDomainShadow_IsMinInclusive(OGRFieldDomainShadow * self)3641 SWIGINTERN bool OGRFieldDomainShadow_IsMinInclusive(OGRFieldDomainShadow *self){
3642       bool isInclusive = false;
3643       (void)OGR_RangeFldDomain_GetMin(self, &isInclusive);
3644       return isInclusive;
3645   }
OGRFieldDomainShadow_GetMaxAsDouble(OGRFieldDomainShadow * self)3646 SWIGINTERN double OGRFieldDomainShadow_GetMaxAsDouble(OGRFieldDomainShadow *self){
3647       const OGRField* psVal = OGR_RangeFldDomain_GetMax(self, NULL);
3648       if( psVal == NULL || OGR_RawField_IsUnset(psVal) )
3649           return CPLAtof("inf");
3650       const OGRFieldType eType = OGR_FldDomain_GetFieldType(self);
3651       if( eType == OFTInteger )
3652           return psVal->Integer;
3653       if( eType == OFTInteger64 )
3654           return psVal->Integer64;
3655       if( eType == OFTReal )
3656           return psVal->Real;
3657       return CPLAtof("inf");
3658   }
OGRFieldDomainShadow_IsMaxInclusive(OGRFieldDomainShadow * self)3659 SWIGINTERN bool OGRFieldDomainShadow_IsMaxInclusive(OGRFieldDomainShadow *self){
3660       bool isInclusive = false;
3661       (void)OGR_RangeFldDomain_GetMax(self, &isInclusive);
3662       return isInclusive;
3663   }
OGRFieldDomainShadow_GetGlob(OGRFieldDomainShadow * self)3664 SWIGINTERN char const *OGRFieldDomainShadow_GetGlob(OGRFieldDomainShadow *self){
3665       return OGR_GlobFldDomain_GetGlob(self);
3666   }
3667 
3668 static
CreateRangeFieldDomain(const char * name,const char * description,OGRFieldType type,OGRFieldSubType subtype,double min,bool minIsInclusive,double max,double maxIsInclusive)3669 OGRFieldDomainShadow* CreateRangeFieldDomain( const char *name,
3670                                               const char* description,
3671                                               OGRFieldType type,
3672                                               OGRFieldSubType subtype,
3673                                               double min,
3674                                               bool minIsInclusive,
3675                                               double max,
3676                                               double maxIsInclusive) {
3677   OGRField sMin;
3678   if( type == OFTInteger )
3679       sMin.Integer = static_cast<int>(min);
3680   else if( type == OFTInteger64 )
3681       sMin.Integer64 = static_cast<GIntBig>(min);
3682   else if( type == OFTReal )
3683       sMin.Real = min;
3684   else
3685       return NULL;
3686   OGRField sMax;
3687   if( type == OFTInteger )
3688       sMax.Integer = static_cast<int>(max);
3689   else if( type == OFTInteger64 )
3690       sMax.Integer64 = static_cast<GIntBig>(max);
3691   else if( type == OFTReal )
3692       sMax.Real = max;
3693   else
3694       return NULL;
3695   return (OGRFieldDomainShadow*) OGR_RangeFldDomain_Create( name,
3696                                                             description,
3697                                                             type,
3698                                                             subtype,
3699                                                             &sMin,
3700                                                             minIsInclusive,
3701                                                             &sMax,
3702                                                             maxIsInclusive );
3703 }
3704 
3705 
3706 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,bool * val)3707 SWIG_AsVal_bool SWIG_PERL_DECL_ARGS_2(SV *obj, bool* val)
3708 {
3709   if (obj == &PL_sv_yes) {
3710     if (val) *val = true;
3711     return SWIG_OK;
3712   } else if (obj == &PL_sv_no) {
3713     if (val) *val = false;
3714     return SWIG_OK;
3715   } else {
3716     if (val) *val = SvTRUE(obj) ? true : false;
3717     return SWIG_AddCast(SWIG_OK);
3718   }
3719 }
3720 
3721 
3722 static
CreateGlobFieldDomain(const char * name,const char * description,OGRFieldType type,OGRFieldSubType subtype,const char * glob)3723 OGRFieldDomainShadow* CreateGlobFieldDomain( const char *name,
3724                                              const char* description,
3725                                              OGRFieldType type,
3726                                              OGRFieldSubType subtype,
3727                                              const char* glob ) {
3728   return (OGRFieldDomainShadow*) OGR_GlobFldDomain_Create( name,
3729                                                            description,
3730                                                            type,
3731                                                            subtype,
3732                                                            glob );
3733 }
3734 
3735 
GT_SetModifier(int eType,int bSetZ,int bSetM)3736 int GT_SetModifier( int eType, int bSetZ, int bSetM)
3737 {
3738     return OGR_GT_SetModifier((OGRwkbGeometryType)eType, bSetZ, bSetM);
3739 }
3740 
3741 
3742 static
GDALTermProgress_nocb(double dfProgress,const char * pszMessage=NULL,void * pData=NULL)3743 int GDALTermProgress_nocb( double dfProgress, const char * pszMessage=NULL, void *pData=NULL ) {
3744   return GDALTermProgress( dfProgress, pszMessage, pData);
3745 }
3746 
3747 #ifdef __cplusplus
3748 extern "C" {
3749 #endif
3750 
3751 #ifdef PERL_OBJECT
3752 #define MAGIC_CLASS _wrap_Geo__OGR_var::
3753 class _wrap_Geo__OGR_var : public CPerlObj {
3754 public:
3755 #else
3756 #define MAGIC_CLASS
3757 #endif
swig_magic_readonly(pTHX_ SV * SWIGUNUSEDPARM (sv),MAGIC * SWIGUNUSEDPARM (mg))3758 SWIGCLASS_STATIC int swig_magic_readonly(pTHX_ SV *SWIGUNUSEDPARM(sv), MAGIC *SWIGUNUSEDPARM(mg)) {
3759     MAGIC_PPERL
3760     croak("Value is read-only.");
3761     return 0;
3762 }
3763 
3764 
3765 #ifdef PERL_OBJECT
3766 };
3767 #endif
3768 
3769 #ifdef __cplusplus
3770 }
3771 #endif
3772 
3773 #ifdef __cplusplus
3774 extern "C" {
3775 #endif
XS(_wrap_UseExceptions)3776 XS(_wrap_UseExceptions) {
3777   {
3778     int argvi = 0;
3779     dXSARGS;
3780 
3781     if ((items < 0) || (items > 0)) {
3782       SWIG_croak("Usage: UseExceptions();");
3783     }
3784     UseExceptions();
3785     ST(argvi) = sv_newmortal();
3786     XSRETURN(argvi);
3787   fail:
3788     SWIG_croak_null();
3789   }
3790 }
3791 
3792 
XS(_wrap_DontUseExceptions)3793 XS(_wrap_DontUseExceptions) {
3794   {
3795     int argvi = 0;
3796     dXSARGS;
3797 
3798     if ((items < 0) || (items > 0)) {
3799       SWIG_croak("Usage: DontUseExceptions();");
3800     }
3801     DontUseExceptions();
3802     ST(argvi) = sv_newmortal();
3803     XSRETURN(argvi);
3804   fail:
3805     SWIG_croak_null();
3806   }
3807 }
3808 
3809 
XS(_wrap_new_StyleTable)3810 XS(_wrap_new_StyleTable) {
3811   {
3812     int argvi = 0;
3813     OGRStyleTableShadow *result = 0 ;
3814     dXSARGS;
3815 
3816     if ((items < 0) || (items > 0)) {
3817       SWIG_croak("Usage: new_StyleTable();");
3818     }
3819     {
3820       CPLErrorReset();
3821       result = (OGRStyleTableShadow *)new_OGRStyleTableShadow();
3822       CPLErr eclass = CPLGetLastErrorType();
3823       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
3824         do_confess( CPLGetLastErrorMsg(), 0 );
3825 
3826 
3827 
3828 
3829 
3830       }
3831 
3832 
3833       /*
3834           Make warnings regular Perl warnings. This duplicates the warning
3835           message if DontUseExceptions() is in effect (it is not by default).
3836           */
3837       if ( eclass == CE_Warning ) {
3838         warn( CPLGetLastErrorMsg(), "%s" );
3839       }
3840 
3841 
3842     }
3843     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRStyleTableShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
3844     XSRETURN(argvi);
3845   fail:
3846     SWIG_croak_null();
3847   }
3848 }
3849 
3850 
XS(_wrap_delete_StyleTable)3851 XS(_wrap_delete_StyleTable) {
3852   {
3853     OGRStyleTableShadow *arg1 = (OGRStyleTableShadow *) 0 ;
3854     void *argp1 = 0 ;
3855     int res1 = 0 ;
3856     int argvi = 0;
3857     dXSARGS;
3858 
3859     if ((items < 1) || (items > 1)) {
3860       SWIG_croak("Usage: delete_StyleTable(self);");
3861     }
3862     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRStyleTableShadow, SWIG_POINTER_DISOWN |  0 );
3863     if (!SWIG_IsOK(res1)) {
3864       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_StyleTable" "', argument " "1"" of type '" "OGRStyleTableShadow *""'");
3865     }
3866     arg1 = reinterpret_cast< OGRStyleTableShadow * >(argp1);
3867     {
3868       CPLErrorReset();
3869       delete_OGRStyleTableShadow(arg1);
3870       CPLErr eclass = CPLGetLastErrorType();
3871       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
3872         do_confess( CPLGetLastErrorMsg(), 0 );
3873 
3874 
3875 
3876 
3877 
3878       }
3879 
3880 
3881       /*
3882           Make warnings regular Perl warnings. This duplicates the warning
3883           message if DontUseExceptions() is in effect (it is not by default).
3884           */
3885       if ( eclass == CE_Warning ) {
3886         warn( CPLGetLastErrorMsg(), "%s" );
3887       }
3888 
3889 
3890     }
3891     {
3892       /* %typemap(out) void */
3893     }
3894 
3895     XSRETURN(argvi);
3896   fail:
3897 
3898     SWIG_croak_null();
3899   }
3900 }
3901 
3902 
XS(_wrap_StyleTable_AddStyle)3903 XS(_wrap_StyleTable_AddStyle) {
3904   {
3905     OGRStyleTableShadow *arg1 = (OGRStyleTableShadow *) 0 ;
3906     char *arg2 = (char *) 0 ;
3907     char *arg3 = (char *) 0 ;
3908     void *argp1 = 0 ;
3909     int res1 = 0 ;
3910     int res2 ;
3911     char *buf2 = 0 ;
3912     int alloc2 = 0 ;
3913     int res3 ;
3914     char *buf3 = 0 ;
3915     int alloc3 = 0 ;
3916     int argvi = 0;
3917     int result;
3918     dXSARGS;
3919 
3920     if ((items < 3) || (items > 3)) {
3921       SWIG_croak("Usage: StyleTable_AddStyle(self,pszName,pszStyleString);");
3922     }
3923     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRStyleTableShadow, 0 |  0 );
3924     if (!SWIG_IsOK(res1)) {
3925       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "StyleTable_AddStyle" "', argument " "1"" of type '" "OGRStyleTableShadow *""'");
3926     }
3927     arg1 = reinterpret_cast< OGRStyleTableShadow * >(argp1);
3928     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
3929     if (!SWIG_IsOK(res2)) {
3930       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "StyleTable_AddStyle" "', argument " "2"" of type '" "char const *""'");
3931     }
3932     arg2 = reinterpret_cast< char * >(buf2);
3933     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
3934     if (!SWIG_IsOK(res3)) {
3935       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "StyleTable_AddStyle" "', argument " "3"" of type '" "char const *""'");
3936     }
3937     arg3 = reinterpret_cast< char * >(buf3);
3938     {
3939       CPLErrorReset();
3940       result = (int)OGRStyleTableShadow_AddStyle(arg1,(char const *)arg2,(char const *)arg3);
3941       CPLErr eclass = CPLGetLastErrorType();
3942       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
3943         do_confess( CPLGetLastErrorMsg(), 0 );
3944 
3945 
3946 
3947 
3948 
3949       }
3950 
3951 
3952       /*
3953           Make warnings regular Perl warnings. This duplicates the warning
3954           message if DontUseExceptions() is in effect (it is not by default).
3955           */
3956       if ( eclass == CE_Warning ) {
3957         warn( CPLGetLastErrorMsg(), "%s" );
3958       }
3959 
3960 
3961     }
3962     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
3963 
3964     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
3965     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
3966     XSRETURN(argvi);
3967   fail:
3968 
3969     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
3970     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
3971     SWIG_croak_null();
3972   }
3973 }
3974 
3975 
XS(_wrap_StyleTable_LoadStyleTable)3976 XS(_wrap_StyleTable_LoadStyleTable) {
3977   {
3978     OGRStyleTableShadow *arg1 = (OGRStyleTableShadow *) 0 ;
3979     char *arg2 = (char *) 0 ;
3980     void *argp1 = 0 ;
3981     int res1 = 0 ;
3982     U8 *tmpbuf2 = NULL ;
3983     int argvi = 0;
3984     int result;
3985     dXSARGS;
3986 
3987     {
3988       /* %typemap(default) const char * utf8_path */
3989       arg2 = (char *)"";
3990     }
3991     if ((items < 1) || (items > 2)) {
3992       SWIG_croak("Usage: StyleTable_LoadStyleTable(self,utf8_path);");
3993     }
3994     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRStyleTableShadow, 0 |  0 );
3995     if (!SWIG_IsOK(res1)) {
3996       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "StyleTable_LoadStyleTable" "', argument " "1"" of type '" "OGRStyleTableShadow *""'");
3997     }
3998     arg1 = reinterpret_cast< OGRStyleTableShadow * >(argp1);
3999     if (items > 1) {
4000       {
4001         /* %typemap(in,numinputs=1) (const char* utf8_path) (U8 *tmpbuf2) */
4002         arg2 = sv_to_utf8_string(ST(1), &tmpbuf2);
4003       }
4004     }
4005     {
4006       CPLErrorReset();
4007       result = (int)OGRStyleTableShadow_LoadStyleTable(arg1,(char const *)arg2);
4008       CPLErr eclass = CPLGetLastErrorType();
4009       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
4010         do_confess( CPLGetLastErrorMsg(), 0 );
4011 
4012 
4013 
4014 
4015 
4016       }
4017 
4018 
4019       /*
4020           Make warnings regular Perl warnings. This duplicates the warning
4021           message if DontUseExceptions() is in effect (it is not by default).
4022           */
4023       if ( eclass == CE_Warning ) {
4024         warn( CPLGetLastErrorMsg(), "%s" );
4025       }
4026 
4027 
4028     }
4029     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
4030 
4031     {
4032       /* %typemap(freearg) (const char* utf8_path) */
4033       if (tmpbuf2) Safefree(tmpbuf2);
4034     }
4035     XSRETURN(argvi);
4036   fail:
4037 
4038     {
4039       /* %typemap(freearg) (const char* utf8_path) */
4040       if (tmpbuf2) Safefree(tmpbuf2);
4041     }
4042     SWIG_croak_null();
4043   }
4044 }
4045 
4046 
XS(_wrap_StyleTable_SaveStyleTable)4047 XS(_wrap_StyleTable_SaveStyleTable) {
4048   {
4049     OGRStyleTableShadow *arg1 = (OGRStyleTableShadow *) 0 ;
4050     char *arg2 = (char *) 0 ;
4051     void *argp1 = 0 ;
4052     int res1 = 0 ;
4053     U8 *tmpbuf2 = NULL ;
4054     int argvi = 0;
4055     int result;
4056     dXSARGS;
4057 
4058     {
4059       /* %typemap(default) const char * utf8_path */
4060       arg2 = (char *)"";
4061     }
4062     if ((items < 1) || (items > 2)) {
4063       SWIG_croak("Usage: StyleTable_SaveStyleTable(self,utf8_path);");
4064     }
4065     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRStyleTableShadow, 0 |  0 );
4066     if (!SWIG_IsOK(res1)) {
4067       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "StyleTable_SaveStyleTable" "', argument " "1"" of type '" "OGRStyleTableShadow *""'");
4068     }
4069     arg1 = reinterpret_cast< OGRStyleTableShadow * >(argp1);
4070     if (items > 1) {
4071       {
4072         /* %typemap(in,numinputs=1) (const char* utf8_path) (U8 *tmpbuf2) */
4073         arg2 = sv_to_utf8_string(ST(1), &tmpbuf2);
4074       }
4075     }
4076     {
4077       CPLErrorReset();
4078       result = (int)OGRStyleTableShadow_SaveStyleTable(arg1,(char const *)arg2);
4079       CPLErr eclass = CPLGetLastErrorType();
4080       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
4081         do_confess( CPLGetLastErrorMsg(), 0 );
4082 
4083 
4084 
4085 
4086 
4087       }
4088 
4089 
4090       /*
4091           Make warnings regular Perl warnings. This duplicates the warning
4092           message if DontUseExceptions() is in effect (it is not by default).
4093           */
4094       if ( eclass == CE_Warning ) {
4095         warn( CPLGetLastErrorMsg(), "%s" );
4096       }
4097 
4098 
4099     }
4100     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
4101 
4102     {
4103       /* %typemap(freearg) (const char* utf8_path) */
4104       if (tmpbuf2) Safefree(tmpbuf2);
4105     }
4106     XSRETURN(argvi);
4107   fail:
4108 
4109     {
4110       /* %typemap(freearg) (const char* utf8_path) */
4111       if (tmpbuf2) Safefree(tmpbuf2);
4112     }
4113     SWIG_croak_null();
4114   }
4115 }
4116 
4117 
XS(_wrap_StyleTable_Find)4118 XS(_wrap_StyleTable_Find) {
4119   {
4120     OGRStyleTableShadow *arg1 = (OGRStyleTableShadow *) 0 ;
4121     char *arg2 = (char *) 0 ;
4122     void *argp1 = 0 ;
4123     int res1 = 0 ;
4124     int res2 ;
4125     char *buf2 = 0 ;
4126     int alloc2 = 0 ;
4127     int argvi = 0;
4128     char *result = 0 ;
4129     dXSARGS;
4130 
4131     if ((items < 2) || (items > 2)) {
4132       SWIG_croak("Usage: StyleTable_Find(self,pszName);");
4133     }
4134     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRStyleTableShadow, 0 |  0 );
4135     if (!SWIG_IsOK(res1)) {
4136       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "StyleTable_Find" "', argument " "1"" of type '" "OGRStyleTableShadow *""'");
4137     }
4138     arg1 = reinterpret_cast< OGRStyleTableShadow * >(argp1);
4139     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
4140     if (!SWIG_IsOK(res2)) {
4141       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "StyleTable_Find" "', argument " "2"" of type '" "char const *""'");
4142     }
4143     arg2 = reinterpret_cast< char * >(buf2);
4144     {
4145       CPLErrorReset();
4146       result = (char *)OGRStyleTableShadow_Find(arg1,(char const *)arg2);
4147       CPLErr eclass = CPLGetLastErrorType();
4148       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
4149         do_confess( CPLGetLastErrorMsg(), 0 );
4150 
4151 
4152 
4153 
4154 
4155       }
4156 
4157 
4158       /*
4159           Make warnings regular Perl warnings. This duplicates the warning
4160           message if DontUseExceptions() is in effect (it is not by default).
4161           */
4162       if ( eclass == CE_Warning ) {
4163         warn( CPLGetLastErrorMsg(), "%s" );
4164       }
4165 
4166 
4167     }
4168     {
4169       /* %typemap(out) const char * */
4170       ST(argvi) = newSVpv(result, 0);
4171       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
4172       sv_2mortal(ST(argvi));
4173       argvi++;
4174     }
4175 
4176     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
4177     XSRETURN(argvi);
4178   fail:
4179 
4180     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
4181     SWIG_croak_null();
4182   }
4183 }
4184 
4185 
XS(_wrap_StyleTable_ResetStyleStringReading)4186 XS(_wrap_StyleTable_ResetStyleStringReading) {
4187   {
4188     OGRStyleTableShadow *arg1 = (OGRStyleTableShadow *) 0 ;
4189     void *argp1 = 0 ;
4190     int res1 = 0 ;
4191     int argvi = 0;
4192     dXSARGS;
4193 
4194     if ((items < 1) || (items > 1)) {
4195       SWIG_croak("Usage: StyleTable_ResetStyleStringReading(self);");
4196     }
4197     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRStyleTableShadow, 0 |  0 );
4198     if (!SWIG_IsOK(res1)) {
4199       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "StyleTable_ResetStyleStringReading" "', argument " "1"" of type '" "OGRStyleTableShadow *""'");
4200     }
4201     arg1 = reinterpret_cast< OGRStyleTableShadow * >(argp1);
4202     {
4203       CPLErrorReset();
4204       OGRStyleTableShadow_ResetStyleStringReading(arg1);
4205       CPLErr eclass = CPLGetLastErrorType();
4206       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
4207         do_confess( CPLGetLastErrorMsg(), 0 );
4208 
4209 
4210 
4211 
4212 
4213       }
4214 
4215 
4216       /*
4217           Make warnings regular Perl warnings. This duplicates the warning
4218           message if DontUseExceptions() is in effect (it is not by default).
4219           */
4220       if ( eclass == CE_Warning ) {
4221         warn( CPLGetLastErrorMsg(), "%s" );
4222       }
4223 
4224 
4225     }
4226     {
4227       /* %typemap(out) void */
4228     }
4229 
4230     XSRETURN(argvi);
4231   fail:
4232 
4233     SWIG_croak_null();
4234   }
4235 }
4236 
4237 
XS(_wrap_StyleTable_GetNextStyle)4238 XS(_wrap_StyleTable_GetNextStyle) {
4239   {
4240     OGRStyleTableShadow *arg1 = (OGRStyleTableShadow *) 0 ;
4241     void *argp1 = 0 ;
4242     int res1 = 0 ;
4243     int argvi = 0;
4244     char *result = 0 ;
4245     dXSARGS;
4246 
4247     if ((items < 1) || (items > 1)) {
4248       SWIG_croak("Usage: StyleTable_GetNextStyle(self);");
4249     }
4250     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRStyleTableShadow, 0 |  0 );
4251     if (!SWIG_IsOK(res1)) {
4252       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "StyleTable_GetNextStyle" "', argument " "1"" of type '" "OGRStyleTableShadow *""'");
4253     }
4254     arg1 = reinterpret_cast< OGRStyleTableShadow * >(argp1);
4255     {
4256       CPLErrorReset();
4257       result = (char *)OGRStyleTableShadow_GetNextStyle(arg1);
4258       CPLErr eclass = CPLGetLastErrorType();
4259       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
4260         do_confess( CPLGetLastErrorMsg(), 0 );
4261 
4262 
4263 
4264 
4265 
4266       }
4267 
4268 
4269       /*
4270           Make warnings regular Perl warnings. This duplicates the warning
4271           message if DontUseExceptions() is in effect (it is not by default).
4272           */
4273       if ( eclass == CE_Warning ) {
4274         warn( CPLGetLastErrorMsg(), "%s" );
4275       }
4276 
4277 
4278     }
4279     {
4280       /* %typemap(out) const char * */
4281       ST(argvi) = newSVpv(result, 0);
4282       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
4283       sv_2mortal(ST(argvi));
4284       argvi++;
4285     }
4286 
4287     XSRETURN(argvi);
4288   fail:
4289 
4290     SWIG_croak_null();
4291   }
4292 }
4293 
4294 
XS(_wrap_StyleTable_GetLastStyleName)4295 XS(_wrap_StyleTable_GetLastStyleName) {
4296   {
4297     OGRStyleTableShadow *arg1 = (OGRStyleTableShadow *) 0 ;
4298     void *argp1 = 0 ;
4299     int res1 = 0 ;
4300     int argvi = 0;
4301     char *result = 0 ;
4302     dXSARGS;
4303 
4304     if ((items < 1) || (items > 1)) {
4305       SWIG_croak("Usage: StyleTable_GetLastStyleName(self);");
4306     }
4307     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRStyleTableShadow, 0 |  0 );
4308     if (!SWIG_IsOK(res1)) {
4309       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "StyleTable_GetLastStyleName" "', argument " "1"" of type '" "OGRStyleTableShadow *""'");
4310     }
4311     arg1 = reinterpret_cast< OGRStyleTableShadow * >(argp1);
4312     {
4313       CPLErrorReset();
4314       result = (char *)OGRStyleTableShadow_GetLastStyleName(arg1);
4315       CPLErr eclass = CPLGetLastErrorType();
4316       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
4317         do_confess( CPLGetLastErrorMsg(), 0 );
4318 
4319 
4320 
4321 
4322 
4323       }
4324 
4325 
4326       /*
4327           Make warnings regular Perl warnings. This duplicates the warning
4328           message if DontUseExceptions() is in effect (it is not by default).
4329           */
4330       if ( eclass == CE_Warning ) {
4331         warn( CPLGetLastErrorMsg(), "%s" );
4332       }
4333 
4334 
4335     }
4336     {
4337       /* %typemap(out) const char * */
4338       ST(argvi) = newSVpv(result, 0);
4339       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
4340       sv_2mortal(ST(argvi));
4341       argvi++;
4342     }
4343 
4344     XSRETURN(argvi);
4345   fail:
4346 
4347     SWIG_croak_null();
4348   }
4349 }
4350 
4351 
XS(_wrap_Layer_GetRefCount)4352 XS(_wrap_Layer_GetRefCount) {
4353   {
4354     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
4355     void *argp1 = 0 ;
4356     int res1 = 0 ;
4357     int argvi = 0;
4358     int result;
4359     dXSARGS;
4360 
4361     if ((items < 1) || (items > 1)) {
4362       SWIG_croak("Usage: Layer_GetRefCount(self);");
4363     }
4364     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
4365     if (!SWIG_IsOK(res1)) {
4366       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_GetRefCount" "', argument " "1"" of type '" "OGRLayerShadow *""'");
4367     }
4368     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
4369     {
4370       CPLErrorReset();
4371       result = (int)OGRLayerShadow_GetRefCount(arg1);
4372       CPLErr eclass = CPLGetLastErrorType();
4373       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
4374         do_confess( CPLGetLastErrorMsg(), 0 );
4375 
4376 
4377 
4378 
4379 
4380       }
4381 
4382 
4383       /*
4384           Make warnings regular Perl warnings. This duplicates the warning
4385           message if DontUseExceptions() is in effect (it is not by default).
4386           */
4387       if ( eclass == CE_Warning ) {
4388         warn( CPLGetLastErrorMsg(), "%s" );
4389       }
4390 
4391 
4392     }
4393     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
4394 
4395     XSRETURN(argvi);
4396   fail:
4397 
4398     SWIG_croak_null();
4399   }
4400 }
4401 
4402 
XS(_wrap_Layer_SetSpatialFilter__SWIG_0)4403 XS(_wrap_Layer_SetSpatialFilter__SWIG_0) {
4404   {
4405     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
4406     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
4407     void *argp1 = 0 ;
4408     int res1 = 0 ;
4409     void *argp2 = 0 ;
4410     int res2 = 0 ;
4411     int argvi = 0;
4412     dXSARGS;
4413 
4414     if ((items < 2) || (items > 2)) {
4415       SWIG_croak("Usage: Layer_SetSpatialFilter(self,filter);");
4416     }
4417     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
4418     if (!SWIG_IsOK(res1)) {
4419       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_SetSpatialFilter" "', argument " "1"" of type '" "OGRLayerShadow *""'");
4420     }
4421     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
4422     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
4423     if (!SWIG_IsOK(res2)) {
4424       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Layer_SetSpatialFilter" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
4425     }
4426     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
4427     {
4428       CPLErrorReset();
4429       OGRLayerShadow_SetSpatialFilter__SWIG_0(arg1,arg2);
4430       CPLErr eclass = CPLGetLastErrorType();
4431       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
4432         do_confess( CPLGetLastErrorMsg(), 0 );
4433 
4434 
4435 
4436 
4437 
4438       }
4439 
4440 
4441       /*
4442           Make warnings regular Perl warnings. This duplicates the warning
4443           message if DontUseExceptions() is in effect (it is not by default).
4444           */
4445       if ( eclass == CE_Warning ) {
4446         warn( CPLGetLastErrorMsg(), "%s" );
4447       }
4448 
4449 
4450     }
4451     {
4452       /* %typemap(out) void */
4453     }
4454 
4455 
4456     XSRETURN(argvi);
4457   fail:
4458 
4459 
4460     SWIG_croak_null();
4461   }
4462 }
4463 
4464 
XS(_wrap_Layer_SetSpatialFilterRect__SWIG_0)4465 XS(_wrap_Layer_SetSpatialFilterRect__SWIG_0) {
4466   {
4467     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
4468     double arg2 ;
4469     double arg3 ;
4470     double arg4 ;
4471     double arg5 ;
4472     void *argp1 = 0 ;
4473     int res1 = 0 ;
4474     double val2 ;
4475     int ecode2 = 0 ;
4476     double val3 ;
4477     int ecode3 = 0 ;
4478     double val4 ;
4479     int ecode4 = 0 ;
4480     double val5 ;
4481     int ecode5 = 0 ;
4482     int argvi = 0;
4483     dXSARGS;
4484 
4485     if ((items < 5) || (items > 5)) {
4486       SWIG_croak("Usage: Layer_SetSpatialFilterRect(self,minx,miny,maxx,maxy);");
4487     }
4488     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
4489     if (!SWIG_IsOK(res1)) {
4490       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_SetSpatialFilterRect" "', argument " "1"" of type '" "OGRLayerShadow *""'");
4491     }
4492     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
4493     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
4494     if (!SWIG_IsOK(ecode2)) {
4495       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Layer_SetSpatialFilterRect" "', argument " "2"" of type '" "double""'");
4496     }
4497     arg2 = static_cast< double >(val2);
4498     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
4499     if (!SWIG_IsOK(ecode3)) {
4500       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Layer_SetSpatialFilterRect" "', argument " "3"" of type '" "double""'");
4501     }
4502     arg3 = static_cast< double >(val3);
4503     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
4504     if (!SWIG_IsOK(ecode4)) {
4505       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "Layer_SetSpatialFilterRect" "', argument " "4"" of type '" "double""'");
4506     }
4507     arg4 = static_cast< double >(val4);
4508     ecode5 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
4509     if (!SWIG_IsOK(ecode5)) {
4510       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "Layer_SetSpatialFilterRect" "', argument " "5"" of type '" "double""'");
4511     }
4512     arg5 = static_cast< double >(val5);
4513     {
4514       CPLErrorReset();
4515       OGRLayerShadow_SetSpatialFilterRect__SWIG_0(arg1,arg2,arg3,arg4,arg5);
4516       CPLErr eclass = CPLGetLastErrorType();
4517       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
4518         do_confess( CPLGetLastErrorMsg(), 0 );
4519 
4520 
4521 
4522 
4523 
4524       }
4525 
4526 
4527       /*
4528           Make warnings regular Perl warnings. This duplicates the warning
4529           message if DontUseExceptions() is in effect (it is not by default).
4530           */
4531       if ( eclass == CE_Warning ) {
4532         warn( CPLGetLastErrorMsg(), "%s" );
4533       }
4534 
4535 
4536     }
4537     {
4538       /* %typemap(out) void */
4539     }
4540 
4541 
4542 
4543 
4544 
4545     XSRETURN(argvi);
4546   fail:
4547 
4548 
4549 
4550 
4551 
4552     SWIG_croak_null();
4553   }
4554 }
4555 
4556 
XS(_wrap_Layer_SetSpatialFilter__SWIG_1)4557 XS(_wrap_Layer_SetSpatialFilter__SWIG_1) {
4558   {
4559     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
4560     int arg2 ;
4561     OGRGeometryShadow *arg3 = (OGRGeometryShadow *) 0 ;
4562     void *argp1 = 0 ;
4563     int res1 = 0 ;
4564     int val2 ;
4565     int ecode2 = 0 ;
4566     void *argp3 = 0 ;
4567     int res3 = 0 ;
4568     int argvi = 0;
4569     dXSARGS;
4570 
4571     if ((items < 3) || (items > 3)) {
4572       SWIG_croak("Usage: Layer_SetSpatialFilter(self,iGeomField,filter);");
4573     }
4574     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
4575     if (!SWIG_IsOK(res1)) {
4576       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_SetSpatialFilter" "', argument " "1"" of type '" "OGRLayerShadow *""'");
4577     }
4578     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
4579     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
4580     if (!SWIG_IsOK(ecode2)) {
4581       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Layer_SetSpatialFilter" "', argument " "2"" of type '" "int""'");
4582     }
4583     arg2 = static_cast< int >(val2);
4584     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
4585     if (!SWIG_IsOK(res3)) {
4586       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Layer_SetSpatialFilter" "', argument " "3"" of type '" "OGRGeometryShadow *""'");
4587     }
4588     arg3 = reinterpret_cast< OGRGeometryShadow * >(argp3);
4589     {
4590       CPLErrorReset();
4591       OGRLayerShadow_SetSpatialFilter__SWIG_1(arg1,arg2,arg3);
4592       CPLErr eclass = CPLGetLastErrorType();
4593       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
4594         do_confess( CPLGetLastErrorMsg(), 0 );
4595 
4596 
4597 
4598 
4599 
4600       }
4601 
4602 
4603       /*
4604           Make warnings regular Perl warnings. This duplicates the warning
4605           message if DontUseExceptions() is in effect (it is not by default).
4606           */
4607       if ( eclass == CE_Warning ) {
4608         warn( CPLGetLastErrorMsg(), "%s" );
4609       }
4610 
4611 
4612     }
4613     {
4614       /* %typemap(out) void */
4615     }
4616 
4617 
4618 
4619     XSRETURN(argvi);
4620   fail:
4621 
4622 
4623 
4624     SWIG_croak_null();
4625   }
4626 }
4627 
4628 
XS(_wrap_Layer_SetSpatialFilter)4629 XS(_wrap_Layer_SetSpatialFilter) {
4630   dXSARGS;
4631 
4632   {
4633     unsigned long _index = 0;
4634     SWIG_TypeRank _rank = 0;
4635     if (items == 2) {
4636       SWIG_TypeRank _ranki = 0;
4637       SWIG_TypeRank _rankm = 0;
4638       SWIG_TypeRank _pi = 1;
4639       int _v = 0;
4640       {
4641         void *vptr = 0;
4642         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_OGRLayerShadow, 0);
4643         _v = SWIG_CheckState(res);
4644       }
4645       if (!_v) goto check_1;
4646       _ranki += _v*_pi;
4647       _rankm += _pi;
4648       _pi *= SWIG_MAXCASTRANK;
4649       {
4650         void *vptr = 0;
4651         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_OGRGeometryShadow, 0);
4652         _v = SWIG_CheckState(res);
4653       }
4654       if (!_v) goto check_1;
4655       _ranki += _v*_pi;
4656       _rankm += _pi;
4657       _pi *= SWIG_MAXCASTRANK;
4658       if (!_index || (_ranki < _rank)) {
4659         _rank = _ranki; _index = 1;
4660         if (_rank == _rankm) goto dispatch;
4661       }
4662     }
4663   check_1:
4664 
4665     if (items == 3) {
4666       SWIG_TypeRank _ranki = 0;
4667       SWIG_TypeRank _rankm = 0;
4668       SWIG_TypeRank _pi = 1;
4669       int _v = 0;
4670       {
4671         void *vptr = 0;
4672         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_OGRLayerShadow, 0);
4673         _v = SWIG_CheckState(res);
4674       }
4675       if (!_v) goto check_2;
4676       _ranki += _v*_pi;
4677       _rankm += _pi;
4678       _pi *= SWIG_MAXCASTRANK;
4679       {
4680         {
4681           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
4682           _v = SWIG_CheckState(res);
4683         }
4684       }
4685       if (!_v) goto check_2;
4686       _ranki += _v*_pi;
4687       _rankm += _pi;
4688       _pi *= SWIG_MAXCASTRANK;
4689       {
4690         void *vptr = 0;
4691         int res = SWIG_ConvertPtr(ST(2), &vptr, SWIGTYPE_p_OGRGeometryShadow, 0);
4692         _v = SWIG_CheckState(res);
4693       }
4694       if (!_v) goto check_2;
4695       _ranki += _v*_pi;
4696       _rankm += _pi;
4697       _pi *= SWIG_MAXCASTRANK;
4698       if (!_index || (_ranki < _rank)) {
4699         _rank = _ranki; _index = 2;
4700         if (_rank == _rankm) goto dispatch;
4701       }
4702     }
4703   check_2:
4704 
4705   dispatch:
4706     switch(_index) {
4707     case 1:
4708       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Layer_SetSpatialFilter__SWIG_0); return;
4709     case 2:
4710       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Layer_SetSpatialFilter__SWIG_1); return;
4711     }
4712   }
4713 
4714   croak("No matching function for overloaded 'Layer_SetSpatialFilter'");
4715   XSRETURN(0);
4716 }
4717 
4718 
XS(_wrap_Layer_SetSpatialFilterRect__SWIG_1)4719 XS(_wrap_Layer_SetSpatialFilterRect__SWIG_1) {
4720   {
4721     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
4722     int arg2 ;
4723     double arg3 ;
4724     double arg4 ;
4725     double arg5 ;
4726     double arg6 ;
4727     void *argp1 = 0 ;
4728     int res1 = 0 ;
4729     int val2 ;
4730     int ecode2 = 0 ;
4731     double val3 ;
4732     int ecode3 = 0 ;
4733     double val4 ;
4734     int ecode4 = 0 ;
4735     double val5 ;
4736     int ecode5 = 0 ;
4737     double val6 ;
4738     int ecode6 = 0 ;
4739     int argvi = 0;
4740     dXSARGS;
4741 
4742     if ((items < 6) || (items > 6)) {
4743       SWIG_croak("Usage: Layer_SetSpatialFilterRect(self,iGeomField,minx,miny,maxx,maxy);");
4744     }
4745     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
4746     if (!SWIG_IsOK(res1)) {
4747       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_SetSpatialFilterRect" "', argument " "1"" of type '" "OGRLayerShadow *""'");
4748     }
4749     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
4750     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
4751     if (!SWIG_IsOK(ecode2)) {
4752       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Layer_SetSpatialFilterRect" "', argument " "2"" of type '" "int""'");
4753     }
4754     arg2 = static_cast< int >(val2);
4755     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
4756     if (!SWIG_IsOK(ecode3)) {
4757       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Layer_SetSpatialFilterRect" "', argument " "3"" of type '" "double""'");
4758     }
4759     arg3 = static_cast< double >(val3);
4760     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
4761     if (!SWIG_IsOK(ecode4)) {
4762       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "Layer_SetSpatialFilterRect" "', argument " "4"" of type '" "double""'");
4763     }
4764     arg4 = static_cast< double >(val4);
4765     ecode5 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
4766     if (!SWIG_IsOK(ecode5)) {
4767       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "Layer_SetSpatialFilterRect" "', argument " "5"" of type '" "double""'");
4768     }
4769     arg5 = static_cast< double >(val5);
4770     ecode6 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
4771     if (!SWIG_IsOK(ecode6)) {
4772       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "Layer_SetSpatialFilterRect" "', argument " "6"" of type '" "double""'");
4773     }
4774     arg6 = static_cast< double >(val6);
4775     {
4776       CPLErrorReset();
4777       OGRLayerShadow_SetSpatialFilterRect__SWIG_1(arg1,arg2,arg3,arg4,arg5,arg6);
4778       CPLErr eclass = CPLGetLastErrorType();
4779       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
4780         do_confess( CPLGetLastErrorMsg(), 0 );
4781 
4782 
4783 
4784 
4785 
4786       }
4787 
4788 
4789       /*
4790           Make warnings regular Perl warnings. This duplicates the warning
4791           message if DontUseExceptions() is in effect (it is not by default).
4792           */
4793       if ( eclass == CE_Warning ) {
4794         warn( CPLGetLastErrorMsg(), "%s" );
4795       }
4796 
4797 
4798     }
4799     {
4800       /* %typemap(out) void */
4801     }
4802 
4803 
4804 
4805 
4806 
4807 
4808     XSRETURN(argvi);
4809   fail:
4810 
4811 
4812 
4813 
4814 
4815 
4816     SWIG_croak_null();
4817   }
4818 }
4819 
4820 
XS(_wrap_Layer_SetSpatialFilterRect)4821 XS(_wrap_Layer_SetSpatialFilterRect) {
4822   dXSARGS;
4823 
4824   {
4825     unsigned long _index = 0;
4826     SWIG_TypeRank _rank = 0;
4827     if (items == 5) {
4828       SWIG_TypeRank _ranki = 0;
4829       SWIG_TypeRank _rankm = 0;
4830       SWIG_TypeRank _pi = 1;
4831       int _v = 0;
4832       {
4833         void *vptr = 0;
4834         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_OGRLayerShadow, 0);
4835         _v = SWIG_CheckState(res);
4836       }
4837       if (!_v) goto check_1;
4838       _ranki += _v*_pi;
4839       _rankm += _pi;
4840       _pi *= SWIG_MAXCASTRANK;
4841       {
4842         {
4843           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
4844           _v = SWIG_CheckState(res);
4845         }
4846       }
4847       if (!_v) goto check_1;
4848       _ranki += _v*_pi;
4849       _rankm += _pi;
4850       _pi *= SWIG_MAXCASTRANK;
4851       {
4852         {
4853           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
4854           _v = SWIG_CheckState(res);
4855         }
4856       }
4857       if (!_v) goto check_1;
4858       _ranki += _v*_pi;
4859       _rankm += _pi;
4860       _pi *= SWIG_MAXCASTRANK;
4861       {
4862         {
4863           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
4864           _v = SWIG_CheckState(res);
4865         }
4866       }
4867       if (!_v) goto check_1;
4868       _ranki += _v*_pi;
4869       _rankm += _pi;
4870       _pi *= SWIG_MAXCASTRANK;
4871       {
4872         {
4873           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
4874           _v = SWIG_CheckState(res);
4875         }
4876       }
4877       if (!_v) goto check_1;
4878       _ranki += _v*_pi;
4879       _rankm += _pi;
4880       _pi *= SWIG_MAXCASTRANK;
4881       if (!_index || (_ranki < _rank)) {
4882         _rank = _ranki; _index = 1;
4883         if (_rank == _rankm) goto dispatch;
4884       }
4885     }
4886   check_1:
4887 
4888     if (items == 6) {
4889       SWIG_TypeRank _ranki = 0;
4890       SWIG_TypeRank _rankm = 0;
4891       SWIG_TypeRank _pi = 1;
4892       int _v = 0;
4893       {
4894         void *vptr = 0;
4895         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_OGRLayerShadow, 0);
4896         _v = SWIG_CheckState(res);
4897       }
4898       if (!_v) goto check_2;
4899       _ranki += _v*_pi;
4900       _rankm += _pi;
4901       _pi *= SWIG_MAXCASTRANK;
4902       {
4903         {
4904           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
4905           _v = SWIG_CheckState(res);
4906         }
4907       }
4908       if (!_v) goto check_2;
4909       _ranki += _v*_pi;
4910       _rankm += _pi;
4911       _pi *= SWIG_MAXCASTRANK;
4912       {
4913         {
4914           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
4915           _v = SWIG_CheckState(res);
4916         }
4917       }
4918       if (!_v) goto check_2;
4919       _ranki += _v*_pi;
4920       _rankm += _pi;
4921       _pi *= SWIG_MAXCASTRANK;
4922       {
4923         {
4924           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
4925           _v = SWIG_CheckState(res);
4926         }
4927       }
4928       if (!_v) goto check_2;
4929       _ranki += _v*_pi;
4930       _rankm += _pi;
4931       _pi *= SWIG_MAXCASTRANK;
4932       {
4933         {
4934           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
4935           _v = SWIG_CheckState(res);
4936         }
4937       }
4938       if (!_v) goto check_2;
4939       _ranki += _v*_pi;
4940       _rankm += _pi;
4941       _pi *= SWIG_MAXCASTRANK;
4942       {
4943         {
4944           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
4945           _v = SWIG_CheckState(res);
4946         }
4947       }
4948       if (!_v) goto check_2;
4949       _ranki += _v*_pi;
4950       _rankm += _pi;
4951       _pi *= SWIG_MAXCASTRANK;
4952       if (!_index || (_ranki < _rank)) {
4953         _rank = _ranki; _index = 2;
4954         if (_rank == _rankm) goto dispatch;
4955       }
4956     }
4957   check_2:
4958 
4959   dispatch:
4960     switch(_index) {
4961     case 1:
4962       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Layer_SetSpatialFilterRect__SWIG_0); return;
4963     case 2:
4964       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Layer_SetSpatialFilterRect__SWIG_1); return;
4965     }
4966   }
4967 
4968   croak("No matching function for overloaded 'Layer_SetSpatialFilterRect'");
4969   XSRETURN(0);
4970 }
4971 
4972 
XS(_wrap_Layer_GetSpatialFilter)4973 XS(_wrap_Layer_GetSpatialFilter) {
4974   {
4975     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
4976     void *argp1 = 0 ;
4977     int res1 = 0 ;
4978     int argvi = 0;
4979     OGRGeometryShadow *result = 0 ;
4980     dXSARGS;
4981 
4982     if ((items < 1) || (items > 1)) {
4983       SWIG_croak("Usage: Layer_GetSpatialFilter(self);");
4984     }
4985     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
4986     if (!SWIG_IsOK(res1)) {
4987       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_GetSpatialFilter" "', argument " "1"" of type '" "OGRLayerShadow *""'");
4988     }
4989     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
4990     {
4991       CPLErrorReset();
4992       result = (OGRGeometryShadow *)OGRLayerShadow_GetSpatialFilter(arg1);
4993       CPLErr eclass = CPLGetLastErrorType();
4994       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
4995         do_confess( CPLGetLastErrorMsg(), 0 );
4996 
4997 
4998 
4999 
5000 
5001       }
5002 
5003 
5004       /*
5005           Make warnings regular Perl warnings. This duplicates the warning
5006           message if DontUseExceptions() is in effect (it is not by default).
5007           */
5008       if ( eclass == CE_Warning ) {
5009         warn( CPLGetLastErrorMsg(), "%s" );
5010       }
5011 
5012 
5013     }
5014     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, 0 | SWIG_SHADOW); argvi++ ;
5015 
5016     XSRETURN(argvi);
5017   fail:
5018 
5019     SWIG_croak_null();
5020   }
5021 }
5022 
5023 
XS(_wrap_Layer_SetAttributeFilter)5024 XS(_wrap_Layer_SetAttributeFilter) {
5025   {
5026     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
5027     char *arg2 = (char *) 0 ;
5028     void *argp1 = 0 ;
5029     int res1 = 0 ;
5030     int res2 ;
5031     char *buf2 = 0 ;
5032     int alloc2 = 0 ;
5033     int argvi = 0;
5034     OGRErr result;
5035     dXSARGS;
5036 
5037     if ((items < 2) || (items > 2)) {
5038       SWIG_croak("Usage: Layer_SetAttributeFilter(self,filter_string);");
5039     }
5040     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
5041     if (!SWIG_IsOK(res1)) {
5042       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_SetAttributeFilter" "', argument " "1"" of type '" "OGRLayerShadow *""'");
5043     }
5044     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
5045     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
5046     if (!SWIG_IsOK(res2)) {
5047       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Layer_SetAttributeFilter" "', argument " "2"" of type '" "char *""'");
5048     }
5049     arg2 = reinterpret_cast< char * >(buf2);
5050     {
5051       CPLErrorReset();
5052       result = (OGRErr)OGRLayerShadow_SetAttributeFilter(arg1,arg2);
5053       CPLErr eclass = CPLGetLastErrorType();
5054       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
5055         do_confess( CPLGetLastErrorMsg(), 0 );
5056 
5057 
5058 
5059 
5060 
5061       }
5062 
5063 
5064       /*
5065           Make warnings regular Perl warnings. This duplicates the warning
5066           message if DontUseExceptions() is in effect (it is not by default).
5067           */
5068       if ( eclass == CE_Warning ) {
5069         warn( CPLGetLastErrorMsg(), "%s" );
5070       }
5071 
5072 
5073     }
5074     {
5075       /* %typemap(out) OGRErr */
5076       if ( result != 0 ) {
5077         const char *err = CPLGetLastErrorMsg();
5078         if (err and *err) do_confess(err, 0); /* this is usually better */
5079         do_confess( OGRErrMessages(result), 1 );
5080       }
5081     }
5082 
5083     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
5084     XSRETURN(argvi);
5085   fail:
5086 
5087     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
5088     SWIG_croak_null();
5089   }
5090 }
5091 
5092 
XS(_wrap_Layer_ResetReading)5093 XS(_wrap_Layer_ResetReading) {
5094   {
5095     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
5096     void *argp1 = 0 ;
5097     int res1 = 0 ;
5098     int argvi = 0;
5099     dXSARGS;
5100 
5101     if ((items < 1) || (items > 1)) {
5102       SWIG_croak("Usage: Layer_ResetReading(self);");
5103     }
5104     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
5105     if (!SWIG_IsOK(res1)) {
5106       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_ResetReading" "', argument " "1"" of type '" "OGRLayerShadow *""'");
5107     }
5108     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
5109     {
5110       CPLErrorReset();
5111       OGRLayerShadow_ResetReading(arg1);
5112       CPLErr eclass = CPLGetLastErrorType();
5113       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
5114         do_confess( CPLGetLastErrorMsg(), 0 );
5115 
5116 
5117 
5118 
5119 
5120       }
5121 
5122 
5123       /*
5124           Make warnings regular Perl warnings. This duplicates the warning
5125           message if DontUseExceptions() is in effect (it is not by default).
5126           */
5127       if ( eclass == CE_Warning ) {
5128         warn( CPLGetLastErrorMsg(), "%s" );
5129       }
5130 
5131 
5132     }
5133     {
5134       /* %typemap(out) void */
5135     }
5136 
5137     XSRETURN(argvi);
5138   fail:
5139 
5140     SWIG_croak_null();
5141   }
5142 }
5143 
5144 
XS(_wrap_Layer_GetName)5145 XS(_wrap_Layer_GetName) {
5146   {
5147     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
5148     void *argp1 = 0 ;
5149     int res1 = 0 ;
5150     int argvi = 0;
5151     char *result = 0 ;
5152     dXSARGS;
5153 
5154     if ((items < 1) || (items > 1)) {
5155       SWIG_croak("Usage: Layer_GetName(self);");
5156     }
5157     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
5158     if (!SWIG_IsOK(res1)) {
5159       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_GetName" "', argument " "1"" of type '" "OGRLayerShadow *""'");
5160     }
5161     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
5162     {
5163       CPLErrorReset();
5164       result = (char *)OGRLayerShadow_GetName(arg1);
5165       CPLErr eclass = CPLGetLastErrorType();
5166       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
5167         do_confess( CPLGetLastErrorMsg(), 0 );
5168 
5169 
5170 
5171 
5172 
5173       }
5174 
5175 
5176       /*
5177           Make warnings regular Perl warnings. This duplicates the warning
5178           message if DontUseExceptions() is in effect (it is not by default).
5179           */
5180       if ( eclass == CE_Warning ) {
5181         warn( CPLGetLastErrorMsg(), "%s" );
5182       }
5183 
5184 
5185     }
5186     {
5187       /* %typemap(out) const char * */
5188       ST(argvi) = newSVpv(result, 0);
5189       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
5190       sv_2mortal(ST(argvi));
5191       argvi++;
5192     }
5193 
5194     XSRETURN(argvi);
5195   fail:
5196 
5197     SWIG_croak_null();
5198   }
5199 }
5200 
5201 
XS(_wrap_Layer_GetGeomType)5202 XS(_wrap_Layer_GetGeomType) {
5203   {
5204     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
5205     void *argp1 = 0 ;
5206     int res1 = 0 ;
5207     int argvi = 0;
5208     OGRwkbGeometryType result;
5209     dXSARGS;
5210 
5211     if ((items < 1) || (items > 1)) {
5212       SWIG_croak("Usage: Layer_GetGeomType(self);");
5213     }
5214     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
5215     if (!SWIG_IsOK(res1)) {
5216       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_GetGeomType" "', argument " "1"" of type '" "OGRLayerShadow *""'");
5217     }
5218     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
5219     {
5220       CPLErrorReset();
5221       result = (OGRwkbGeometryType)OGRLayerShadow_GetGeomType(arg1);
5222       CPLErr eclass = CPLGetLastErrorType();
5223       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
5224         do_confess( CPLGetLastErrorMsg(), 0 );
5225 
5226 
5227 
5228 
5229 
5230       }
5231 
5232 
5233       /*
5234           Make warnings regular Perl warnings. This duplicates the warning
5235           message if DontUseExceptions() is in effect (it is not by default).
5236           */
5237       if ( eclass == CE_Warning ) {
5238         warn( CPLGetLastErrorMsg(), "%s" );
5239       }
5240 
5241 
5242     }
5243     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
5244 
5245     XSRETURN(argvi);
5246   fail:
5247 
5248     SWIG_croak_null();
5249   }
5250 }
5251 
5252 
XS(_wrap_Layer_GetGeometryColumn)5253 XS(_wrap_Layer_GetGeometryColumn) {
5254   {
5255     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
5256     void *argp1 = 0 ;
5257     int res1 = 0 ;
5258     int argvi = 0;
5259     char *result = 0 ;
5260     dXSARGS;
5261 
5262     if ((items < 1) || (items > 1)) {
5263       SWIG_croak("Usage: Layer_GetGeometryColumn(self);");
5264     }
5265     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
5266     if (!SWIG_IsOK(res1)) {
5267       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_GetGeometryColumn" "', argument " "1"" of type '" "OGRLayerShadow *""'");
5268     }
5269     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
5270     {
5271       CPLErrorReset();
5272       result = (char *)OGRLayerShadow_GetGeometryColumn(arg1);
5273       CPLErr eclass = CPLGetLastErrorType();
5274       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
5275         do_confess( CPLGetLastErrorMsg(), 0 );
5276 
5277 
5278 
5279 
5280 
5281       }
5282 
5283 
5284       /*
5285           Make warnings regular Perl warnings. This duplicates the warning
5286           message if DontUseExceptions() is in effect (it is not by default).
5287           */
5288       if ( eclass == CE_Warning ) {
5289         warn( CPLGetLastErrorMsg(), "%s" );
5290       }
5291 
5292 
5293     }
5294     {
5295       /* %typemap(out) const char * */
5296       ST(argvi) = newSVpv(result, 0);
5297       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
5298       sv_2mortal(ST(argvi));
5299       argvi++;
5300     }
5301 
5302     XSRETURN(argvi);
5303   fail:
5304 
5305     SWIG_croak_null();
5306   }
5307 }
5308 
5309 
XS(_wrap_Layer_GetFIDColumn)5310 XS(_wrap_Layer_GetFIDColumn) {
5311   {
5312     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
5313     void *argp1 = 0 ;
5314     int res1 = 0 ;
5315     int argvi = 0;
5316     char *result = 0 ;
5317     dXSARGS;
5318 
5319     if ((items < 1) || (items > 1)) {
5320       SWIG_croak("Usage: Layer_GetFIDColumn(self);");
5321     }
5322     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
5323     if (!SWIG_IsOK(res1)) {
5324       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_GetFIDColumn" "', argument " "1"" of type '" "OGRLayerShadow *""'");
5325     }
5326     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
5327     {
5328       CPLErrorReset();
5329       result = (char *)OGRLayerShadow_GetFIDColumn(arg1);
5330       CPLErr eclass = CPLGetLastErrorType();
5331       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
5332         do_confess( CPLGetLastErrorMsg(), 0 );
5333 
5334 
5335 
5336 
5337 
5338       }
5339 
5340 
5341       /*
5342           Make warnings regular Perl warnings. This duplicates the warning
5343           message if DontUseExceptions() is in effect (it is not by default).
5344           */
5345       if ( eclass == CE_Warning ) {
5346         warn( CPLGetLastErrorMsg(), "%s" );
5347       }
5348 
5349 
5350     }
5351     {
5352       /* %typemap(out) const char * */
5353       ST(argvi) = newSVpv(result, 0);
5354       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
5355       sv_2mortal(ST(argvi));
5356       argvi++;
5357     }
5358 
5359     XSRETURN(argvi);
5360   fail:
5361 
5362     SWIG_croak_null();
5363   }
5364 }
5365 
5366 
XS(_wrap_Layer__GetFeature)5367 XS(_wrap_Layer__GetFeature) {
5368   {
5369     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
5370     GIntBig arg2 ;
5371     void *argp1 = 0 ;
5372     int res1 = 0 ;
5373     int argvi = 0;
5374     OGRFeatureShadow *result = 0 ;
5375     dXSARGS;
5376 
5377     if ((items < 2) || (items > 2)) {
5378       SWIG_croak("Usage: Layer__GetFeature(self,fid);");
5379     }
5380     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
5381     if (!SWIG_IsOK(res1)) {
5382       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer__GetFeature" "', argument " "1"" of type '" "OGRLayerShadow *""'");
5383     }
5384     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
5385     {
5386       arg2 = CPLAtoGIntBig(SvPV_nolen(ST(1)));
5387     }
5388     {
5389       CPLErrorReset();
5390       result = (OGRFeatureShadow *)OGRLayerShadow_GetFeature(arg1,arg2);
5391       CPLErr eclass = CPLGetLastErrorType();
5392       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
5393         do_confess( CPLGetLastErrorMsg(), 0 );
5394 
5395 
5396 
5397 
5398 
5399       }
5400 
5401 
5402       /*
5403           Make warnings regular Perl warnings. This duplicates the warning
5404           message if DontUseExceptions() is in effect (it is not by default).
5405           */
5406       if ( eclass == CE_Warning ) {
5407         warn( CPLGetLastErrorMsg(), "%s" );
5408       }
5409 
5410 
5411     }
5412     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRFeatureShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
5413 
5414     XSRETURN(argvi);
5415   fail:
5416 
5417     SWIG_croak_null();
5418   }
5419 }
5420 
5421 
XS(_wrap_Layer_GetNextFeature)5422 XS(_wrap_Layer_GetNextFeature) {
5423   {
5424     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
5425     void *argp1 = 0 ;
5426     int res1 = 0 ;
5427     int argvi = 0;
5428     OGRFeatureShadow *result = 0 ;
5429     dXSARGS;
5430 
5431     if ((items < 1) || (items > 1)) {
5432       SWIG_croak("Usage: Layer_GetNextFeature(self);");
5433     }
5434     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
5435     if (!SWIG_IsOK(res1)) {
5436       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_GetNextFeature" "', argument " "1"" of type '" "OGRLayerShadow *""'");
5437     }
5438     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
5439     {
5440       CPLErrorReset();
5441       result = (OGRFeatureShadow *)OGRLayerShadow_GetNextFeature(arg1);
5442       CPLErr eclass = CPLGetLastErrorType();
5443       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
5444         do_confess( CPLGetLastErrorMsg(), 0 );
5445 
5446 
5447 
5448 
5449 
5450       }
5451 
5452 
5453       /*
5454           Make warnings regular Perl warnings. This duplicates the warning
5455           message if DontUseExceptions() is in effect (it is not by default).
5456           */
5457       if ( eclass == CE_Warning ) {
5458         warn( CPLGetLastErrorMsg(), "%s" );
5459       }
5460 
5461 
5462     }
5463     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRFeatureShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
5464 
5465     XSRETURN(argvi);
5466   fail:
5467 
5468     SWIG_croak_null();
5469   }
5470 }
5471 
5472 
XS(_wrap_Layer_SetNextByIndex)5473 XS(_wrap_Layer_SetNextByIndex) {
5474   {
5475     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
5476     GIntBig arg2 ;
5477     void *argp1 = 0 ;
5478     int res1 = 0 ;
5479     int argvi = 0;
5480     OGRErr result;
5481     dXSARGS;
5482 
5483     if ((items < 2) || (items > 2)) {
5484       SWIG_croak("Usage: Layer_SetNextByIndex(self,new_index);");
5485     }
5486     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
5487     if (!SWIG_IsOK(res1)) {
5488       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_SetNextByIndex" "', argument " "1"" of type '" "OGRLayerShadow *""'");
5489     }
5490     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
5491     {
5492       arg2 = CPLAtoGIntBig(SvPV_nolen(ST(1)));
5493     }
5494     {
5495       CPLErrorReset();
5496       result = (OGRErr)OGRLayerShadow_SetNextByIndex(arg1,arg2);
5497       CPLErr eclass = CPLGetLastErrorType();
5498       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
5499         do_confess( CPLGetLastErrorMsg(), 0 );
5500 
5501 
5502 
5503 
5504 
5505       }
5506 
5507 
5508       /*
5509           Make warnings regular Perl warnings. This duplicates the warning
5510           message if DontUseExceptions() is in effect (it is not by default).
5511           */
5512       if ( eclass == CE_Warning ) {
5513         warn( CPLGetLastErrorMsg(), "%s" );
5514       }
5515 
5516 
5517     }
5518     {
5519       /* %typemap(out) OGRErr */
5520       if ( result != 0 ) {
5521         const char *err = CPLGetLastErrorMsg();
5522         if (err and *err) do_confess(err, 0); /* this is usually better */
5523         do_confess( OGRErrMessages(result), 1 );
5524       }
5525     }
5526 
5527     XSRETURN(argvi);
5528   fail:
5529 
5530     SWIG_croak_null();
5531   }
5532 }
5533 
5534 
XS(_wrap_Layer_SetFeature)5535 XS(_wrap_Layer_SetFeature) {
5536   {
5537     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
5538     OGRFeatureShadow *arg2 = (OGRFeatureShadow *) 0 ;
5539     void *argp1 = 0 ;
5540     int res1 = 0 ;
5541     void *argp2 = 0 ;
5542     int res2 = 0 ;
5543     int argvi = 0;
5544     OGRErr result;
5545     dXSARGS;
5546 
5547     if ((items < 2) || (items > 2)) {
5548       SWIG_croak("Usage: Layer_SetFeature(self,feature);");
5549     }
5550     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
5551     if (!SWIG_IsOK(res1)) {
5552       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_SetFeature" "', argument " "1"" of type '" "OGRLayerShadow *""'");
5553     }
5554     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
5555     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
5556     if (!SWIG_IsOK(res2)) {
5557       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Layer_SetFeature" "', argument " "2"" of type '" "OGRFeatureShadow *""'");
5558     }
5559     arg2 = reinterpret_cast< OGRFeatureShadow * >(argp2);
5560     {
5561       if (!arg2) {
5562         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
5563       }
5564     }
5565     {
5566       CPLErrorReset();
5567       result = (OGRErr)OGRLayerShadow_SetFeature(arg1,arg2);
5568       CPLErr eclass = CPLGetLastErrorType();
5569       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
5570         do_confess( CPLGetLastErrorMsg(), 0 );
5571 
5572 
5573 
5574 
5575 
5576       }
5577 
5578 
5579       /*
5580           Make warnings regular Perl warnings. This duplicates the warning
5581           message if DontUseExceptions() is in effect (it is not by default).
5582           */
5583       if ( eclass == CE_Warning ) {
5584         warn( CPLGetLastErrorMsg(), "%s" );
5585       }
5586 
5587 
5588     }
5589     {
5590       /* %typemap(out) OGRErr */
5591       if ( result != 0 ) {
5592         const char *err = CPLGetLastErrorMsg();
5593         if (err and *err) do_confess(err, 0); /* this is usually better */
5594         do_confess( OGRErrMessages(result), 1 );
5595       }
5596     }
5597 
5598 
5599     XSRETURN(argvi);
5600   fail:
5601 
5602 
5603     SWIG_croak_null();
5604   }
5605 }
5606 
5607 
XS(_wrap_Layer_CreateFeature)5608 XS(_wrap_Layer_CreateFeature) {
5609   {
5610     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
5611     OGRFeatureShadow *arg2 = (OGRFeatureShadow *) 0 ;
5612     void *argp1 = 0 ;
5613     int res1 = 0 ;
5614     void *argp2 = 0 ;
5615     int res2 = 0 ;
5616     int argvi = 0;
5617     OGRErr result;
5618     dXSARGS;
5619 
5620     if ((items < 2) || (items > 2)) {
5621       SWIG_croak("Usage: Layer_CreateFeature(self,feature);");
5622     }
5623     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
5624     if (!SWIG_IsOK(res1)) {
5625       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_CreateFeature" "', argument " "1"" of type '" "OGRLayerShadow *""'");
5626     }
5627     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
5628     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
5629     if (!SWIG_IsOK(res2)) {
5630       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Layer_CreateFeature" "', argument " "2"" of type '" "OGRFeatureShadow *""'");
5631     }
5632     arg2 = reinterpret_cast< OGRFeatureShadow * >(argp2);
5633     {
5634       if (!arg2) {
5635         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
5636       }
5637     }
5638     {
5639       CPLErrorReset();
5640       result = (OGRErr)OGRLayerShadow_CreateFeature(arg1,arg2);
5641       CPLErr eclass = CPLGetLastErrorType();
5642       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
5643         do_confess( CPLGetLastErrorMsg(), 0 );
5644 
5645 
5646 
5647 
5648 
5649       }
5650 
5651 
5652       /*
5653           Make warnings regular Perl warnings. This duplicates the warning
5654           message if DontUseExceptions() is in effect (it is not by default).
5655           */
5656       if ( eclass == CE_Warning ) {
5657         warn( CPLGetLastErrorMsg(), "%s" );
5658       }
5659 
5660 
5661     }
5662     {
5663       /* %typemap(out) OGRErr */
5664       if ( result != 0 ) {
5665         const char *err = CPLGetLastErrorMsg();
5666         if (err and *err) do_confess(err, 0); /* this is usually better */
5667         do_confess( OGRErrMessages(result), 1 );
5668       }
5669     }
5670 
5671 
5672     XSRETURN(argvi);
5673   fail:
5674 
5675 
5676     SWIG_croak_null();
5677   }
5678 }
5679 
5680 
XS(_wrap_Layer_DeleteFeature)5681 XS(_wrap_Layer_DeleteFeature) {
5682   {
5683     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
5684     GIntBig arg2 ;
5685     void *argp1 = 0 ;
5686     int res1 = 0 ;
5687     int argvi = 0;
5688     OGRErr result;
5689     dXSARGS;
5690 
5691     if ((items < 2) || (items > 2)) {
5692       SWIG_croak("Usage: Layer_DeleteFeature(self,fid);");
5693     }
5694     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
5695     if (!SWIG_IsOK(res1)) {
5696       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_DeleteFeature" "', argument " "1"" of type '" "OGRLayerShadow *""'");
5697     }
5698     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
5699     {
5700       arg2 = CPLAtoGIntBig(SvPV_nolen(ST(1)));
5701     }
5702     {
5703       CPLErrorReset();
5704       result = (OGRErr)OGRLayerShadow_DeleteFeature(arg1,arg2);
5705       CPLErr eclass = CPLGetLastErrorType();
5706       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
5707         do_confess( CPLGetLastErrorMsg(), 0 );
5708 
5709 
5710 
5711 
5712 
5713       }
5714 
5715 
5716       /*
5717           Make warnings regular Perl warnings. This duplicates the warning
5718           message if DontUseExceptions() is in effect (it is not by default).
5719           */
5720       if ( eclass == CE_Warning ) {
5721         warn( CPLGetLastErrorMsg(), "%s" );
5722       }
5723 
5724 
5725     }
5726     {
5727       /* %typemap(out) OGRErr */
5728       if ( result != 0 ) {
5729         const char *err = CPLGetLastErrorMsg();
5730         if (err and *err) do_confess(err, 0); /* this is usually better */
5731         do_confess( OGRErrMessages(result), 1 );
5732       }
5733     }
5734 
5735     XSRETURN(argvi);
5736   fail:
5737 
5738     SWIG_croak_null();
5739   }
5740 }
5741 
5742 
XS(_wrap_Layer_SyncToDisk)5743 XS(_wrap_Layer_SyncToDisk) {
5744   {
5745     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
5746     void *argp1 = 0 ;
5747     int res1 = 0 ;
5748     int argvi = 0;
5749     OGRErr result;
5750     dXSARGS;
5751 
5752     if ((items < 1) || (items > 1)) {
5753       SWIG_croak("Usage: Layer_SyncToDisk(self);");
5754     }
5755     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
5756     if (!SWIG_IsOK(res1)) {
5757       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_SyncToDisk" "', argument " "1"" of type '" "OGRLayerShadow *""'");
5758     }
5759     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
5760     {
5761       CPLErrorReset();
5762       result = (OGRErr)OGRLayerShadow_SyncToDisk(arg1);
5763       CPLErr eclass = CPLGetLastErrorType();
5764       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
5765         do_confess( CPLGetLastErrorMsg(), 0 );
5766 
5767 
5768 
5769 
5770 
5771       }
5772 
5773 
5774       /*
5775           Make warnings regular Perl warnings. This duplicates the warning
5776           message if DontUseExceptions() is in effect (it is not by default).
5777           */
5778       if ( eclass == CE_Warning ) {
5779         warn( CPLGetLastErrorMsg(), "%s" );
5780       }
5781 
5782 
5783     }
5784     {
5785       /* %typemap(out) OGRErr */
5786       if ( result != 0 ) {
5787         const char *err = CPLGetLastErrorMsg();
5788         if (err and *err) do_confess(err, 0); /* this is usually better */
5789         do_confess( OGRErrMessages(result), 1 );
5790       }
5791     }
5792 
5793     XSRETURN(argvi);
5794   fail:
5795 
5796     SWIG_croak_null();
5797   }
5798 }
5799 
5800 
XS(_wrap_Layer_GetLayerDefn)5801 XS(_wrap_Layer_GetLayerDefn) {
5802   {
5803     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
5804     void *argp1 = 0 ;
5805     int res1 = 0 ;
5806     int argvi = 0;
5807     OGRFeatureDefnShadow *result = 0 ;
5808     dXSARGS;
5809 
5810     if ((items < 1) || (items > 1)) {
5811       SWIG_croak("Usage: Layer_GetLayerDefn(self);");
5812     }
5813     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
5814     if (!SWIG_IsOK(res1)) {
5815       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_GetLayerDefn" "', argument " "1"" of type '" "OGRLayerShadow *""'");
5816     }
5817     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
5818     {
5819       CPLErrorReset();
5820       result = (OGRFeatureDefnShadow *)OGRLayerShadow_GetLayerDefn(arg1);
5821       CPLErr eclass = CPLGetLastErrorType();
5822       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
5823         do_confess( CPLGetLastErrorMsg(), 0 );
5824 
5825 
5826 
5827 
5828 
5829       }
5830 
5831 
5832       /*
5833           Make warnings regular Perl warnings. This duplicates the warning
5834           message if DontUseExceptions() is in effect (it is not by default).
5835           */
5836       if ( eclass == CE_Warning ) {
5837         warn( CPLGetLastErrorMsg(), "%s" );
5838       }
5839 
5840 
5841     }
5842     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRFeatureDefnShadow, 0 | SWIG_SHADOW); argvi++ ;
5843 
5844     XSRETURN(argvi);
5845   fail:
5846 
5847     SWIG_croak_null();
5848   }
5849 }
5850 
5851 
XS(_wrap_Layer_GetFeatureCount)5852 XS(_wrap_Layer_GetFeatureCount) {
5853   {
5854     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
5855     int arg2 = (int) 1 ;
5856     void *argp1 = 0 ;
5857     int res1 = 0 ;
5858     int val2 ;
5859     int ecode2 = 0 ;
5860     int argvi = 0;
5861     GIntBig result;
5862     dXSARGS;
5863 
5864     if ((items < 1) || (items > 2)) {
5865       SWIG_croak("Usage: Layer_GetFeatureCount(self,force);");
5866     }
5867     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
5868     if (!SWIG_IsOK(res1)) {
5869       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_GetFeatureCount" "', argument " "1"" of type '" "OGRLayerShadow *""'");
5870     }
5871     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
5872     if (items > 1) {
5873       ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
5874       if (!SWIG_IsOK(ecode2)) {
5875         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Layer_GetFeatureCount" "', argument " "2"" of type '" "int""'");
5876       }
5877       arg2 = static_cast< int >(val2);
5878     }
5879     {
5880       CPLErrorReset();
5881       result = OGRLayerShadow_GetFeatureCount(arg1,arg2);
5882       CPLErr eclass = CPLGetLastErrorType();
5883       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
5884         do_confess( CPLGetLastErrorMsg(), 0 );
5885 
5886 
5887 
5888 
5889 
5890       }
5891 
5892 
5893       /*
5894           Make warnings regular Perl warnings. This duplicates the warning
5895           message if DontUseExceptions() is in effect (it is not by default).
5896           */
5897       if ( eclass == CE_Warning ) {
5898         warn( CPLGetLastErrorMsg(), "%s" );
5899       }
5900 
5901 
5902     }
5903     {
5904       char temp[256];
5905       sprintf(temp, "" CPL_FRMT_GIB "", result);
5906       ST(argvi) = sv_2mortal(newSVpv(temp, 0));
5907       argvi++;
5908     }
5909 
5910 
5911     XSRETURN(argvi);
5912   fail:
5913 
5914 
5915     SWIG_croak_null();
5916   }
5917 }
5918 
5919 
XS(_wrap_Layer_GetExtent)5920 XS(_wrap_Layer_GetExtent) {
5921   {
5922     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
5923     double *arg2 ;
5924     int arg3 = (int) 1 ;
5925     void *argp1 = 0 ;
5926     int res1 = 0 ;
5927     double argout2[4] ;
5928     int val3 ;
5929     int ecode3 = 0 ;
5930     int argvi = 0;
5931     OGRErr result;
5932     dXSARGS;
5933 
5934     {
5935       /* %typemap(in,numinputs=0) (double argout2[ANY]) */
5936       arg2 = argout2;
5937     }
5938     if ((items < 1) || (items > 2)) {
5939       SWIG_croak("Usage: Layer_GetExtent(self,force);");
5940     }
5941     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
5942     if (!SWIG_IsOK(res1)) {
5943       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_GetExtent" "', argument " "1"" of type '" "OGRLayerShadow *""'");
5944     }
5945     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
5946     if (items > 1) {
5947       ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val3);
5948       if (!SWIG_IsOK(ecode3)) {
5949         SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Layer_GetExtent" "', argument " "3"" of type '" "int""'");
5950       }
5951       arg3 = static_cast< int >(val3);
5952     }
5953     {
5954       CPLErrorReset();
5955       result = (OGRErr)OGRLayerShadow_GetExtent(arg1,arg2,arg3);
5956       CPLErr eclass = CPLGetLastErrorType();
5957       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
5958         do_confess( CPLGetLastErrorMsg(), 0 );
5959 
5960 
5961 
5962 
5963 
5964       }
5965 
5966 
5967       /*
5968           Make warnings regular Perl warnings. This duplicates the warning
5969           message if DontUseExceptions() is in effect (it is not by default).
5970           */
5971       if ( eclass == CE_Warning ) {
5972         warn( CPLGetLastErrorMsg(), "%s" );
5973       }
5974 
5975 
5976     }
5977     {
5978       /* %typemap(out) OGRErr */
5979       if ( result != 0 ) {
5980         const char *err = CPLGetLastErrorMsg();
5981         if (err and *err) do_confess(err, 0); /* this is usually better */
5982         do_confess( OGRErrMessages(result), 1 );
5983       }
5984     }
5985     {
5986       /* %typemap(argout) (double argout[ANY]) */
5987       if (GIMME_V == G_ARRAY) {
5988         /* return a list */
5989         int i;
5990         EXTEND(SP, argvi+4-items+1);
5991         for (i = 0; i < 4; i++)
5992         ST(argvi++) = sv_2mortal(newSVnv(arg2[i]));
5993       } else {
5994         ST(argvi) = CreateArrayFromDoubleArray( arg2, 4 );
5995         argvi++;
5996       }
5997     }
5998 
5999 
6000 
6001     XSRETURN(argvi);
6002   fail:
6003 
6004 
6005 
6006     SWIG_croak_null();
6007   }
6008 }
6009 
6010 
XS(_wrap_Layer__TestCapability)6011 XS(_wrap_Layer__TestCapability) {
6012   {
6013     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
6014     char *arg2 = (char *) 0 ;
6015     void *argp1 = 0 ;
6016     int res1 = 0 ;
6017     int res2 ;
6018     char *buf2 = 0 ;
6019     int alloc2 = 0 ;
6020     int argvi = 0;
6021     bool result;
6022     dXSARGS;
6023 
6024     if ((items < 2) || (items > 2)) {
6025       SWIG_croak("Usage: Layer__TestCapability(self,cap);");
6026     }
6027     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
6028     if (!SWIG_IsOK(res1)) {
6029       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer__TestCapability" "', argument " "1"" of type '" "OGRLayerShadow *""'");
6030     }
6031     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
6032     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
6033     if (!SWIG_IsOK(res2)) {
6034       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Layer__TestCapability" "', argument " "2"" of type '" "char const *""'");
6035     }
6036     arg2 = reinterpret_cast< char * >(buf2);
6037     {
6038       /* %typemap(check) (const char *cap) */
6039       if (!arg2)
6040       do_confess(NEED_DEF, 1);
6041     }
6042     {
6043       CPLErrorReset();
6044       result = (bool)OGRLayerShadow_TestCapability(arg1,(char const *)arg2);
6045       CPLErr eclass = CPLGetLastErrorType();
6046       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
6047         do_confess( CPLGetLastErrorMsg(), 0 );
6048 
6049 
6050 
6051 
6052 
6053       }
6054 
6055 
6056       /*
6057           Make warnings regular Perl warnings. This duplicates the warning
6058           message if DontUseExceptions() is in effect (it is not by default).
6059           */
6060       if ( eclass == CE_Warning ) {
6061         warn( CPLGetLastErrorMsg(), "%s" );
6062       }
6063 
6064 
6065     }
6066     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
6067 
6068     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
6069     XSRETURN(argvi);
6070   fail:
6071 
6072     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
6073     SWIG_croak_null();
6074   }
6075 }
6076 
6077 
XS(_wrap_Layer__CreateField)6078 XS(_wrap_Layer__CreateField) {
6079   {
6080     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
6081     OGRFieldDefnShadow *arg2 = (OGRFieldDefnShadow *) 0 ;
6082     int arg3 = (int) 1 ;
6083     void *argp1 = 0 ;
6084     int res1 = 0 ;
6085     void *argp2 = 0 ;
6086     int res2 = 0 ;
6087     int val3 ;
6088     int ecode3 = 0 ;
6089     int argvi = 0;
6090     OGRErr result;
6091     dXSARGS;
6092 
6093     if ((items < 2) || (items > 3)) {
6094       SWIG_croak("Usage: Layer__CreateField(self,field_def,approx_ok);");
6095     }
6096     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
6097     if (!SWIG_IsOK(res1)) {
6098       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer__CreateField" "', argument " "1"" of type '" "OGRLayerShadow *""'");
6099     }
6100     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
6101     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
6102     if (!SWIG_IsOK(res2)) {
6103       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Layer__CreateField" "', argument " "2"" of type '" "OGRFieldDefnShadow *""'");
6104     }
6105     arg2 = reinterpret_cast< OGRFieldDefnShadow * >(argp2);
6106     if (items > 2) {
6107       ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
6108       if (!SWIG_IsOK(ecode3)) {
6109         SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Layer__CreateField" "', argument " "3"" of type '" "int""'");
6110       }
6111       arg3 = static_cast< int >(val3);
6112     }
6113     {
6114       if (!arg2) {
6115         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
6116       }
6117     }
6118     {
6119       CPLErrorReset();
6120       result = (OGRErr)OGRLayerShadow_CreateField(arg1,arg2,arg3);
6121       CPLErr eclass = CPLGetLastErrorType();
6122       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
6123         do_confess( CPLGetLastErrorMsg(), 0 );
6124 
6125 
6126 
6127 
6128 
6129       }
6130 
6131 
6132       /*
6133           Make warnings regular Perl warnings. This duplicates the warning
6134           message if DontUseExceptions() is in effect (it is not by default).
6135           */
6136       if ( eclass == CE_Warning ) {
6137         warn( CPLGetLastErrorMsg(), "%s" );
6138       }
6139 
6140 
6141     }
6142     {
6143       /* %typemap(out) OGRErr */
6144       if ( result != 0 ) {
6145         const char *err = CPLGetLastErrorMsg();
6146         if (err and *err) do_confess(err, 0); /* this is usually better */
6147         do_confess( OGRErrMessages(result), 1 );
6148       }
6149     }
6150 
6151 
6152 
6153     XSRETURN(argvi);
6154   fail:
6155 
6156 
6157 
6158     SWIG_croak_null();
6159   }
6160 }
6161 
6162 
XS(_wrap_Layer__DeleteField)6163 XS(_wrap_Layer__DeleteField) {
6164   {
6165     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
6166     int arg2 ;
6167     void *argp1 = 0 ;
6168     int res1 = 0 ;
6169     int val2 ;
6170     int ecode2 = 0 ;
6171     int argvi = 0;
6172     OGRErr result;
6173     dXSARGS;
6174 
6175     if ((items < 2) || (items > 2)) {
6176       SWIG_croak("Usage: Layer__DeleteField(self,iField);");
6177     }
6178     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
6179     if (!SWIG_IsOK(res1)) {
6180       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer__DeleteField" "', argument " "1"" of type '" "OGRLayerShadow *""'");
6181     }
6182     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
6183     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
6184     if (!SWIG_IsOK(ecode2)) {
6185       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Layer__DeleteField" "', argument " "2"" of type '" "int""'");
6186     }
6187     arg2 = static_cast< int >(val2);
6188     {
6189       CPLErrorReset();
6190       result = (OGRErr)OGRLayerShadow_DeleteField(arg1,arg2);
6191       CPLErr eclass = CPLGetLastErrorType();
6192       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
6193         do_confess( CPLGetLastErrorMsg(), 0 );
6194 
6195 
6196 
6197 
6198 
6199       }
6200 
6201 
6202       /*
6203           Make warnings regular Perl warnings. This duplicates the warning
6204           message if DontUseExceptions() is in effect (it is not by default).
6205           */
6206       if ( eclass == CE_Warning ) {
6207         warn( CPLGetLastErrorMsg(), "%s" );
6208       }
6209 
6210 
6211     }
6212     {
6213       /* %typemap(out) OGRErr */
6214       if ( result != 0 ) {
6215         const char *err = CPLGetLastErrorMsg();
6216         if (err and *err) do_confess(err, 0); /* this is usually better */
6217         do_confess( OGRErrMessages(result), 1 );
6218       }
6219     }
6220 
6221 
6222     XSRETURN(argvi);
6223   fail:
6224 
6225 
6226     SWIG_croak_null();
6227   }
6228 }
6229 
6230 
XS(_wrap_Layer_ReorderField)6231 XS(_wrap_Layer_ReorderField) {
6232   {
6233     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
6234     int arg2 ;
6235     int arg3 ;
6236     void *argp1 = 0 ;
6237     int res1 = 0 ;
6238     int val2 ;
6239     int ecode2 = 0 ;
6240     int val3 ;
6241     int ecode3 = 0 ;
6242     int argvi = 0;
6243     OGRErr result;
6244     dXSARGS;
6245 
6246     if ((items < 3) || (items > 3)) {
6247       SWIG_croak("Usage: Layer_ReorderField(self,iOldFieldPos,iNewFieldPos);");
6248     }
6249     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
6250     if (!SWIG_IsOK(res1)) {
6251       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_ReorderField" "', argument " "1"" of type '" "OGRLayerShadow *""'");
6252     }
6253     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
6254     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
6255     if (!SWIG_IsOK(ecode2)) {
6256       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Layer_ReorderField" "', argument " "2"" of type '" "int""'");
6257     }
6258     arg2 = static_cast< int >(val2);
6259     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
6260     if (!SWIG_IsOK(ecode3)) {
6261       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Layer_ReorderField" "', argument " "3"" of type '" "int""'");
6262     }
6263     arg3 = static_cast< int >(val3);
6264     {
6265       CPLErrorReset();
6266       result = (OGRErr)OGRLayerShadow_ReorderField(arg1,arg2,arg3);
6267       CPLErr eclass = CPLGetLastErrorType();
6268       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
6269         do_confess( CPLGetLastErrorMsg(), 0 );
6270 
6271 
6272 
6273 
6274 
6275       }
6276 
6277 
6278       /*
6279           Make warnings regular Perl warnings. This duplicates the warning
6280           message if DontUseExceptions() is in effect (it is not by default).
6281           */
6282       if ( eclass == CE_Warning ) {
6283         warn( CPLGetLastErrorMsg(), "%s" );
6284       }
6285 
6286 
6287     }
6288     {
6289       /* %typemap(out) OGRErr */
6290       if ( result != 0 ) {
6291         const char *err = CPLGetLastErrorMsg();
6292         if (err and *err) do_confess(err, 0); /* this is usually better */
6293         do_confess( OGRErrMessages(result), 1 );
6294       }
6295     }
6296 
6297 
6298 
6299     XSRETURN(argvi);
6300   fail:
6301 
6302 
6303 
6304     SWIG_croak_null();
6305   }
6306 }
6307 
6308 
XS(_wrap_Layer_ReorderFields)6309 XS(_wrap_Layer_ReorderFields) {
6310   {
6311     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
6312     int arg2 ;
6313     int *arg3 = (int *) 0 ;
6314     void *argp1 = 0 ;
6315     int res1 = 0 ;
6316     int argvi = 0;
6317     OGRErr result;
6318     dXSARGS;
6319 
6320     if ((items < 2) || (items > 2)) {
6321       SWIG_croak("Usage: Layer_ReorderFields(self,nList,pList);");
6322     }
6323     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
6324     if (!SWIG_IsOK(res1)) {
6325       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_ReorderFields" "', argument " "1"" of type '" "OGRLayerShadow *""'");
6326     }
6327     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
6328     {
6329       /* %typemap(in,numinputs=1) (int nList, int* pList) */
6330       if (!(SvROK(ST(1)) && (SvTYPE(SvRV(ST(1)))==SVt_PVAV)))
6331       do_confess(NEED_ARRAY_REF, 1);
6332       AV *av = (AV*)(SvRV(ST(1)));
6333       arg2 = av_len(av)+1;
6334       arg3 = (int*)CPLMalloc(arg2*sizeof(int));
6335       if (arg3) {
6336         for( int i = 0; i<arg2; i++ ) {
6337           SV **sv = av_fetch(av, i, 0);
6338           arg3[i] =  SvIV(*sv);
6339         }
6340       } else
6341       SWIG_fail;
6342     }
6343     {
6344       CPLErrorReset();
6345       result = (OGRErr)OGRLayerShadow_ReorderFields(arg1,arg2,arg3);
6346       CPLErr eclass = CPLGetLastErrorType();
6347       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
6348         do_confess( CPLGetLastErrorMsg(), 0 );
6349 
6350 
6351 
6352 
6353 
6354       }
6355 
6356 
6357       /*
6358           Make warnings regular Perl warnings. This duplicates the warning
6359           message if DontUseExceptions() is in effect (it is not by default).
6360           */
6361       if ( eclass == CE_Warning ) {
6362         warn( CPLGetLastErrorMsg(), "%s" );
6363       }
6364 
6365 
6366     }
6367     {
6368       /* %typemap(out) OGRErr */
6369       if ( result != 0 ) {
6370         const char *err = CPLGetLastErrorMsg();
6371         if (err and *err) do_confess(err, 0); /* this is usually better */
6372         do_confess( OGRErrMessages(result), 1 );
6373       }
6374     }
6375 
6376     {
6377       /* %typemap(freearg) (int nList, int* pList) */
6378       CPLFree((void*) arg3);
6379     }
6380     XSRETURN(argvi);
6381   fail:
6382 
6383     {
6384       /* %typemap(freearg) (int nList, int* pList) */
6385       CPLFree((void*) arg3);
6386     }
6387     SWIG_croak_null();
6388   }
6389 }
6390 
6391 
XS(_wrap_Layer__AlterFieldDefn)6392 XS(_wrap_Layer__AlterFieldDefn) {
6393   {
6394     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
6395     int arg2 ;
6396     OGRFieldDefnShadow *arg3 = (OGRFieldDefnShadow *) 0 ;
6397     int arg4 ;
6398     void *argp1 = 0 ;
6399     int res1 = 0 ;
6400     int val2 ;
6401     int ecode2 = 0 ;
6402     void *argp3 = 0 ;
6403     int res3 = 0 ;
6404     int val4 ;
6405     int ecode4 = 0 ;
6406     int argvi = 0;
6407     OGRErr result;
6408     dXSARGS;
6409 
6410     if ((items < 4) || (items > 4)) {
6411       SWIG_croak("Usage: Layer__AlterFieldDefn(self,iField,field_def,nFlags);");
6412     }
6413     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
6414     if (!SWIG_IsOK(res1)) {
6415       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer__AlterFieldDefn" "', argument " "1"" of type '" "OGRLayerShadow *""'");
6416     }
6417     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
6418     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
6419     if (!SWIG_IsOK(ecode2)) {
6420       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Layer__AlterFieldDefn" "', argument " "2"" of type '" "int""'");
6421     }
6422     arg2 = static_cast< int >(val2);
6423     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
6424     if (!SWIG_IsOK(res3)) {
6425       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Layer__AlterFieldDefn" "', argument " "3"" of type '" "OGRFieldDefnShadow *""'");
6426     }
6427     arg3 = reinterpret_cast< OGRFieldDefnShadow * >(argp3);
6428     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
6429     if (!SWIG_IsOK(ecode4)) {
6430       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "Layer__AlterFieldDefn" "', argument " "4"" of type '" "int""'");
6431     }
6432     arg4 = static_cast< int >(val4);
6433     {
6434       if (!arg3) {
6435         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
6436       }
6437     }
6438     {
6439       CPLErrorReset();
6440       result = (OGRErr)OGRLayerShadow_AlterFieldDefn(arg1,arg2,arg3,arg4);
6441       CPLErr eclass = CPLGetLastErrorType();
6442       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
6443         do_confess( CPLGetLastErrorMsg(), 0 );
6444 
6445 
6446 
6447 
6448 
6449       }
6450 
6451 
6452       /*
6453           Make warnings regular Perl warnings. This duplicates the warning
6454           message if DontUseExceptions() is in effect (it is not by default).
6455           */
6456       if ( eclass == CE_Warning ) {
6457         warn( CPLGetLastErrorMsg(), "%s" );
6458       }
6459 
6460 
6461     }
6462     {
6463       /* %typemap(out) OGRErr */
6464       if ( result != 0 ) {
6465         const char *err = CPLGetLastErrorMsg();
6466         if (err and *err) do_confess(err, 0); /* this is usually better */
6467         do_confess( OGRErrMessages(result), 1 );
6468       }
6469     }
6470 
6471 
6472 
6473 
6474     XSRETURN(argvi);
6475   fail:
6476 
6477 
6478 
6479 
6480     SWIG_croak_null();
6481   }
6482 }
6483 
6484 
XS(_wrap_Layer_CreateGeomField)6485 XS(_wrap_Layer_CreateGeomField) {
6486   {
6487     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
6488     OGRGeomFieldDefnShadow *arg2 = (OGRGeomFieldDefnShadow *) 0 ;
6489     int arg3 = (int) 1 ;
6490     void *argp1 = 0 ;
6491     int res1 = 0 ;
6492     void *argp2 = 0 ;
6493     int res2 = 0 ;
6494     int val3 ;
6495     int ecode3 = 0 ;
6496     int argvi = 0;
6497     OGRErr result;
6498     dXSARGS;
6499 
6500     if ((items < 2) || (items > 3)) {
6501       SWIG_croak("Usage: Layer_CreateGeomField(self,field_def,approx_ok);");
6502     }
6503     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
6504     if (!SWIG_IsOK(res1)) {
6505       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_CreateGeomField" "', argument " "1"" of type '" "OGRLayerShadow *""'");
6506     }
6507     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
6508     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeomFieldDefnShadow, 0 |  0 );
6509     if (!SWIG_IsOK(res2)) {
6510       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Layer_CreateGeomField" "', argument " "2"" of type '" "OGRGeomFieldDefnShadow *""'");
6511     }
6512     arg2 = reinterpret_cast< OGRGeomFieldDefnShadow * >(argp2);
6513     if (items > 2) {
6514       ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
6515       if (!SWIG_IsOK(ecode3)) {
6516         SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Layer_CreateGeomField" "', argument " "3"" of type '" "int""'");
6517       }
6518       arg3 = static_cast< int >(val3);
6519     }
6520     {
6521       if (!arg2) {
6522         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
6523       }
6524     }
6525     {
6526       CPLErrorReset();
6527       result = (OGRErr)OGRLayerShadow_CreateGeomField(arg1,arg2,arg3);
6528       CPLErr eclass = CPLGetLastErrorType();
6529       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
6530         do_confess( CPLGetLastErrorMsg(), 0 );
6531 
6532 
6533 
6534 
6535 
6536       }
6537 
6538 
6539       /*
6540           Make warnings regular Perl warnings. This duplicates the warning
6541           message if DontUseExceptions() is in effect (it is not by default).
6542           */
6543       if ( eclass == CE_Warning ) {
6544         warn( CPLGetLastErrorMsg(), "%s" );
6545       }
6546 
6547 
6548     }
6549     {
6550       /* %typemap(out) OGRErr */
6551       if ( result != 0 ) {
6552         const char *err = CPLGetLastErrorMsg();
6553         if (err and *err) do_confess(err, 0); /* this is usually better */
6554         do_confess( OGRErrMessages(result), 1 );
6555       }
6556     }
6557 
6558 
6559 
6560     XSRETURN(argvi);
6561   fail:
6562 
6563 
6564 
6565     SWIG_croak_null();
6566   }
6567 }
6568 
6569 
XS(_wrap_Layer_StartTransaction)6570 XS(_wrap_Layer_StartTransaction) {
6571   {
6572     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
6573     void *argp1 = 0 ;
6574     int res1 = 0 ;
6575     int argvi = 0;
6576     OGRErr result;
6577     dXSARGS;
6578 
6579     if ((items < 1) || (items > 1)) {
6580       SWIG_croak("Usage: Layer_StartTransaction(self);");
6581     }
6582     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
6583     if (!SWIG_IsOK(res1)) {
6584       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_StartTransaction" "', argument " "1"" of type '" "OGRLayerShadow *""'");
6585     }
6586     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
6587     {
6588       CPLErrorReset();
6589       result = (OGRErr)OGRLayerShadow_StartTransaction(arg1);
6590       CPLErr eclass = CPLGetLastErrorType();
6591       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
6592         do_confess( CPLGetLastErrorMsg(), 0 );
6593 
6594 
6595 
6596 
6597 
6598       }
6599 
6600 
6601       /*
6602           Make warnings regular Perl warnings. This duplicates the warning
6603           message if DontUseExceptions() is in effect (it is not by default).
6604           */
6605       if ( eclass == CE_Warning ) {
6606         warn( CPLGetLastErrorMsg(), "%s" );
6607       }
6608 
6609 
6610     }
6611     {
6612       /* %typemap(out) OGRErr */
6613       if ( result != 0 ) {
6614         const char *err = CPLGetLastErrorMsg();
6615         if (err and *err) do_confess(err, 0); /* this is usually better */
6616         do_confess( OGRErrMessages(result), 1 );
6617       }
6618     }
6619 
6620     XSRETURN(argvi);
6621   fail:
6622 
6623     SWIG_croak_null();
6624   }
6625 }
6626 
6627 
XS(_wrap_Layer_CommitTransaction)6628 XS(_wrap_Layer_CommitTransaction) {
6629   {
6630     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
6631     void *argp1 = 0 ;
6632     int res1 = 0 ;
6633     int argvi = 0;
6634     OGRErr result;
6635     dXSARGS;
6636 
6637     if ((items < 1) || (items > 1)) {
6638       SWIG_croak("Usage: Layer_CommitTransaction(self);");
6639     }
6640     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
6641     if (!SWIG_IsOK(res1)) {
6642       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_CommitTransaction" "', argument " "1"" of type '" "OGRLayerShadow *""'");
6643     }
6644     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
6645     {
6646       CPLErrorReset();
6647       result = (OGRErr)OGRLayerShadow_CommitTransaction(arg1);
6648       CPLErr eclass = CPLGetLastErrorType();
6649       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
6650         do_confess( CPLGetLastErrorMsg(), 0 );
6651 
6652 
6653 
6654 
6655 
6656       }
6657 
6658 
6659       /*
6660           Make warnings regular Perl warnings. This duplicates the warning
6661           message if DontUseExceptions() is in effect (it is not by default).
6662           */
6663       if ( eclass == CE_Warning ) {
6664         warn( CPLGetLastErrorMsg(), "%s" );
6665       }
6666 
6667 
6668     }
6669     {
6670       /* %typemap(out) OGRErr */
6671       if ( result != 0 ) {
6672         const char *err = CPLGetLastErrorMsg();
6673         if (err and *err) do_confess(err, 0); /* this is usually better */
6674         do_confess( OGRErrMessages(result), 1 );
6675       }
6676     }
6677 
6678     XSRETURN(argvi);
6679   fail:
6680 
6681     SWIG_croak_null();
6682   }
6683 }
6684 
6685 
XS(_wrap_Layer_RollbackTransaction)6686 XS(_wrap_Layer_RollbackTransaction) {
6687   {
6688     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
6689     void *argp1 = 0 ;
6690     int res1 = 0 ;
6691     int argvi = 0;
6692     OGRErr result;
6693     dXSARGS;
6694 
6695     if ((items < 1) || (items > 1)) {
6696       SWIG_croak("Usage: Layer_RollbackTransaction(self);");
6697     }
6698     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
6699     if (!SWIG_IsOK(res1)) {
6700       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_RollbackTransaction" "', argument " "1"" of type '" "OGRLayerShadow *""'");
6701     }
6702     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
6703     {
6704       CPLErrorReset();
6705       result = (OGRErr)OGRLayerShadow_RollbackTransaction(arg1);
6706       CPLErr eclass = CPLGetLastErrorType();
6707       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
6708         do_confess( CPLGetLastErrorMsg(), 0 );
6709 
6710 
6711 
6712 
6713 
6714       }
6715 
6716 
6717       /*
6718           Make warnings regular Perl warnings. This duplicates the warning
6719           message if DontUseExceptions() is in effect (it is not by default).
6720           */
6721       if ( eclass == CE_Warning ) {
6722         warn( CPLGetLastErrorMsg(), "%s" );
6723       }
6724 
6725 
6726     }
6727     {
6728       /* %typemap(out) OGRErr */
6729       if ( result != 0 ) {
6730         const char *err = CPLGetLastErrorMsg();
6731         if (err and *err) do_confess(err, 0); /* this is usually better */
6732         do_confess( OGRErrMessages(result), 1 );
6733       }
6734     }
6735 
6736     XSRETURN(argvi);
6737   fail:
6738 
6739     SWIG_croak_null();
6740   }
6741 }
6742 
6743 
XS(_wrap_Layer_FindFieldIndex)6744 XS(_wrap_Layer_FindFieldIndex) {
6745   {
6746     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
6747     char *arg2 = (char *) 0 ;
6748     int arg3 ;
6749     void *argp1 = 0 ;
6750     int res1 = 0 ;
6751     int res2 ;
6752     char *buf2 = 0 ;
6753     int alloc2 = 0 ;
6754     int val3 ;
6755     int ecode3 = 0 ;
6756     int argvi = 0;
6757     int result;
6758     dXSARGS;
6759 
6760     if ((items < 3) || (items > 3)) {
6761       SWIG_croak("Usage: Layer_FindFieldIndex(self,pszFieldName,bExactMatch);");
6762     }
6763     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
6764     if (!SWIG_IsOK(res1)) {
6765       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_FindFieldIndex" "', argument " "1"" of type '" "OGRLayerShadow *""'");
6766     }
6767     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
6768     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
6769     if (!SWIG_IsOK(res2)) {
6770       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Layer_FindFieldIndex" "', argument " "2"" of type '" "char const *""'");
6771     }
6772     arg2 = reinterpret_cast< char * >(buf2);
6773     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
6774     if (!SWIG_IsOK(ecode3)) {
6775       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Layer_FindFieldIndex" "', argument " "3"" of type '" "int""'");
6776     }
6777     arg3 = static_cast< int >(val3);
6778     {
6779       CPLErrorReset();
6780       result = (int)OGRLayerShadow_FindFieldIndex(arg1,(char const *)arg2,arg3);
6781       CPLErr eclass = CPLGetLastErrorType();
6782       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
6783         do_confess( CPLGetLastErrorMsg(), 0 );
6784 
6785 
6786 
6787 
6788 
6789       }
6790 
6791 
6792       /*
6793           Make warnings regular Perl warnings. This duplicates the warning
6794           message if DontUseExceptions() is in effect (it is not by default).
6795           */
6796       if ( eclass == CE_Warning ) {
6797         warn( CPLGetLastErrorMsg(), "%s" );
6798       }
6799 
6800 
6801     }
6802     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
6803 
6804     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
6805 
6806     XSRETURN(argvi);
6807   fail:
6808 
6809     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
6810 
6811     SWIG_croak_null();
6812   }
6813 }
6814 
6815 
XS(_wrap_Layer_GetSpatialRef)6816 XS(_wrap_Layer_GetSpatialRef) {
6817   {
6818     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
6819     void *argp1 = 0 ;
6820     int res1 = 0 ;
6821     int argvi = 0;
6822     OSRSpatialReferenceShadow *result = 0 ;
6823     dXSARGS;
6824 
6825     if ((items < 1) || (items > 1)) {
6826       SWIG_croak("Usage: Layer_GetSpatialRef(self);");
6827     }
6828     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
6829     if (!SWIG_IsOK(res1)) {
6830       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_GetSpatialRef" "', argument " "1"" of type '" "OGRLayerShadow *""'");
6831     }
6832     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
6833     {
6834       CPLErrorReset();
6835       result = (OSRSpatialReferenceShadow *)OGRLayerShadow_GetSpatialRef(arg1);
6836       CPLErr eclass = CPLGetLastErrorType();
6837       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
6838         do_confess( CPLGetLastErrorMsg(), 0 );
6839 
6840 
6841 
6842 
6843 
6844       }
6845 
6846 
6847       /*
6848           Make warnings regular Perl warnings. This duplicates the warning
6849           message if DontUseExceptions() is in effect (it is not by default).
6850           */
6851       if ( eclass == CE_Warning ) {
6852         warn( CPLGetLastErrorMsg(), "%s" );
6853       }
6854 
6855 
6856     }
6857     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OSRSpatialReferenceShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
6858 
6859     XSRETURN(argvi);
6860   fail:
6861 
6862     SWIG_croak_null();
6863   }
6864 }
6865 
6866 
XS(_wrap_Layer_GetFeaturesRead)6867 XS(_wrap_Layer_GetFeaturesRead) {
6868   {
6869     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
6870     void *argp1 = 0 ;
6871     int res1 = 0 ;
6872     int argvi = 0;
6873     GIntBig result;
6874     dXSARGS;
6875 
6876     if ((items < 1) || (items > 1)) {
6877       SWIG_croak("Usage: Layer_GetFeaturesRead(self);");
6878     }
6879     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
6880     if (!SWIG_IsOK(res1)) {
6881       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_GetFeaturesRead" "', argument " "1"" of type '" "OGRLayerShadow *""'");
6882     }
6883     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
6884     {
6885       CPLErrorReset();
6886       result = OGRLayerShadow_GetFeaturesRead(arg1);
6887       CPLErr eclass = CPLGetLastErrorType();
6888       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
6889         do_confess( CPLGetLastErrorMsg(), 0 );
6890 
6891 
6892 
6893 
6894 
6895       }
6896 
6897 
6898       /*
6899           Make warnings regular Perl warnings. This duplicates the warning
6900           message if DontUseExceptions() is in effect (it is not by default).
6901           */
6902       if ( eclass == CE_Warning ) {
6903         warn( CPLGetLastErrorMsg(), "%s" );
6904       }
6905 
6906 
6907     }
6908     {
6909       char temp[256];
6910       sprintf(temp, "" CPL_FRMT_GIB "", result);
6911       ST(argvi) = sv_2mortal(newSVpv(temp, 0));
6912       argvi++;
6913     }
6914 
6915     XSRETURN(argvi);
6916   fail:
6917 
6918     SWIG_croak_null();
6919   }
6920 }
6921 
6922 
XS(_wrap_Layer_SetIgnoredFields)6923 XS(_wrap_Layer_SetIgnoredFields) {
6924   {
6925     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
6926     char **arg2 = (char **) 0 ;
6927     void *argp1 = 0 ;
6928     int res1 = 0 ;
6929     int argvi = 0;
6930     OGRErr result;
6931     dXSARGS;
6932 
6933     if ((items < 2) || (items > 2)) {
6934       SWIG_croak("Usage: Layer_SetIgnoredFields(self,options);");
6935     }
6936     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
6937     if (!SWIG_IsOK(res1)) {
6938       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_SetIgnoredFields" "', argument " "1"" of type '" "OGRLayerShadow *""'");
6939     }
6940     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
6941     {
6942       /* %typemap(in) char **options */
6943       if (SvOK(ST(1))) {
6944         if (SvROK(ST(1))) {
6945           if (SvTYPE(SvRV(ST(1)))==SVt_PVAV) {
6946             AV *av = (AV*)(SvRV(ST(1)));
6947             for (int i = 0; i < av_len(av)+1; i++) {
6948               SV *sv = *(av_fetch(av, i, 0));
6949               bool sf;
6950               char *tmp = sv_to_utf8_string(sv, NULL, &sf);
6951               arg2 = CSLAddString(arg2, tmp);
6952               if (sf) Safefree(tmp); else free(tmp);
6953             }
6954           } else if (SvTYPE(SvRV(ST(1)))==SVt_PVHV) {
6955             HV *hv = (HV*)SvRV(ST(1));
6956             SV *sv;
6957             char *key;
6958             I32 klen;
6959             arg2 = NULL;
6960             hv_iterinit(hv);
6961             while(sv = hv_iternextsv(hv, &key, &klen)) {
6962               bool sf;
6963               char *tmp = sv_to_utf8_string(sv, NULL, &sf);
6964               arg2 = CSLAddNameValue(arg2, key, tmp);
6965               if (sf) Safefree(tmp); else free(tmp);
6966             }
6967           } else
6968           do_confess(NEED_REF, 1);
6969         } else
6970         do_confess(NEED_REF, 1);
6971       }
6972     }
6973     {
6974       CPLErrorReset();
6975       result = (OGRErr)OGRLayerShadow_SetIgnoredFields(arg1,(char const **)arg2);
6976       CPLErr eclass = CPLGetLastErrorType();
6977       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
6978         do_confess( CPLGetLastErrorMsg(), 0 );
6979 
6980 
6981 
6982 
6983 
6984       }
6985 
6986 
6987       /*
6988           Make warnings regular Perl warnings. This duplicates the warning
6989           message if DontUseExceptions() is in effect (it is not by default).
6990           */
6991       if ( eclass == CE_Warning ) {
6992         warn( CPLGetLastErrorMsg(), "%s" );
6993       }
6994 
6995 
6996     }
6997     {
6998       /* %typemap(out) OGRErr */
6999       if ( result != 0 ) {
7000         const char *err = CPLGetLastErrorMsg();
7001         if (err and *err) do_confess(err, 0); /* this is usually better */
7002         do_confess( OGRErrMessages(result), 1 );
7003       }
7004     }
7005 
7006     {
7007       /* %typemap(freearg) char **options */
7008       if (arg2) CSLDestroy( arg2 );
7009     }
7010     XSRETURN(argvi);
7011   fail:
7012 
7013     {
7014       /* %typemap(freearg) char **options */
7015       if (arg2) CSLDestroy( arg2 );
7016     }
7017     SWIG_croak_null();
7018   }
7019 }
7020 
7021 
XS(_wrap_Layer_Intersection)7022 XS(_wrap_Layer_Intersection) {
7023   {
7024     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
7025     OGRLayerShadow *arg2 = (OGRLayerShadow *) 0 ;
7026     OGRLayerShadow *arg3 = (OGRLayerShadow *) 0 ;
7027     char **arg4 = (char **) NULL ;
7028     GDALProgressFunc arg5 = (GDALProgressFunc) NULL ;
7029     void *arg6 = (void *) NULL ;
7030     void *argp1 = 0 ;
7031     int res1 = 0 ;
7032     void *argp2 = 0 ;
7033     int res2 = 0 ;
7034     void *argp3 = 0 ;
7035     int res3 = 0 ;
7036     int argvi = 0;
7037     OGRErr result;
7038     dXSARGS;
7039 
7040     /* %typemap(arginit, noblock=1) ( void* callback_data = NULL) */
7041     SavedEnv saved_env;
7042     saved_env.fct = NULL;
7043     saved_env.data = &PL_sv_undef;
7044     arg6 = (void *)(&saved_env);
7045     if ((items < 3) || (items > 6)) {
7046       SWIG_croak("Usage: Layer_Intersection(self,method_layer,result_layer,options,callback,callback_data);");
7047     }
7048     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7049     if (!SWIG_IsOK(res1)) {
7050       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_Intersection" "', argument " "1"" of type '" "OGRLayerShadow *""'");
7051     }
7052     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
7053     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7054     if (!SWIG_IsOK(res2)) {
7055       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Layer_Intersection" "', argument " "2"" of type '" "OGRLayerShadow *""'");
7056     }
7057     arg2 = reinterpret_cast< OGRLayerShadow * >(argp2);
7058     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7059     if (!SWIG_IsOK(res3)) {
7060       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Layer_Intersection" "', argument " "3"" of type '" "OGRLayerShadow *""'");
7061     }
7062     arg3 = reinterpret_cast< OGRLayerShadow * >(argp3);
7063     if (items > 3) {
7064       {
7065         /* %typemap(in) char **options */
7066         if (SvOK(ST(3))) {
7067           if (SvROK(ST(3))) {
7068             if (SvTYPE(SvRV(ST(3)))==SVt_PVAV) {
7069               AV *av = (AV*)(SvRV(ST(3)));
7070               for (int i = 0; i < av_len(av)+1; i++) {
7071                 SV *sv = *(av_fetch(av, i, 0));
7072                 bool sf;
7073                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
7074                 arg4 = CSLAddString(arg4, tmp);
7075                 if (sf) Safefree(tmp); else free(tmp);
7076               }
7077             } else if (SvTYPE(SvRV(ST(3)))==SVt_PVHV) {
7078               HV *hv = (HV*)SvRV(ST(3));
7079               SV *sv;
7080               char *key;
7081               I32 klen;
7082               arg4 = NULL;
7083               hv_iterinit(hv);
7084               while(sv = hv_iternextsv(hv, &key, &klen)) {
7085                 bool sf;
7086                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
7087                 arg4 = CSLAddNameValue(arg4, key, tmp);
7088                 if (sf) Safefree(tmp); else free(tmp);
7089               }
7090             } else
7091             do_confess(NEED_REF, 1);
7092           } else
7093           do_confess(NEED_REF, 1);
7094         }
7095       }
7096     }
7097     if (items > 4) {
7098       {
7099         /* %typemap(in) (GDALProgressFunc callback = NULL) */
7100         if (SvOK(ST(4))) {
7101           if (SvROK(ST(4))) {
7102             if (SvTYPE(SvRV(ST(4))) != SVt_PVCV) {
7103               do_confess(NEED_CODE_REF, 1);
7104             } else {
7105               saved_env.fct = (SV *)ST(4);
7106               arg5 = &callback_d_cp_vp;
7107             }
7108           } else {
7109             do_confess(NEED_CODE_REF, 1);
7110           }
7111         }
7112       }
7113     }
7114     if (items > 5) {
7115       {
7116         /* %typemap(in) (void* callback_data=NULL) */
7117         if (SvOK(ST(5)))
7118         saved_env.data = (SV *)ST(5);
7119       }
7120     }
7121     {
7122       CPLErrorReset();
7123       result = (OGRErr)OGRLayerShadow_Intersection(arg1,arg2,arg3,arg4,arg5,arg6);
7124       CPLErr eclass = CPLGetLastErrorType();
7125       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
7126         do_confess( CPLGetLastErrorMsg(), 0 );
7127 
7128 
7129 
7130 
7131 
7132       }
7133 
7134 
7135       /*
7136           Make warnings regular Perl warnings. This duplicates the warning
7137           message if DontUseExceptions() is in effect (it is not by default).
7138           */
7139       if ( eclass == CE_Warning ) {
7140         warn( CPLGetLastErrorMsg(), "%s" );
7141       }
7142 
7143 
7144     }
7145     {
7146       /* %typemap(out) OGRErr */
7147       if ( result != 0 ) {
7148         const char *err = CPLGetLastErrorMsg();
7149         if (err and *err) do_confess(err, 0); /* this is usually better */
7150         do_confess( OGRErrMessages(result), 1 );
7151       }
7152     }
7153 
7154 
7155 
7156     {
7157       /* %typemap(freearg) char **options */
7158       if (arg4) CSLDestroy( arg4 );
7159     }
7160 
7161     XSRETURN(argvi);
7162   fail:
7163 
7164 
7165 
7166     {
7167       /* %typemap(freearg) char **options */
7168       if (arg4) CSLDestroy( arg4 );
7169     }
7170 
7171     SWIG_croak_null();
7172   }
7173 }
7174 
7175 
XS(_wrap_Layer_Union)7176 XS(_wrap_Layer_Union) {
7177   {
7178     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
7179     OGRLayerShadow *arg2 = (OGRLayerShadow *) 0 ;
7180     OGRLayerShadow *arg3 = (OGRLayerShadow *) 0 ;
7181     char **arg4 = (char **) NULL ;
7182     GDALProgressFunc arg5 = (GDALProgressFunc) NULL ;
7183     void *arg6 = (void *) NULL ;
7184     void *argp1 = 0 ;
7185     int res1 = 0 ;
7186     void *argp2 = 0 ;
7187     int res2 = 0 ;
7188     void *argp3 = 0 ;
7189     int res3 = 0 ;
7190     int argvi = 0;
7191     OGRErr result;
7192     dXSARGS;
7193 
7194     /* %typemap(arginit, noblock=1) ( void* callback_data = NULL) */
7195     SavedEnv saved_env;
7196     saved_env.fct = NULL;
7197     saved_env.data = &PL_sv_undef;
7198     arg6 = (void *)(&saved_env);
7199     if ((items < 3) || (items > 6)) {
7200       SWIG_croak("Usage: Layer_Union(self,method_layer,result_layer,options,callback,callback_data);");
7201     }
7202     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7203     if (!SWIG_IsOK(res1)) {
7204       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_Union" "', argument " "1"" of type '" "OGRLayerShadow *""'");
7205     }
7206     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
7207     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7208     if (!SWIG_IsOK(res2)) {
7209       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Layer_Union" "', argument " "2"" of type '" "OGRLayerShadow *""'");
7210     }
7211     arg2 = reinterpret_cast< OGRLayerShadow * >(argp2);
7212     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7213     if (!SWIG_IsOK(res3)) {
7214       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Layer_Union" "', argument " "3"" of type '" "OGRLayerShadow *""'");
7215     }
7216     arg3 = reinterpret_cast< OGRLayerShadow * >(argp3);
7217     if (items > 3) {
7218       {
7219         /* %typemap(in) char **options */
7220         if (SvOK(ST(3))) {
7221           if (SvROK(ST(3))) {
7222             if (SvTYPE(SvRV(ST(3)))==SVt_PVAV) {
7223               AV *av = (AV*)(SvRV(ST(3)));
7224               for (int i = 0; i < av_len(av)+1; i++) {
7225                 SV *sv = *(av_fetch(av, i, 0));
7226                 bool sf;
7227                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
7228                 arg4 = CSLAddString(arg4, tmp);
7229                 if (sf) Safefree(tmp); else free(tmp);
7230               }
7231             } else if (SvTYPE(SvRV(ST(3)))==SVt_PVHV) {
7232               HV *hv = (HV*)SvRV(ST(3));
7233               SV *sv;
7234               char *key;
7235               I32 klen;
7236               arg4 = NULL;
7237               hv_iterinit(hv);
7238               while(sv = hv_iternextsv(hv, &key, &klen)) {
7239                 bool sf;
7240                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
7241                 arg4 = CSLAddNameValue(arg4, key, tmp);
7242                 if (sf) Safefree(tmp); else free(tmp);
7243               }
7244             } else
7245             do_confess(NEED_REF, 1);
7246           } else
7247           do_confess(NEED_REF, 1);
7248         }
7249       }
7250     }
7251     if (items > 4) {
7252       {
7253         /* %typemap(in) (GDALProgressFunc callback = NULL) */
7254         if (SvOK(ST(4))) {
7255           if (SvROK(ST(4))) {
7256             if (SvTYPE(SvRV(ST(4))) != SVt_PVCV) {
7257               do_confess(NEED_CODE_REF, 1);
7258             } else {
7259               saved_env.fct = (SV *)ST(4);
7260               arg5 = &callback_d_cp_vp;
7261             }
7262           } else {
7263             do_confess(NEED_CODE_REF, 1);
7264           }
7265         }
7266       }
7267     }
7268     if (items > 5) {
7269       {
7270         /* %typemap(in) (void* callback_data=NULL) */
7271         if (SvOK(ST(5)))
7272         saved_env.data = (SV *)ST(5);
7273       }
7274     }
7275     {
7276       CPLErrorReset();
7277       result = (OGRErr)OGRLayerShadow_Union(arg1,arg2,arg3,arg4,arg5,arg6);
7278       CPLErr eclass = CPLGetLastErrorType();
7279       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
7280         do_confess( CPLGetLastErrorMsg(), 0 );
7281 
7282 
7283 
7284 
7285 
7286       }
7287 
7288 
7289       /*
7290           Make warnings regular Perl warnings. This duplicates the warning
7291           message if DontUseExceptions() is in effect (it is not by default).
7292           */
7293       if ( eclass == CE_Warning ) {
7294         warn( CPLGetLastErrorMsg(), "%s" );
7295       }
7296 
7297 
7298     }
7299     {
7300       /* %typemap(out) OGRErr */
7301       if ( result != 0 ) {
7302         const char *err = CPLGetLastErrorMsg();
7303         if (err and *err) do_confess(err, 0); /* this is usually better */
7304         do_confess( OGRErrMessages(result), 1 );
7305       }
7306     }
7307 
7308 
7309 
7310     {
7311       /* %typemap(freearg) char **options */
7312       if (arg4) CSLDestroy( arg4 );
7313     }
7314 
7315     XSRETURN(argvi);
7316   fail:
7317 
7318 
7319 
7320     {
7321       /* %typemap(freearg) char **options */
7322       if (arg4) CSLDestroy( arg4 );
7323     }
7324 
7325     SWIG_croak_null();
7326   }
7327 }
7328 
7329 
XS(_wrap_Layer_SymDifference)7330 XS(_wrap_Layer_SymDifference) {
7331   {
7332     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
7333     OGRLayerShadow *arg2 = (OGRLayerShadow *) 0 ;
7334     OGRLayerShadow *arg3 = (OGRLayerShadow *) 0 ;
7335     char **arg4 = (char **) NULL ;
7336     GDALProgressFunc arg5 = (GDALProgressFunc) NULL ;
7337     void *arg6 = (void *) NULL ;
7338     void *argp1 = 0 ;
7339     int res1 = 0 ;
7340     void *argp2 = 0 ;
7341     int res2 = 0 ;
7342     void *argp3 = 0 ;
7343     int res3 = 0 ;
7344     int argvi = 0;
7345     OGRErr result;
7346     dXSARGS;
7347 
7348     /* %typemap(arginit, noblock=1) ( void* callback_data = NULL) */
7349     SavedEnv saved_env;
7350     saved_env.fct = NULL;
7351     saved_env.data = &PL_sv_undef;
7352     arg6 = (void *)(&saved_env);
7353     if ((items < 3) || (items > 6)) {
7354       SWIG_croak("Usage: Layer_SymDifference(self,method_layer,result_layer,options,callback,callback_data);");
7355     }
7356     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7357     if (!SWIG_IsOK(res1)) {
7358       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_SymDifference" "', argument " "1"" of type '" "OGRLayerShadow *""'");
7359     }
7360     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
7361     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7362     if (!SWIG_IsOK(res2)) {
7363       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Layer_SymDifference" "', argument " "2"" of type '" "OGRLayerShadow *""'");
7364     }
7365     arg2 = reinterpret_cast< OGRLayerShadow * >(argp2);
7366     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7367     if (!SWIG_IsOK(res3)) {
7368       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Layer_SymDifference" "', argument " "3"" of type '" "OGRLayerShadow *""'");
7369     }
7370     arg3 = reinterpret_cast< OGRLayerShadow * >(argp3);
7371     if (items > 3) {
7372       {
7373         /* %typemap(in) char **options */
7374         if (SvOK(ST(3))) {
7375           if (SvROK(ST(3))) {
7376             if (SvTYPE(SvRV(ST(3)))==SVt_PVAV) {
7377               AV *av = (AV*)(SvRV(ST(3)));
7378               for (int i = 0; i < av_len(av)+1; i++) {
7379                 SV *sv = *(av_fetch(av, i, 0));
7380                 bool sf;
7381                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
7382                 arg4 = CSLAddString(arg4, tmp);
7383                 if (sf) Safefree(tmp); else free(tmp);
7384               }
7385             } else if (SvTYPE(SvRV(ST(3)))==SVt_PVHV) {
7386               HV *hv = (HV*)SvRV(ST(3));
7387               SV *sv;
7388               char *key;
7389               I32 klen;
7390               arg4 = NULL;
7391               hv_iterinit(hv);
7392               while(sv = hv_iternextsv(hv, &key, &klen)) {
7393                 bool sf;
7394                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
7395                 arg4 = CSLAddNameValue(arg4, key, tmp);
7396                 if (sf) Safefree(tmp); else free(tmp);
7397               }
7398             } else
7399             do_confess(NEED_REF, 1);
7400           } else
7401           do_confess(NEED_REF, 1);
7402         }
7403       }
7404     }
7405     if (items > 4) {
7406       {
7407         /* %typemap(in) (GDALProgressFunc callback = NULL) */
7408         if (SvOK(ST(4))) {
7409           if (SvROK(ST(4))) {
7410             if (SvTYPE(SvRV(ST(4))) != SVt_PVCV) {
7411               do_confess(NEED_CODE_REF, 1);
7412             } else {
7413               saved_env.fct = (SV *)ST(4);
7414               arg5 = &callback_d_cp_vp;
7415             }
7416           } else {
7417             do_confess(NEED_CODE_REF, 1);
7418           }
7419         }
7420       }
7421     }
7422     if (items > 5) {
7423       {
7424         /* %typemap(in) (void* callback_data=NULL) */
7425         if (SvOK(ST(5)))
7426         saved_env.data = (SV *)ST(5);
7427       }
7428     }
7429     {
7430       CPLErrorReset();
7431       result = (OGRErr)OGRLayerShadow_SymDifference(arg1,arg2,arg3,arg4,arg5,arg6);
7432       CPLErr eclass = CPLGetLastErrorType();
7433       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
7434         do_confess( CPLGetLastErrorMsg(), 0 );
7435 
7436 
7437 
7438 
7439 
7440       }
7441 
7442 
7443       /*
7444           Make warnings regular Perl warnings. This duplicates the warning
7445           message if DontUseExceptions() is in effect (it is not by default).
7446           */
7447       if ( eclass == CE_Warning ) {
7448         warn( CPLGetLastErrorMsg(), "%s" );
7449       }
7450 
7451 
7452     }
7453     {
7454       /* %typemap(out) OGRErr */
7455       if ( result != 0 ) {
7456         const char *err = CPLGetLastErrorMsg();
7457         if (err and *err) do_confess(err, 0); /* this is usually better */
7458         do_confess( OGRErrMessages(result), 1 );
7459       }
7460     }
7461 
7462 
7463 
7464     {
7465       /* %typemap(freearg) char **options */
7466       if (arg4) CSLDestroy( arg4 );
7467     }
7468 
7469     XSRETURN(argvi);
7470   fail:
7471 
7472 
7473 
7474     {
7475       /* %typemap(freearg) char **options */
7476       if (arg4) CSLDestroy( arg4 );
7477     }
7478 
7479     SWIG_croak_null();
7480   }
7481 }
7482 
7483 
XS(_wrap_Layer_Identity)7484 XS(_wrap_Layer_Identity) {
7485   {
7486     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
7487     OGRLayerShadow *arg2 = (OGRLayerShadow *) 0 ;
7488     OGRLayerShadow *arg3 = (OGRLayerShadow *) 0 ;
7489     char **arg4 = (char **) NULL ;
7490     GDALProgressFunc arg5 = (GDALProgressFunc) NULL ;
7491     void *arg6 = (void *) NULL ;
7492     void *argp1 = 0 ;
7493     int res1 = 0 ;
7494     void *argp2 = 0 ;
7495     int res2 = 0 ;
7496     void *argp3 = 0 ;
7497     int res3 = 0 ;
7498     int argvi = 0;
7499     OGRErr result;
7500     dXSARGS;
7501 
7502     /* %typemap(arginit, noblock=1) ( void* callback_data = NULL) */
7503     SavedEnv saved_env;
7504     saved_env.fct = NULL;
7505     saved_env.data = &PL_sv_undef;
7506     arg6 = (void *)(&saved_env);
7507     if ((items < 3) || (items > 6)) {
7508       SWIG_croak("Usage: Layer_Identity(self,method_layer,result_layer,options,callback,callback_data);");
7509     }
7510     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7511     if (!SWIG_IsOK(res1)) {
7512       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_Identity" "', argument " "1"" of type '" "OGRLayerShadow *""'");
7513     }
7514     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
7515     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7516     if (!SWIG_IsOK(res2)) {
7517       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Layer_Identity" "', argument " "2"" of type '" "OGRLayerShadow *""'");
7518     }
7519     arg2 = reinterpret_cast< OGRLayerShadow * >(argp2);
7520     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7521     if (!SWIG_IsOK(res3)) {
7522       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Layer_Identity" "', argument " "3"" of type '" "OGRLayerShadow *""'");
7523     }
7524     arg3 = reinterpret_cast< OGRLayerShadow * >(argp3);
7525     if (items > 3) {
7526       {
7527         /* %typemap(in) char **options */
7528         if (SvOK(ST(3))) {
7529           if (SvROK(ST(3))) {
7530             if (SvTYPE(SvRV(ST(3)))==SVt_PVAV) {
7531               AV *av = (AV*)(SvRV(ST(3)));
7532               for (int i = 0; i < av_len(av)+1; i++) {
7533                 SV *sv = *(av_fetch(av, i, 0));
7534                 bool sf;
7535                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
7536                 arg4 = CSLAddString(arg4, tmp);
7537                 if (sf) Safefree(tmp); else free(tmp);
7538               }
7539             } else if (SvTYPE(SvRV(ST(3)))==SVt_PVHV) {
7540               HV *hv = (HV*)SvRV(ST(3));
7541               SV *sv;
7542               char *key;
7543               I32 klen;
7544               arg4 = NULL;
7545               hv_iterinit(hv);
7546               while(sv = hv_iternextsv(hv, &key, &klen)) {
7547                 bool sf;
7548                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
7549                 arg4 = CSLAddNameValue(arg4, key, tmp);
7550                 if (sf) Safefree(tmp); else free(tmp);
7551               }
7552             } else
7553             do_confess(NEED_REF, 1);
7554           } else
7555           do_confess(NEED_REF, 1);
7556         }
7557       }
7558     }
7559     if (items > 4) {
7560       {
7561         /* %typemap(in) (GDALProgressFunc callback = NULL) */
7562         if (SvOK(ST(4))) {
7563           if (SvROK(ST(4))) {
7564             if (SvTYPE(SvRV(ST(4))) != SVt_PVCV) {
7565               do_confess(NEED_CODE_REF, 1);
7566             } else {
7567               saved_env.fct = (SV *)ST(4);
7568               arg5 = &callback_d_cp_vp;
7569             }
7570           } else {
7571             do_confess(NEED_CODE_REF, 1);
7572           }
7573         }
7574       }
7575     }
7576     if (items > 5) {
7577       {
7578         /* %typemap(in) (void* callback_data=NULL) */
7579         if (SvOK(ST(5)))
7580         saved_env.data = (SV *)ST(5);
7581       }
7582     }
7583     {
7584       CPLErrorReset();
7585       result = (OGRErr)OGRLayerShadow_Identity(arg1,arg2,arg3,arg4,arg5,arg6);
7586       CPLErr eclass = CPLGetLastErrorType();
7587       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
7588         do_confess( CPLGetLastErrorMsg(), 0 );
7589 
7590 
7591 
7592 
7593 
7594       }
7595 
7596 
7597       /*
7598           Make warnings regular Perl warnings. This duplicates the warning
7599           message if DontUseExceptions() is in effect (it is not by default).
7600           */
7601       if ( eclass == CE_Warning ) {
7602         warn( CPLGetLastErrorMsg(), "%s" );
7603       }
7604 
7605 
7606     }
7607     {
7608       /* %typemap(out) OGRErr */
7609       if ( result != 0 ) {
7610         const char *err = CPLGetLastErrorMsg();
7611         if (err and *err) do_confess(err, 0); /* this is usually better */
7612         do_confess( OGRErrMessages(result), 1 );
7613       }
7614     }
7615 
7616 
7617 
7618     {
7619       /* %typemap(freearg) char **options */
7620       if (arg4) CSLDestroy( arg4 );
7621     }
7622 
7623     XSRETURN(argvi);
7624   fail:
7625 
7626 
7627 
7628     {
7629       /* %typemap(freearg) char **options */
7630       if (arg4) CSLDestroy( arg4 );
7631     }
7632 
7633     SWIG_croak_null();
7634   }
7635 }
7636 
7637 
XS(_wrap_Layer_Update)7638 XS(_wrap_Layer_Update) {
7639   {
7640     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
7641     OGRLayerShadow *arg2 = (OGRLayerShadow *) 0 ;
7642     OGRLayerShadow *arg3 = (OGRLayerShadow *) 0 ;
7643     char **arg4 = (char **) NULL ;
7644     GDALProgressFunc arg5 = (GDALProgressFunc) NULL ;
7645     void *arg6 = (void *) NULL ;
7646     void *argp1 = 0 ;
7647     int res1 = 0 ;
7648     void *argp2 = 0 ;
7649     int res2 = 0 ;
7650     void *argp3 = 0 ;
7651     int res3 = 0 ;
7652     int argvi = 0;
7653     OGRErr result;
7654     dXSARGS;
7655 
7656     /* %typemap(arginit, noblock=1) ( void* callback_data = NULL) */
7657     SavedEnv saved_env;
7658     saved_env.fct = NULL;
7659     saved_env.data = &PL_sv_undef;
7660     arg6 = (void *)(&saved_env);
7661     if ((items < 3) || (items > 6)) {
7662       SWIG_croak("Usage: Layer_Update(self,method_layer,result_layer,options,callback,callback_data);");
7663     }
7664     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7665     if (!SWIG_IsOK(res1)) {
7666       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_Update" "', argument " "1"" of type '" "OGRLayerShadow *""'");
7667     }
7668     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
7669     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7670     if (!SWIG_IsOK(res2)) {
7671       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Layer_Update" "', argument " "2"" of type '" "OGRLayerShadow *""'");
7672     }
7673     arg2 = reinterpret_cast< OGRLayerShadow * >(argp2);
7674     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7675     if (!SWIG_IsOK(res3)) {
7676       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Layer_Update" "', argument " "3"" of type '" "OGRLayerShadow *""'");
7677     }
7678     arg3 = reinterpret_cast< OGRLayerShadow * >(argp3);
7679     if (items > 3) {
7680       {
7681         /* %typemap(in) char **options */
7682         if (SvOK(ST(3))) {
7683           if (SvROK(ST(3))) {
7684             if (SvTYPE(SvRV(ST(3)))==SVt_PVAV) {
7685               AV *av = (AV*)(SvRV(ST(3)));
7686               for (int i = 0; i < av_len(av)+1; i++) {
7687                 SV *sv = *(av_fetch(av, i, 0));
7688                 bool sf;
7689                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
7690                 arg4 = CSLAddString(arg4, tmp);
7691                 if (sf) Safefree(tmp); else free(tmp);
7692               }
7693             } else if (SvTYPE(SvRV(ST(3)))==SVt_PVHV) {
7694               HV *hv = (HV*)SvRV(ST(3));
7695               SV *sv;
7696               char *key;
7697               I32 klen;
7698               arg4 = NULL;
7699               hv_iterinit(hv);
7700               while(sv = hv_iternextsv(hv, &key, &klen)) {
7701                 bool sf;
7702                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
7703                 arg4 = CSLAddNameValue(arg4, key, tmp);
7704                 if (sf) Safefree(tmp); else free(tmp);
7705               }
7706             } else
7707             do_confess(NEED_REF, 1);
7708           } else
7709           do_confess(NEED_REF, 1);
7710         }
7711       }
7712     }
7713     if (items > 4) {
7714       {
7715         /* %typemap(in) (GDALProgressFunc callback = NULL) */
7716         if (SvOK(ST(4))) {
7717           if (SvROK(ST(4))) {
7718             if (SvTYPE(SvRV(ST(4))) != SVt_PVCV) {
7719               do_confess(NEED_CODE_REF, 1);
7720             } else {
7721               saved_env.fct = (SV *)ST(4);
7722               arg5 = &callback_d_cp_vp;
7723             }
7724           } else {
7725             do_confess(NEED_CODE_REF, 1);
7726           }
7727         }
7728       }
7729     }
7730     if (items > 5) {
7731       {
7732         /* %typemap(in) (void* callback_data=NULL) */
7733         if (SvOK(ST(5)))
7734         saved_env.data = (SV *)ST(5);
7735       }
7736     }
7737     {
7738       CPLErrorReset();
7739       result = (OGRErr)OGRLayerShadow_Update(arg1,arg2,arg3,arg4,arg5,arg6);
7740       CPLErr eclass = CPLGetLastErrorType();
7741       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
7742         do_confess( CPLGetLastErrorMsg(), 0 );
7743 
7744 
7745 
7746 
7747 
7748       }
7749 
7750 
7751       /*
7752           Make warnings regular Perl warnings. This duplicates the warning
7753           message if DontUseExceptions() is in effect (it is not by default).
7754           */
7755       if ( eclass == CE_Warning ) {
7756         warn( CPLGetLastErrorMsg(), "%s" );
7757       }
7758 
7759 
7760     }
7761     {
7762       /* %typemap(out) OGRErr */
7763       if ( result != 0 ) {
7764         const char *err = CPLGetLastErrorMsg();
7765         if (err and *err) do_confess(err, 0); /* this is usually better */
7766         do_confess( OGRErrMessages(result), 1 );
7767       }
7768     }
7769 
7770 
7771 
7772     {
7773       /* %typemap(freearg) char **options */
7774       if (arg4) CSLDestroy( arg4 );
7775     }
7776 
7777     XSRETURN(argvi);
7778   fail:
7779 
7780 
7781 
7782     {
7783       /* %typemap(freearg) char **options */
7784       if (arg4) CSLDestroy( arg4 );
7785     }
7786 
7787     SWIG_croak_null();
7788   }
7789 }
7790 
7791 
XS(_wrap_Layer_Clip)7792 XS(_wrap_Layer_Clip) {
7793   {
7794     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
7795     OGRLayerShadow *arg2 = (OGRLayerShadow *) 0 ;
7796     OGRLayerShadow *arg3 = (OGRLayerShadow *) 0 ;
7797     char **arg4 = (char **) NULL ;
7798     GDALProgressFunc arg5 = (GDALProgressFunc) NULL ;
7799     void *arg6 = (void *) NULL ;
7800     void *argp1 = 0 ;
7801     int res1 = 0 ;
7802     void *argp2 = 0 ;
7803     int res2 = 0 ;
7804     void *argp3 = 0 ;
7805     int res3 = 0 ;
7806     int argvi = 0;
7807     OGRErr result;
7808     dXSARGS;
7809 
7810     /* %typemap(arginit, noblock=1) ( void* callback_data = NULL) */
7811     SavedEnv saved_env;
7812     saved_env.fct = NULL;
7813     saved_env.data = &PL_sv_undef;
7814     arg6 = (void *)(&saved_env);
7815     if ((items < 3) || (items > 6)) {
7816       SWIG_croak("Usage: Layer_Clip(self,method_layer,result_layer,options,callback,callback_data);");
7817     }
7818     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7819     if (!SWIG_IsOK(res1)) {
7820       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_Clip" "', argument " "1"" of type '" "OGRLayerShadow *""'");
7821     }
7822     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
7823     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7824     if (!SWIG_IsOK(res2)) {
7825       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Layer_Clip" "', argument " "2"" of type '" "OGRLayerShadow *""'");
7826     }
7827     arg2 = reinterpret_cast< OGRLayerShadow * >(argp2);
7828     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7829     if (!SWIG_IsOK(res3)) {
7830       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Layer_Clip" "', argument " "3"" of type '" "OGRLayerShadow *""'");
7831     }
7832     arg3 = reinterpret_cast< OGRLayerShadow * >(argp3);
7833     if (items > 3) {
7834       {
7835         /* %typemap(in) char **options */
7836         if (SvOK(ST(3))) {
7837           if (SvROK(ST(3))) {
7838             if (SvTYPE(SvRV(ST(3)))==SVt_PVAV) {
7839               AV *av = (AV*)(SvRV(ST(3)));
7840               for (int i = 0; i < av_len(av)+1; i++) {
7841                 SV *sv = *(av_fetch(av, i, 0));
7842                 bool sf;
7843                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
7844                 arg4 = CSLAddString(arg4, tmp);
7845                 if (sf) Safefree(tmp); else free(tmp);
7846               }
7847             } else if (SvTYPE(SvRV(ST(3)))==SVt_PVHV) {
7848               HV *hv = (HV*)SvRV(ST(3));
7849               SV *sv;
7850               char *key;
7851               I32 klen;
7852               arg4 = NULL;
7853               hv_iterinit(hv);
7854               while(sv = hv_iternextsv(hv, &key, &klen)) {
7855                 bool sf;
7856                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
7857                 arg4 = CSLAddNameValue(arg4, key, tmp);
7858                 if (sf) Safefree(tmp); else free(tmp);
7859               }
7860             } else
7861             do_confess(NEED_REF, 1);
7862           } else
7863           do_confess(NEED_REF, 1);
7864         }
7865       }
7866     }
7867     if (items > 4) {
7868       {
7869         /* %typemap(in) (GDALProgressFunc callback = NULL) */
7870         if (SvOK(ST(4))) {
7871           if (SvROK(ST(4))) {
7872             if (SvTYPE(SvRV(ST(4))) != SVt_PVCV) {
7873               do_confess(NEED_CODE_REF, 1);
7874             } else {
7875               saved_env.fct = (SV *)ST(4);
7876               arg5 = &callback_d_cp_vp;
7877             }
7878           } else {
7879             do_confess(NEED_CODE_REF, 1);
7880           }
7881         }
7882       }
7883     }
7884     if (items > 5) {
7885       {
7886         /* %typemap(in) (void* callback_data=NULL) */
7887         if (SvOK(ST(5)))
7888         saved_env.data = (SV *)ST(5);
7889       }
7890     }
7891     {
7892       CPLErrorReset();
7893       result = (OGRErr)OGRLayerShadow_Clip(arg1,arg2,arg3,arg4,arg5,arg6);
7894       CPLErr eclass = CPLGetLastErrorType();
7895       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
7896         do_confess( CPLGetLastErrorMsg(), 0 );
7897 
7898 
7899 
7900 
7901 
7902       }
7903 
7904 
7905       /*
7906           Make warnings regular Perl warnings. This duplicates the warning
7907           message if DontUseExceptions() is in effect (it is not by default).
7908           */
7909       if ( eclass == CE_Warning ) {
7910         warn( CPLGetLastErrorMsg(), "%s" );
7911       }
7912 
7913 
7914     }
7915     {
7916       /* %typemap(out) OGRErr */
7917       if ( result != 0 ) {
7918         const char *err = CPLGetLastErrorMsg();
7919         if (err and *err) do_confess(err, 0); /* this is usually better */
7920         do_confess( OGRErrMessages(result), 1 );
7921       }
7922     }
7923 
7924 
7925 
7926     {
7927       /* %typemap(freearg) char **options */
7928       if (arg4) CSLDestroy( arg4 );
7929     }
7930 
7931     XSRETURN(argvi);
7932   fail:
7933 
7934 
7935 
7936     {
7937       /* %typemap(freearg) char **options */
7938       if (arg4) CSLDestroy( arg4 );
7939     }
7940 
7941     SWIG_croak_null();
7942   }
7943 }
7944 
7945 
XS(_wrap_Layer_Erase)7946 XS(_wrap_Layer_Erase) {
7947   {
7948     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
7949     OGRLayerShadow *arg2 = (OGRLayerShadow *) 0 ;
7950     OGRLayerShadow *arg3 = (OGRLayerShadow *) 0 ;
7951     char **arg4 = (char **) NULL ;
7952     GDALProgressFunc arg5 = (GDALProgressFunc) NULL ;
7953     void *arg6 = (void *) NULL ;
7954     void *argp1 = 0 ;
7955     int res1 = 0 ;
7956     void *argp2 = 0 ;
7957     int res2 = 0 ;
7958     void *argp3 = 0 ;
7959     int res3 = 0 ;
7960     int argvi = 0;
7961     OGRErr result;
7962     dXSARGS;
7963 
7964     /* %typemap(arginit, noblock=1) ( void* callback_data = NULL) */
7965     SavedEnv saved_env;
7966     saved_env.fct = NULL;
7967     saved_env.data = &PL_sv_undef;
7968     arg6 = (void *)(&saved_env);
7969     if ((items < 3) || (items > 6)) {
7970       SWIG_croak("Usage: Layer_Erase(self,method_layer,result_layer,options,callback,callback_data);");
7971     }
7972     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7973     if (!SWIG_IsOK(res1)) {
7974       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_Erase" "', argument " "1"" of type '" "OGRLayerShadow *""'");
7975     }
7976     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
7977     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7978     if (!SWIG_IsOK(res2)) {
7979       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Layer_Erase" "', argument " "2"" of type '" "OGRLayerShadow *""'");
7980     }
7981     arg2 = reinterpret_cast< OGRLayerShadow * >(argp2);
7982     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
7983     if (!SWIG_IsOK(res3)) {
7984       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Layer_Erase" "', argument " "3"" of type '" "OGRLayerShadow *""'");
7985     }
7986     arg3 = reinterpret_cast< OGRLayerShadow * >(argp3);
7987     if (items > 3) {
7988       {
7989         /* %typemap(in) char **options */
7990         if (SvOK(ST(3))) {
7991           if (SvROK(ST(3))) {
7992             if (SvTYPE(SvRV(ST(3)))==SVt_PVAV) {
7993               AV *av = (AV*)(SvRV(ST(3)));
7994               for (int i = 0; i < av_len(av)+1; i++) {
7995                 SV *sv = *(av_fetch(av, i, 0));
7996                 bool sf;
7997                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
7998                 arg4 = CSLAddString(arg4, tmp);
7999                 if (sf) Safefree(tmp); else free(tmp);
8000               }
8001             } else if (SvTYPE(SvRV(ST(3)))==SVt_PVHV) {
8002               HV *hv = (HV*)SvRV(ST(3));
8003               SV *sv;
8004               char *key;
8005               I32 klen;
8006               arg4 = NULL;
8007               hv_iterinit(hv);
8008               while(sv = hv_iternextsv(hv, &key, &klen)) {
8009                 bool sf;
8010                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
8011                 arg4 = CSLAddNameValue(arg4, key, tmp);
8012                 if (sf) Safefree(tmp); else free(tmp);
8013               }
8014             } else
8015             do_confess(NEED_REF, 1);
8016           } else
8017           do_confess(NEED_REF, 1);
8018         }
8019       }
8020     }
8021     if (items > 4) {
8022       {
8023         /* %typemap(in) (GDALProgressFunc callback = NULL) */
8024         if (SvOK(ST(4))) {
8025           if (SvROK(ST(4))) {
8026             if (SvTYPE(SvRV(ST(4))) != SVt_PVCV) {
8027               do_confess(NEED_CODE_REF, 1);
8028             } else {
8029               saved_env.fct = (SV *)ST(4);
8030               arg5 = &callback_d_cp_vp;
8031             }
8032           } else {
8033             do_confess(NEED_CODE_REF, 1);
8034           }
8035         }
8036       }
8037     }
8038     if (items > 5) {
8039       {
8040         /* %typemap(in) (void* callback_data=NULL) */
8041         if (SvOK(ST(5)))
8042         saved_env.data = (SV *)ST(5);
8043       }
8044     }
8045     {
8046       CPLErrorReset();
8047       result = (OGRErr)OGRLayerShadow_Erase(arg1,arg2,arg3,arg4,arg5,arg6);
8048       CPLErr eclass = CPLGetLastErrorType();
8049       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
8050         do_confess( CPLGetLastErrorMsg(), 0 );
8051 
8052 
8053 
8054 
8055 
8056       }
8057 
8058 
8059       /*
8060           Make warnings regular Perl warnings. This duplicates the warning
8061           message if DontUseExceptions() is in effect (it is not by default).
8062           */
8063       if ( eclass == CE_Warning ) {
8064         warn( CPLGetLastErrorMsg(), "%s" );
8065       }
8066 
8067 
8068     }
8069     {
8070       /* %typemap(out) OGRErr */
8071       if ( result != 0 ) {
8072         const char *err = CPLGetLastErrorMsg();
8073         if (err and *err) do_confess(err, 0); /* this is usually better */
8074         do_confess( OGRErrMessages(result), 1 );
8075       }
8076     }
8077 
8078 
8079 
8080     {
8081       /* %typemap(freearg) char **options */
8082       if (arg4) CSLDestroy( arg4 );
8083     }
8084 
8085     XSRETURN(argvi);
8086   fail:
8087 
8088 
8089 
8090     {
8091       /* %typemap(freearg) char **options */
8092       if (arg4) CSLDestroy( arg4 );
8093     }
8094 
8095     SWIG_croak_null();
8096   }
8097 }
8098 
8099 
XS(_wrap_Layer_GetStyleTable)8100 XS(_wrap_Layer_GetStyleTable) {
8101   {
8102     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
8103     void *argp1 = 0 ;
8104     int res1 = 0 ;
8105     int argvi = 0;
8106     OGRStyleTableShadow *result = 0 ;
8107     dXSARGS;
8108 
8109     if ((items < 1) || (items > 1)) {
8110       SWIG_croak("Usage: Layer_GetStyleTable(self);");
8111     }
8112     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
8113     if (!SWIG_IsOK(res1)) {
8114       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_GetStyleTable" "', argument " "1"" of type '" "OGRLayerShadow *""'");
8115     }
8116     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
8117     {
8118       CPLErrorReset();
8119       result = (OGRStyleTableShadow *)OGRLayerShadow_GetStyleTable(arg1);
8120       CPLErr eclass = CPLGetLastErrorType();
8121       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
8122         do_confess( CPLGetLastErrorMsg(), 0 );
8123 
8124 
8125 
8126 
8127 
8128       }
8129 
8130 
8131       /*
8132           Make warnings regular Perl warnings. This duplicates the warning
8133           message if DontUseExceptions() is in effect (it is not by default).
8134           */
8135       if ( eclass == CE_Warning ) {
8136         warn( CPLGetLastErrorMsg(), "%s" );
8137       }
8138 
8139 
8140     }
8141     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRStyleTableShadow, 0 | SWIG_SHADOW); argvi++ ;
8142 
8143     XSRETURN(argvi);
8144   fail:
8145 
8146     SWIG_croak_null();
8147   }
8148 }
8149 
8150 
XS(_wrap_Layer_SetStyleTable)8151 XS(_wrap_Layer_SetStyleTable) {
8152   {
8153     OGRLayerShadow *arg1 = (OGRLayerShadow *) 0 ;
8154     OGRStyleTableShadow *arg2 = (OGRStyleTableShadow *) 0 ;
8155     void *argp1 = 0 ;
8156     int res1 = 0 ;
8157     void *argp2 = 0 ;
8158     int res2 = 0 ;
8159     int argvi = 0;
8160     dXSARGS;
8161 
8162     if ((items < 2) || (items > 2)) {
8163       SWIG_croak("Usage: Layer_SetStyleTable(self,table);");
8164     }
8165     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRLayerShadow, 0 |  0 );
8166     if (!SWIG_IsOK(res1)) {
8167       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Layer_SetStyleTable" "', argument " "1"" of type '" "OGRLayerShadow *""'");
8168     }
8169     arg1 = reinterpret_cast< OGRLayerShadow * >(argp1);
8170     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRStyleTableShadow, 0 |  0 );
8171     if (!SWIG_IsOK(res2)) {
8172       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Layer_SetStyleTable" "', argument " "2"" of type '" "OGRStyleTableShadow *""'");
8173     }
8174     arg2 = reinterpret_cast< OGRStyleTableShadow * >(argp2);
8175     {
8176       CPLErrorReset();
8177       OGRLayerShadow_SetStyleTable(arg1,arg2);
8178       CPLErr eclass = CPLGetLastErrorType();
8179       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
8180         do_confess( CPLGetLastErrorMsg(), 0 );
8181 
8182 
8183 
8184 
8185 
8186       }
8187 
8188 
8189       /*
8190           Make warnings regular Perl warnings. This duplicates the warning
8191           message if DontUseExceptions() is in effect (it is not by default).
8192           */
8193       if ( eclass == CE_Warning ) {
8194         warn( CPLGetLastErrorMsg(), "%s" );
8195       }
8196 
8197 
8198     }
8199     {
8200       /* %typemap(out) void */
8201     }
8202 
8203 
8204     XSRETURN(argvi);
8205   fail:
8206 
8207 
8208     SWIG_croak_null();
8209   }
8210 }
8211 
8212 
XS(_wrap_delete_Feature)8213 XS(_wrap_delete_Feature) {
8214   {
8215     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
8216     void *argp1 = 0 ;
8217     int res1 = 0 ;
8218     int argvi = 0;
8219     dXSARGS;
8220 
8221     if ((items < 1) || (items > 1)) {
8222       SWIG_croak("Usage: delete_Feature(self);");
8223     }
8224     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, SWIG_POINTER_DISOWN |  0 );
8225     if (!SWIG_IsOK(res1)) {
8226       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_Feature" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
8227     }
8228     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
8229     {
8230       CPLErrorReset();
8231       delete_OGRFeatureShadow(arg1);
8232       CPLErr eclass = CPLGetLastErrorType();
8233       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
8234         do_confess( CPLGetLastErrorMsg(), 0 );
8235 
8236 
8237 
8238 
8239 
8240       }
8241 
8242 
8243       /*
8244           Make warnings regular Perl warnings. This duplicates the warning
8245           message if DontUseExceptions() is in effect (it is not by default).
8246           */
8247       if ( eclass == CE_Warning ) {
8248         warn( CPLGetLastErrorMsg(), "%s" );
8249       }
8250 
8251 
8252     }
8253     {
8254       /* %typemap(out) void */
8255     }
8256 
8257     XSRETURN(argvi);
8258   fail:
8259 
8260     SWIG_croak_null();
8261   }
8262 }
8263 
8264 
XS(_wrap_new_Feature)8265 XS(_wrap_new_Feature) {
8266   {
8267     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
8268     void *argp1 = 0 ;
8269     int res1 = 0 ;
8270     int argvi = 0;
8271     OGRFeatureShadow *result = 0 ;
8272     dXSARGS;
8273 
8274     if ((items < 1) || (items > 1)) {
8275       SWIG_croak("Usage: new_Feature(feature_def);");
8276     }
8277     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
8278     if (!SWIG_IsOK(res1)) {
8279       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_Feature" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
8280     }
8281     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
8282     {
8283       if (!arg1) {
8284         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
8285       }
8286     }
8287     {
8288       CPLErrorReset();
8289       result = (OGRFeatureShadow *)new_OGRFeatureShadow(arg1);
8290       CPLErr eclass = CPLGetLastErrorType();
8291       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
8292         do_confess( CPLGetLastErrorMsg(), 0 );
8293 
8294 
8295 
8296 
8297 
8298       }
8299 
8300 
8301       /*
8302           Make warnings regular Perl warnings. This duplicates the warning
8303           message if DontUseExceptions() is in effect (it is not by default).
8304           */
8305       if ( eclass == CE_Warning ) {
8306         warn( CPLGetLastErrorMsg(), "%s" );
8307       }
8308 
8309 
8310     }
8311     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRFeatureShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
8312 
8313     XSRETURN(argvi);
8314   fail:
8315 
8316     SWIG_croak_null();
8317   }
8318 }
8319 
8320 
XS(_wrap_Feature_GetDefnRef)8321 XS(_wrap_Feature_GetDefnRef) {
8322   {
8323     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
8324     void *argp1 = 0 ;
8325     int res1 = 0 ;
8326     int argvi = 0;
8327     OGRFeatureDefnShadow *result = 0 ;
8328     dXSARGS;
8329 
8330     if ((items < 1) || (items > 1)) {
8331       SWIG_croak("Usage: Feature_GetDefnRef(self);");
8332     }
8333     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
8334     if (!SWIG_IsOK(res1)) {
8335       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetDefnRef" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
8336     }
8337     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
8338     {
8339       CPLErrorReset();
8340       result = (OGRFeatureDefnShadow *)OGRFeatureShadow_GetDefnRef(arg1);
8341       CPLErr eclass = CPLGetLastErrorType();
8342       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
8343         do_confess( CPLGetLastErrorMsg(), 0 );
8344 
8345 
8346 
8347 
8348 
8349       }
8350 
8351 
8352       /*
8353           Make warnings regular Perl warnings. This duplicates the warning
8354           message if DontUseExceptions() is in effect (it is not by default).
8355           */
8356       if ( eclass == CE_Warning ) {
8357         warn( CPLGetLastErrorMsg(), "%s" );
8358       }
8359 
8360 
8361     }
8362     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRFeatureDefnShadow, 0 | SWIG_SHADOW); argvi++ ;
8363 
8364     XSRETURN(argvi);
8365   fail:
8366 
8367     SWIG_croak_null();
8368   }
8369 }
8370 
8371 
XS(_wrap_Feature__SetGeometry)8372 XS(_wrap_Feature__SetGeometry) {
8373   {
8374     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
8375     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
8376     void *argp1 = 0 ;
8377     int res1 = 0 ;
8378     void *argp2 = 0 ;
8379     int res2 = 0 ;
8380     int argvi = 0;
8381     OGRErr result;
8382     dXSARGS;
8383 
8384     if ((items < 2) || (items > 2)) {
8385       SWIG_croak("Usage: Feature__SetGeometry(self,geom);");
8386     }
8387     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
8388     if (!SWIG_IsOK(res1)) {
8389       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature__SetGeometry" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
8390     }
8391     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
8392     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
8393     if (!SWIG_IsOK(res2)) {
8394       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Feature__SetGeometry" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
8395     }
8396     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
8397     {
8398       /* %typemap(check) (OGRGeometryShadow *geom) */
8399       if (!arg2)
8400       do_confess(NEED_DEF, 1);
8401     }
8402     {
8403       CPLErrorReset();
8404       result = (OGRErr)OGRFeatureShadow_SetGeometry(arg1,arg2);
8405       CPLErr eclass = CPLGetLastErrorType();
8406       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
8407         do_confess( CPLGetLastErrorMsg(), 0 );
8408 
8409 
8410 
8411 
8412 
8413       }
8414 
8415 
8416       /*
8417           Make warnings regular Perl warnings. This duplicates the warning
8418           message if DontUseExceptions() is in effect (it is not by default).
8419           */
8420       if ( eclass == CE_Warning ) {
8421         warn( CPLGetLastErrorMsg(), "%s" );
8422       }
8423 
8424 
8425     }
8426     {
8427       /* %typemap(out) OGRErr */
8428       if ( result != 0 ) {
8429         const char *err = CPLGetLastErrorMsg();
8430         if (err and *err) do_confess(err, 0); /* this is usually better */
8431         do_confess( OGRErrMessages(result), 1 );
8432       }
8433     }
8434 
8435 
8436     XSRETURN(argvi);
8437   fail:
8438 
8439 
8440     SWIG_croak_null();
8441   }
8442 }
8443 
8444 
XS(_wrap_Feature_SetGeometryDirectly)8445 XS(_wrap_Feature_SetGeometryDirectly) {
8446   {
8447     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
8448     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
8449     void *argp1 = 0 ;
8450     int res1 = 0 ;
8451     int res2 = 0 ;
8452     int argvi = 0;
8453     OGRErr result;
8454     dXSARGS;
8455 
8456     if ((items < 2) || (items > 2)) {
8457       SWIG_croak("Usage: Feature_SetGeometryDirectly(self,geom);");
8458     }
8459     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
8460     if (!SWIG_IsOK(res1)) {
8461       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetGeometryDirectly" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
8462     }
8463     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
8464     res2 = SWIG_ConvertPtr(ST(1), SWIG_as_voidptrptr(&arg2), SWIGTYPE_p_OGRGeometryShadow, SWIG_POINTER_DISOWN |  0 );
8465     if (!SWIG_IsOK(res2)) {
8466       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Feature_SetGeometryDirectly" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
8467     }
8468     {
8469       /* %typemap(check) (OGRGeometryShadow *geom) */
8470       if (!arg2)
8471       do_confess(NEED_DEF, 1);
8472     }
8473     {
8474       CPLErrorReset();
8475       result = (OGRErr)OGRFeatureShadow_SetGeometryDirectly(arg1,arg2);
8476       CPLErr eclass = CPLGetLastErrorType();
8477       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
8478         do_confess( CPLGetLastErrorMsg(), 0 );
8479 
8480 
8481 
8482 
8483 
8484       }
8485 
8486 
8487       /*
8488           Make warnings regular Perl warnings. This duplicates the warning
8489           message if DontUseExceptions() is in effect (it is not by default).
8490           */
8491       if ( eclass == CE_Warning ) {
8492         warn( CPLGetLastErrorMsg(), "%s" );
8493       }
8494 
8495 
8496     }
8497     {
8498       /* %typemap(out) OGRErr */
8499       if ( result != 0 ) {
8500         const char *err = CPLGetLastErrorMsg();
8501         if (err and *err) do_confess(err, 0); /* this is usually better */
8502         do_confess( OGRErrMessages(result), 1 );
8503       }
8504     }
8505 
8506 
8507     XSRETURN(argvi);
8508   fail:
8509 
8510 
8511     SWIG_croak_null();
8512   }
8513 }
8514 
8515 
XS(_wrap_Feature__GetGeometryRef)8516 XS(_wrap_Feature__GetGeometryRef) {
8517   {
8518     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
8519     void *argp1 = 0 ;
8520     int res1 = 0 ;
8521     int argvi = 0;
8522     OGRGeometryShadow *result = 0 ;
8523     dXSARGS;
8524 
8525     if ((items < 1) || (items > 1)) {
8526       SWIG_croak("Usage: Feature__GetGeometryRef(self);");
8527     }
8528     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
8529     if (!SWIG_IsOK(res1)) {
8530       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature__GetGeometryRef" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
8531     }
8532     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
8533     {
8534       CPLErrorReset();
8535       result = (OGRGeometryShadow *)OGRFeatureShadow_GetGeometryRef(arg1);
8536       CPLErr eclass = CPLGetLastErrorType();
8537       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
8538         do_confess( CPLGetLastErrorMsg(), 0 );
8539 
8540 
8541 
8542 
8543 
8544       }
8545 
8546 
8547       /*
8548           Make warnings regular Perl warnings. This duplicates the warning
8549           message if DontUseExceptions() is in effect (it is not by default).
8550           */
8551       if ( eclass == CE_Warning ) {
8552         warn( CPLGetLastErrorMsg(), "%s" );
8553       }
8554 
8555 
8556     }
8557     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, 0 | SWIG_SHADOW); argvi++ ;
8558 
8559     XSRETURN(argvi);
8560   fail:
8561 
8562     SWIG_croak_null();
8563   }
8564 }
8565 
8566 
XS(_wrap_Feature_SetGeomField__SWIG_0)8567 XS(_wrap_Feature_SetGeomField__SWIG_0) {
8568   {
8569     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
8570     int arg2 ;
8571     OGRGeometryShadow *arg3 = (OGRGeometryShadow *) 0 ;
8572     void *argp1 = 0 ;
8573     int res1 = 0 ;
8574     int val2 ;
8575     int ecode2 = 0 ;
8576     void *argp3 = 0 ;
8577     int res3 = 0 ;
8578     int argvi = 0;
8579     OGRErr result;
8580     dXSARGS;
8581 
8582     if ((items < 3) || (items > 3)) {
8583       SWIG_croak("Usage: Feature_SetGeomField(self,iField,geom);");
8584     }
8585     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
8586     if (!SWIG_IsOK(res1)) {
8587       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetGeomField" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
8588     }
8589     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
8590     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
8591     if (!SWIG_IsOK(ecode2)) {
8592       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_SetGeomField" "', argument " "2"" of type '" "int""'");
8593     }
8594     arg2 = static_cast< int >(val2);
8595     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
8596     if (!SWIG_IsOK(res3)) {
8597       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Feature_SetGeomField" "', argument " "3"" of type '" "OGRGeometryShadow *""'");
8598     }
8599     arg3 = reinterpret_cast< OGRGeometryShadow * >(argp3);
8600     {
8601       CPLErrorReset();
8602       result = (OGRErr)OGRFeatureShadow_SetGeomField__SWIG_0(arg1,arg2,arg3);
8603       CPLErr eclass = CPLGetLastErrorType();
8604       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
8605         do_confess( CPLGetLastErrorMsg(), 0 );
8606 
8607 
8608 
8609 
8610 
8611       }
8612 
8613 
8614       /*
8615           Make warnings regular Perl warnings. This duplicates the warning
8616           message if DontUseExceptions() is in effect (it is not by default).
8617           */
8618       if ( eclass == CE_Warning ) {
8619         warn( CPLGetLastErrorMsg(), "%s" );
8620       }
8621 
8622 
8623     }
8624     {
8625       /* %typemap(out) OGRErr */
8626       if ( result != 0 ) {
8627         const char *err = CPLGetLastErrorMsg();
8628         if (err and *err) do_confess(err, 0); /* this is usually better */
8629         do_confess( OGRErrMessages(result), 1 );
8630       }
8631     }
8632 
8633 
8634 
8635     XSRETURN(argvi);
8636   fail:
8637 
8638 
8639 
8640     SWIG_croak_null();
8641   }
8642 }
8643 
8644 
XS(_wrap_Feature_SetGeomField__SWIG_1)8645 XS(_wrap_Feature_SetGeomField__SWIG_1) {
8646   {
8647     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
8648     char *arg2 = (char *) 0 ;
8649     OGRGeometryShadow *arg3 = (OGRGeometryShadow *) 0 ;
8650     void *argp1 = 0 ;
8651     int res1 = 0 ;
8652     U8 *tmpbuf2 = NULL ;
8653     void *argp3 = 0 ;
8654     int res3 = 0 ;
8655     int argvi = 0;
8656     OGRErr result;
8657     dXSARGS;
8658 
8659     if ((items < 3) || (items > 3)) {
8660       SWIG_croak("Usage: Feature_SetGeomField(self,field_name,geom);");
8661     }
8662     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
8663     if (!SWIG_IsOK(res1)) {
8664       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetGeomField" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
8665     }
8666     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
8667     {
8668       /* %typemap(in,numinputs=1) (const char* field_name) */
8669       arg2 = sv_to_utf8_string(ST(1), &tmpbuf2);
8670     }
8671     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
8672     if (!SWIG_IsOK(res3)) {
8673       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Feature_SetGeomField" "', argument " "3"" of type '" "OGRGeometryShadow *""'");
8674     }
8675     arg3 = reinterpret_cast< OGRGeometryShadow * >(argp3);
8676     {
8677       CPLErrorReset();
8678       result = (OGRErr)OGRFeatureShadow_SetGeomField__SWIG_1(arg1,(char const *)arg2,arg3);
8679       CPLErr eclass = CPLGetLastErrorType();
8680       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
8681         do_confess( CPLGetLastErrorMsg(), 0 );
8682 
8683 
8684 
8685 
8686 
8687       }
8688 
8689 
8690       /*
8691           Make warnings regular Perl warnings. This duplicates the warning
8692           message if DontUseExceptions() is in effect (it is not by default).
8693           */
8694       if ( eclass == CE_Warning ) {
8695         warn( CPLGetLastErrorMsg(), "%s" );
8696       }
8697 
8698 
8699     }
8700     {
8701       /* %typemap(out) OGRErr */
8702       if ( result != 0 ) {
8703         const char *err = CPLGetLastErrorMsg();
8704         if (err and *err) do_confess(err, 0); /* this is usually better */
8705         do_confess( OGRErrMessages(result), 1 );
8706       }
8707     }
8708 
8709     {
8710       /* %typemap(freearg) (const char* field_name) */
8711       if (tmpbuf2) Safefree(tmpbuf2);
8712     }
8713 
8714     XSRETURN(argvi);
8715   fail:
8716 
8717     {
8718       /* %typemap(freearg) (const char* field_name) */
8719       if (tmpbuf2) Safefree(tmpbuf2);
8720     }
8721 
8722     SWIG_croak_null();
8723   }
8724 }
8725 
8726 
XS(_wrap_Feature_SetGeomField)8727 XS(_wrap_Feature_SetGeomField) {
8728   dXSARGS;
8729 
8730   {
8731     unsigned long _index = 0;
8732     SWIG_TypeRank _rank = 0;
8733     if (items == 3) {
8734       SWIG_TypeRank _ranki = 0;
8735       SWIG_TypeRank _rankm = 0;
8736       SWIG_TypeRank _pi = 1;
8737       int _v = 0;
8738       {
8739         void *vptr = 0;
8740         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_OGRFeatureShadow, 0);
8741         _v = SWIG_CheckState(res);
8742       }
8743       if (!_v) goto check_1;
8744       _ranki += _v*_pi;
8745       _rankm += _pi;
8746       _pi *= SWIG_MAXCASTRANK;
8747       {
8748         {
8749           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
8750           _v = SWIG_CheckState(res);
8751         }
8752       }
8753       if (!_v) goto check_1;
8754       _ranki += _v*_pi;
8755       _rankm += _pi;
8756       _pi *= SWIG_MAXCASTRANK;
8757       {
8758         void *vptr = 0;
8759         int res = SWIG_ConvertPtr(ST(2), &vptr, SWIGTYPE_p_OGRGeometryShadow, 0);
8760         _v = SWIG_CheckState(res);
8761       }
8762       if (!_v) goto check_1;
8763       _ranki += _v*_pi;
8764       _rankm += _pi;
8765       _pi *= SWIG_MAXCASTRANK;
8766       if (!_index || (_ranki < _rank)) {
8767         _rank = _ranki; _index = 1;
8768         if (_rank == _rankm) goto dispatch;
8769       }
8770     }
8771   check_1:
8772 
8773     if (items == 3) {
8774       SWIG_TypeRank _ranki = 0;
8775       SWIG_TypeRank _rankm = 0;
8776       SWIG_TypeRank _pi = 1;
8777       int _v = 0;
8778       {
8779         void *vptr = 0;
8780         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_OGRFeatureShadow, 0);
8781         _v = SWIG_CheckState(res);
8782       }
8783       if (!_v) goto check_2;
8784       _ranki += _v*_pi;
8785       _rankm += _pi;
8786       _pi *= SWIG_MAXCASTRANK;
8787       {
8788         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
8789         _v = SWIG_CheckState(res);
8790       }
8791       if (!_v) goto check_2;
8792       _ranki += _v*_pi;
8793       _rankm += _pi;
8794       _pi *= SWIG_MAXCASTRANK;
8795       {
8796         void *vptr = 0;
8797         int res = SWIG_ConvertPtr(ST(2), &vptr, SWIGTYPE_p_OGRGeometryShadow, 0);
8798         _v = SWIG_CheckState(res);
8799       }
8800       if (!_v) goto check_2;
8801       _ranki += _v*_pi;
8802       _rankm += _pi;
8803       _pi *= SWIG_MAXCASTRANK;
8804       if (!_index || (_ranki < _rank)) {
8805         _rank = _ranki; _index = 2;
8806         if (_rank == _rankm) goto dispatch;
8807       }
8808     }
8809   check_2:
8810 
8811   dispatch:
8812     switch(_index) {
8813     case 1:
8814       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Feature_SetGeomField__SWIG_0); return;
8815     case 2:
8816       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Feature_SetGeomField__SWIG_1); return;
8817     }
8818   }
8819 
8820   croak("No matching function for overloaded 'Feature_SetGeomField'");
8821   XSRETURN(0);
8822 }
8823 
8824 
XS(_wrap_Feature_SetGeomFieldDirectly__SWIG_0)8825 XS(_wrap_Feature_SetGeomFieldDirectly__SWIG_0) {
8826   {
8827     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
8828     int arg2 ;
8829     OGRGeometryShadow *arg3 = (OGRGeometryShadow *) 0 ;
8830     void *argp1 = 0 ;
8831     int res1 = 0 ;
8832     int val2 ;
8833     int ecode2 = 0 ;
8834     int res3 = 0 ;
8835     int argvi = 0;
8836     OGRErr result;
8837     dXSARGS;
8838 
8839     if ((items < 3) || (items > 3)) {
8840       SWIG_croak("Usage: Feature_SetGeomFieldDirectly(self,iField,geom);");
8841     }
8842     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
8843     if (!SWIG_IsOK(res1)) {
8844       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetGeomFieldDirectly" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
8845     }
8846     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
8847     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
8848     if (!SWIG_IsOK(ecode2)) {
8849       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_SetGeomFieldDirectly" "', argument " "2"" of type '" "int""'");
8850     }
8851     arg2 = static_cast< int >(val2);
8852     res3 = SWIG_ConvertPtr(ST(2), SWIG_as_voidptrptr(&arg3), SWIGTYPE_p_OGRGeometryShadow, SWIG_POINTER_DISOWN |  0 );
8853     if (!SWIG_IsOK(res3)) {
8854       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Feature_SetGeomFieldDirectly" "', argument " "3"" of type '" "OGRGeometryShadow *""'");
8855     }
8856     {
8857       CPLErrorReset();
8858       result = (OGRErr)OGRFeatureShadow_SetGeomFieldDirectly__SWIG_0(arg1,arg2,arg3);
8859       CPLErr eclass = CPLGetLastErrorType();
8860       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
8861         do_confess( CPLGetLastErrorMsg(), 0 );
8862 
8863 
8864 
8865 
8866 
8867       }
8868 
8869 
8870       /*
8871           Make warnings regular Perl warnings. This duplicates the warning
8872           message if DontUseExceptions() is in effect (it is not by default).
8873           */
8874       if ( eclass == CE_Warning ) {
8875         warn( CPLGetLastErrorMsg(), "%s" );
8876       }
8877 
8878 
8879     }
8880     {
8881       /* %typemap(out) OGRErr */
8882       if ( result != 0 ) {
8883         const char *err = CPLGetLastErrorMsg();
8884         if (err and *err) do_confess(err, 0); /* this is usually better */
8885         do_confess( OGRErrMessages(result), 1 );
8886       }
8887     }
8888 
8889 
8890 
8891     XSRETURN(argvi);
8892   fail:
8893 
8894 
8895 
8896     SWIG_croak_null();
8897   }
8898 }
8899 
8900 
XS(_wrap_Feature_SetGeomFieldDirectly__SWIG_1)8901 XS(_wrap_Feature_SetGeomFieldDirectly__SWIG_1) {
8902   {
8903     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
8904     char *arg2 = (char *) 0 ;
8905     OGRGeometryShadow *arg3 = (OGRGeometryShadow *) 0 ;
8906     void *argp1 = 0 ;
8907     int res1 = 0 ;
8908     U8 *tmpbuf2 = NULL ;
8909     int res3 = 0 ;
8910     int argvi = 0;
8911     OGRErr result;
8912     dXSARGS;
8913 
8914     if ((items < 3) || (items > 3)) {
8915       SWIG_croak("Usage: Feature_SetGeomFieldDirectly(self,field_name,geom);");
8916     }
8917     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
8918     if (!SWIG_IsOK(res1)) {
8919       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetGeomFieldDirectly" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
8920     }
8921     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
8922     {
8923       /* %typemap(in,numinputs=1) (const char* field_name) */
8924       arg2 = sv_to_utf8_string(ST(1), &tmpbuf2);
8925     }
8926     res3 = SWIG_ConvertPtr(ST(2), SWIG_as_voidptrptr(&arg3), SWIGTYPE_p_OGRGeometryShadow, SWIG_POINTER_DISOWN |  0 );
8927     if (!SWIG_IsOK(res3)) {
8928       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Feature_SetGeomFieldDirectly" "', argument " "3"" of type '" "OGRGeometryShadow *""'");
8929     }
8930     {
8931       CPLErrorReset();
8932       result = (OGRErr)OGRFeatureShadow_SetGeomFieldDirectly__SWIG_1(arg1,(char const *)arg2,arg3);
8933       CPLErr eclass = CPLGetLastErrorType();
8934       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
8935         do_confess( CPLGetLastErrorMsg(), 0 );
8936 
8937 
8938 
8939 
8940 
8941       }
8942 
8943 
8944       /*
8945           Make warnings regular Perl warnings. This duplicates the warning
8946           message if DontUseExceptions() is in effect (it is not by default).
8947           */
8948       if ( eclass == CE_Warning ) {
8949         warn( CPLGetLastErrorMsg(), "%s" );
8950       }
8951 
8952 
8953     }
8954     {
8955       /* %typemap(out) OGRErr */
8956       if ( result != 0 ) {
8957         const char *err = CPLGetLastErrorMsg();
8958         if (err and *err) do_confess(err, 0); /* this is usually better */
8959         do_confess( OGRErrMessages(result), 1 );
8960       }
8961     }
8962 
8963     {
8964       /* %typemap(freearg) (const char* field_name) */
8965       if (tmpbuf2) Safefree(tmpbuf2);
8966     }
8967 
8968     XSRETURN(argvi);
8969   fail:
8970 
8971     {
8972       /* %typemap(freearg) (const char* field_name) */
8973       if (tmpbuf2) Safefree(tmpbuf2);
8974     }
8975 
8976     SWIG_croak_null();
8977   }
8978 }
8979 
8980 
XS(_wrap_Feature_SetGeomFieldDirectly)8981 XS(_wrap_Feature_SetGeomFieldDirectly) {
8982   dXSARGS;
8983 
8984   {
8985     unsigned long _index = 0;
8986     SWIG_TypeRank _rank = 0;
8987     if (items == 3) {
8988       SWIG_TypeRank _ranki = 0;
8989       SWIG_TypeRank _rankm = 0;
8990       SWIG_TypeRank _pi = 1;
8991       int _v = 0;
8992       {
8993         void *vptr = 0;
8994         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_OGRFeatureShadow, 0);
8995         _v = SWIG_CheckState(res);
8996       }
8997       if (!_v) goto check_1;
8998       _ranki += _v*_pi;
8999       _rankm += _pi;
9000       _pi *= SWIG_MAXCASTRANK;
9001       {
9002         {
9003           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
9004           _v = SWIG_CheckState(res);
9005         }
9006       }
9007       if (!_v) goto check_1;
9008       _ranki += _v*_pi;
9009       _rankm += _pi;
9010       _pi *= SWIG_MAXCASTRANK;
9011       {
9012         void *vptr = 0;
9013         int res = SWIG_ConvertPtr(ST(2), &vptr, SWIGTYPE_p_OGRGeometryShadow, 0);
9014         _v = SWIG_CheckState(res);
9015       }
9016       if (!_v) goto check_1;
9017       _ranki += _v*_pi;
9018       _rankm += _pi;
9019       _pi *= SWIG_MAXCASTRANK;
9020       if (!_index || (_ranki < _rank)) {
9021         _rank = _ranki; _index = 1;
9022         if (_rank == _rankm) goto dispatch;
9023       }
9024     }
9025   check_1:
9026 
9027     if (items == 3) {
9028       SWIG_TypeRank _ranki = 0;
9029       SWIG_TypeRank _rankm = 0;
9030       SWIG_TypeRank _pi = 1;
9031       int _v = 0;
9032       {
9033         void *vptr = 0;
9034         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_OGRFeatureShadow, 0);
9035         _v = SWIG_CheckState(res);
9036       }
9037       if (!_v) goto check_2;
9038       _ranki += _v*_pi;
9039       _rankm += _pi;
9040       _pi *= SWIG_MAXCASTRANK;
9041       {
9042         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
9043         _v = SWIG_CheckState(res);
9044       }
9045       if (!_v) goto check_2;
9046       _ranki += _v*_pi;
9047       _rankm += _pi;
9048       _pi *= SWIG_MAXCASTRANK;
9049       {
9050         void *vptr = 0;
9051         int res = SWIG_ConvertPtr(ST(2), &vptr, SWIGTYPE_p_OGRGeometryShadow, 0);
9052         _v = SWIG_CheckState(res);
9053       }
9054       if (!_v) goto check_2;
9055       _ranki += _v*_pi;
9056       _rankm += _pi;
9057       _pi *= SWIG_MAXCASTRANK;
9058       if (!_index || (_ranki < _rank)) {
9059         _rank = _ranki; _index = 2;
9060         if (_rank == _rankm) goto dispatch;
9061       }
9062     }
9063   check_2:
9064 
9065   dispatch:
9066     switch(_index) {
9067     case 1:
9068       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Feature_SetGeomFieldDirectly__SWIG_0); return;
9069     case 2:
9070       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Feature_SetGeomFieldDirectly__SWIG_1); return;
9071     }
9072   }
9073 
9074   croak("No matching function for overloaded 'Feature_SetGeomFieldDirectly'");
9075   XSRETURN(0);
9076 }
9077 
9078 
XS(_wrap_Feature_GetGeomFieldRef__SWIG_0)9079 XS(_wrap_Feature_GetGeomFieldRef__SWIG_0) {
9080   {
9081     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
9082     int arg2 ;
9083     void *argp1 = 0 ;
9084     int res1 = 0 ;
9085     int val2 ;
9086     int ecode2 = 0 ;
9087     int argvi = 0;
9088     OGRGeometryShadow *result = 0 ;
9089     dXSARGS;
9090 
9091     if ((items < 2) || (items > 2)) {
9092       SWIG_croak("Usage: Feature_GetGeomFieldRef(self,iField);");
9093     }
9094     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
9095     if (!SWIG_IsOK(res1)) {
9096       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetGeomFieldRef" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
9097     }
9098     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
9099     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
9100     if (!SWIG_IsOK(ecode2)) {
9101       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_GetGeomFieldRef" "', argument " "2"" of type '" "int""'");
9102     }
9103     arg2 = static_cast< int >(val2);
9104     {
9105       CPLErrorReset();
9106       result = (OGRGeometryShadow *)OGRFeatureShadow_GetGeomFieldRef__SWIG_0(arg1,arg2);
9107       CPLErr eclass = CPLGetLastErrorType();
9108       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
9109         do_confess( CPLGetLastErrorMsg(), 0 );
9110 
9111 
9112 
9113 
9114 
9115       }
9116 
9117 
9118       /*
9119           Make warnings regular Perl warnings. This duplicates the warning
9120           message if DontUseExceptions() is in effect (it is not by default).
9121           */
9122       if ( eclass == CE_Warning ) {
9123         warn( CPLGetLastErrorMsg(), "%s" );
9124       }
9125 
9126 
9127     }
9128     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, 0 | SWIG_SHADOW); argvi++ ;
9129 
9130 
9131     XSRETURN(argvi);
9132   fail:
9133 
9134 
9135     SWIG_croak_null();
9136   }
9137 }
9138 
9139 
XS(_wrap_Feature_GetGeomFieldRef__SWIG_1)9140 XS(_wrap_Feature_GetGeomFieldRef__SWIG_1) {
9141   {
9142     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
9143     char *arg2 = (char *) 0 ;
9144     void *argp1 = 0 ;
9145     int res1 = 0 ;
9146     U8 *tmpbuf2 = NULL ;
9147     int argvi = 0;
9148     OGRGeometryShadow *result = 0 ;
9149     dXSARGS;
9150 
9151     if ((items < 2) || (items > 2)) {
9152       SWIG_croak("Usage: Feature_GetGeomFieldRef(self,field_name);");
9153     }
9154     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
9155     if (!SWIG_IsOK(res1)) {
9156       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetGeomFieldRef" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
9157     }
9158     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
9159     {
9160       /* %typemap(in,numinputs=1) (const char* field_name) */
9161       arg2 = sv_to_utf8_string(ST(1), &tmpbuf2);
9162     }
9163     {
9164       CPLErrorReset();
9165       result = (OGRGeometryShadow *)OGRFeatureShadow_GetGeomFieldRef__SWIG_1(arg1,(char const *)arg2);
9166       CPLErr eclass = CPLGetLastErrorType();
9167       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
9168         do_confess( CPLGetLastErrorMsg(), 0 );
9169 
9170 
9171 
9172 
9173 
9174       }
9175 
9176 
9177       /*
9178           Make warnings regular Perl warnings. This duplicates the warning
9179           message if DontUseExceptions() is in effect (it is not by default).
9180           */
9181       if ( eclass == CE_Warning ) {
9182         warn( CPLGetLastErrorMsg(), "%s" );
9183       }
9184 
9185 
9186     }
9187     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, 0 | SWIG_SHADOW); argvi++ ;
9188 
9189     {
9190       /* %typemap(freearg) (const char* field_name) */
9191       if (tmpbuf2) Safefree(tmpbuf2);
9192     }
9193     XSRETURN(argvi);
9194   fail:
9195 
9196     {
9197       /* %typemap(freearg) (const char* field_name) */
9198       if (tmpbuf2) Safefree(tmpbuf2);
9199     }
9200     SWIG_croak_null();
9201   }
9202 }
9203 
9204 
XS(_wrap_Feature_GetGeomFieldRef)9205 XS(_wrap_Feature_GetGeomFieldRef) {
9206   dXSARGS;
9207 
9208   {
9209     unsigned long _index = 0;
9210     SWIG_TypeRank _rank = 0;
9211     if (items == 2) {
9212       SWIG_TypeRank _ranki = 0;
9213       SWIG_TypeRank _rankm = 0;
9214       SWIG_TypeRank _pi = 1;
9215       int _v = 0;
9216       {
9217         void *vptr = 0;
9218         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_OGRFeatureShadow, 0);
9219         _v = SWIG_CheckState(res);
9220       }
9221       if (!_v) goto check_1;
9222       _ranki += _v*_pi;
9223       _rankm += _pi;
9224       _pi *= SWIG_MAXCASTRANK;
9225       {
9226         {
9227           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
9228           _v = SWIG_CheckState(res);
9229         }
9230       }
9231       if (!_v) goto check_1;
9232       _ranki += _v*_pi;
9233       _rankm += _pi;
9234       _pi *= SWIG_MAXCASTRANK;
9235       if (!_index || (_ranki < _rank)) {
9236         _rank = _ranki; _index = 1;
9237         if (_rank == _rankm) goto dispatch;
9238       }
9239     }
9240   check_1:
9241 
9242     if (items == 2) {
9243       SWIG_TypeRank _ranki = 0;
9244       SWIG_TypeRank _rankm = 0;
9245       SWIG_TypeRank _pi = 1;
9246       int _v = 0;
9247       {
9248         void *vptr = 0;
9249         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_OGRFeatureShadow, 0);
9250         _v = SWIG_CheckState(res);
9251       }
9252       if (!_v) goto check_2;
9253       _ranki += _v*_pi;
9254       _rankm += _pi;
9255       _pi *= SWIG_MAXCASTRANK;
9256       {
9257         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
9258         _v = SWIG_CheckState(res);
9259       }
9260       if (!_v) goto check_2;
9261       _ranki += _v*_pi;
9262       _rankm += _pi;
9263       _pi *= SWIG_MAXCASTRANK;
9264       if (!_index || (_ranki < _rank)) {
9265         _rank = _ranki; _index = 2;
9266         if (_rank == _rankm) goto dispatch;
9267       }
9268     }
9269   check_2:
9270 
9271   dispatch:
9272     switch(_index) {
9273     case 1:
9274       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Feature_GetGeomFieldRef__SWIG_0); return;
9275     case 2:
9276       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Feature_GetGeomFieldRef__SWIG_1); return;
9277     }
9278   }
9279 
9280   croak("No matching function for overloaded 'Feature_GetGeomFieldRef'");
9281   XSRETURN(0);
9282 }
9283 
9284 
XS(_wrap_Feature_Clone)9285 XS(_wrap_Feature_Clone) {
9286   {
9287     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
9288     void *argp1 = 0 ;
9289     int res1 = 0 ;
9290     int argvi = 0;
9291     OGRFeatureShadow *result = 0 ;
9292     dXSARGS;
9293 
9294     if ((items < 1) || (items > 1)) {
9295       SWIG_croak("Usage: Feature_Clone(self);");
9296     }
9297     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
9298     if (!SWIG_IsOK(res1)) {
9299       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_Clone" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
9300     }
9301     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
9302     {
9303       CPLErrorReset();
9304       result = (OGRFeatureShadow *)OGRFeatureShadow_Clone(arg1);
9305       CPLErr eclass = CPLGetLastErrorType();
9306       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
9307         do_confess( CPLGetLastErrorMsg(), 0 );
9308 
9309 
9310 
9311 
9312 
9313       }
9314 
9315 
9316       /*
9317           Make warnings regular Perl warnings. This duplicates the warning
9318           message if DontUseExceptions() is in effect (it is not by default).
9319           */
9320       if ( eclass == CE_Warning ) {
9321         warn( CPLGetLastErrorMsg(), "%s" );
9322       }
9323 
9324 
9325     }
9326     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRFeatureShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
9327 
9328     XSRETURN(argvi);
9329   fail:
9330 
9331     SWIG_croak_null();
9332   }
9333 }
9334 
9335 
XS(_wrap_Feature_Equal)9336 XS(_wrap_Feature_Equal) {
9337   {
9338     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
9339     OGRFeatureShadow *arg2 = (OGRFeatureShadow *) 0 ;
9340     void *argp1 = 0 ;
9341     int res1 = 0 ;
9342     void *argp2 = 0 ;
9343     int res2 = 0 ;
9344     int argvi = 0;
9345     bool result;
9346     dXSARGS;
9347 
9348     if ((items < 2) || (items > 2)) {
9349       SWIG_croak("Usage: Feature_Equal(self,feature);");
9350     }
9351     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
9352     if (!SWIG_IsOK(res1)) {
9353       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_Equal" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
9354     }
9355     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
9356     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
9357     if (!SWIG_IsOK(res2)) {
9358       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Feature_Equal" "', argument " "2"" of type '" "OGRFeatureShadow *""'");
9359     }
9360     arg2 = reinterpret_cast< OGRFeatureShadow * >(argp2);
9361     {
9362       if (!arg2) {
9363         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
9364       }
9365     }
9366     {
9367       CPLErrorReset();
9368       result = (bool)OGRFeatureShadow_Equal(arg1,arg2);
9369       CPLErr eclass = CPLGetLastErrorType();
9370       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
9371         do_confess( CPLGetLastErrorMsg(), 0 );
9372 
9373 
9374 
9375 
9376 
9377       }
9378 
9379 
9380       /*
9381           Make warnings regular Perl warnings. This duplicates the warning
9382           message if DontUseExceptions() is in effect (it is not by default).
9383           */
9384       if ( eclass == CE_Warning ) {
9385         warn( CPLGetLastErrorMsg(), "%s" );
9386       }
9387 
9388 
9389     }
9390     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
9391 
9392 
9393     XSRETURN(argvi);
9394   fail:
9395 
9396 
9397     SWIG_croak_null();
9398   }
9399 }
9400 
9401 
XS(_wrap_Feature_GetFieldCount)9402 XS(_wrap_Feature_GetFieldCount) {
9403   {
9404     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
9405     void *argp1 = 0 ;
9406     int res1 = 0 ;
9407     int argvi = 0;
9408     int result;
9409     dXSARGS;
9410 
9411     if ((items < 1) || (items > 1)) {
9412       SWIG_croak("Usage: Feature_GetFieldCount(self);");
9413     }
9414     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
9415     if (!SWIG_IsOK(res1)) {
9416       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetFieldCount" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
9417     }
9418     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
9419     {
9420       CPLErrorReset();
9421       result = (int)OGRFeatureShadow_GetFieldCount(arg1);
9422       CPLErr eclass = CPLGetLastErrorType();
9423       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
9424         do_confess( CPLGetLastErrorMsg(), 0 );
9425 
9426 
9427 
9428 
9429 
9430       }
9431 
9432 
9433       /*
9434           Make warnings regular Perl warnings. This duplicates the warning
9435           message if DontUseExceptions() is in effect (it is not by default).
9436           */
9437       if ( eclass == CE_Warning ) {
9438         warn( CPLGetLastErrorMsg(), "%s" );
9439       }
9440 
9441 
9442     }
9443     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
9444 
9445     XSRETURN(argvi);
9446   fail:
9447 
9448     SWIG_croak_null();
9449   }
9450 }
9451 
9452 
XS(_wrap_Feature_GetFieldDefnRef)9453 XS(_wrap_Feature_GetFieldDefnRef) {
9454   {
9455     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
9456     int arg2 ;
9457     void *argp1 = 0 ;
9458     int res1 = 0 ;
9459     int val2 ;
9460     int ecode2 = 0 ;
9461     int argvi = 0;
9462     OGRFieldDefnShadow *result = 0 ;
9463     dXSARGS;
9464 
9465     if ((items < 2) || (items > 2)) {
9466       SWIG_croak("Usage: Feature_GetFieldDefnRef(self,id);");
9467     }
9468     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
9469     if (!SWIG_IsOK(res1)) {
9470       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetFieldDefnRef" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
9471     }
9472     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
9473     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
9474     if (!SWIG_IsOK(ecode2)) {
9475       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_GetFieldDefnRef" "', argument " "2"" of type '" "int""'");
9476     }
9477     arg2 = static_cast< int >(val2);
9478     {
9479       CPLErrorReset();
9480       result = (OGRFieldDefnShadow *)OGRFeatureShadow_GetFieldDefnRef(arg1,arg2);
9481       CPLErr eclass = CPLGetLastErrorType();
9482       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
9483         do_confess( CPLGetLastErrorMsg(), 0 );
9484 
9485 
9486 
9487 
9488 
9489       }
9490 
9491 
9492       /*
9493           Make warnings regular Perl warnings. This duplicates the warning
9494           message if DontUseExceptions() is in effect (it is not by default).
9495           */
9496       if ( eclass == CE_Warning ) {
9497         warn( CPLGetLastErrorMsg(), "%s" );
9498       }
9499 
9500 
9501     }
9502     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRFieldDefnShadow, 0 | SWIG_SHADOW); argvi++ ;
9503 
9504 
9505     XSRETURN(argvi);
9506   fail:
9507 
9508 
9509     SWIG_croak_null();
9510   }
9511 }
9512 
9513 
XS(_wrap_Feature_GetGeomFieldCount)9514 XS(_wrap_Feature_GetGeomFieldCount) {
9515   {
9516     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
9517     void *argp1 = 0 ;
9518     int res1 = 0 ;
9519     int argvi = 0;
9520     int result;
9521     dXSARGS;
9522 
9523     if ((items < 1) || (items > 1)) {
9524       SWIG_croak("Usage: Feature_GetGeomFieldCount(self);");
9525     }
9526     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
9527     if (!SWIG_IsOK(res1)) {
9528       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetGeomFieldCount" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
9529     }
9530     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
9531     {
9532       CPLErrorReset();
9533       result = (int)OGRFeatureShadow_GetGeomFieldCount(arg1);
9534       CPLErr eclass = CPLGetLastErrorType();
9535       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
9536         do_confess( CPLGetLastErrorMsg(), 0 );
9537 
9538 
9539 
9540 
9541 
9542       }
9543 
9544 
9545       /*
9546           Make warnings regular Perl warnings. This duplicates the warning
9547           message if DontUseExceptions() is in effect (it is not by default).
9548           */
9549       if ( eclass == CE_Warning ) {
9550         warn( CPLGetLastErrorMsg(), "%s" );
9551       }
9552 
9553 
9554     }
9555     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
9556 
9557     XSRETURN(argvi);
9558   fail:
9559 
9560     SWIG_croak_null();
9561   }
9562 }
9563 
9564 
XS(_wrap_Feature_GetGeomFieldDefnRef)9565 XS(_wrap_Feature_GetGeomFieldDefnRef) {
9566   {
9567     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
9568     int arg2 ;
9569     void *argp1 = 0 ;
9570     int res1 = 0 ;
9571     int val2 ;
9572     int ecode2 = 0 ;
9573     int argvi = 0;
9574     OGRGeomFieldDefnShadow *result = 0 ;
9575     dXSARGS;
9576 
9577     if ((items < 2) || (items > 2)) {
9578       SWIG_croak("Usage: Feature_GetGeomFieldDefnRef(self,id);");
9579     }
9580     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
9581     if (!SWIG_IsOK(res1)) {
9582       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetGeomFieldDefnRef" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
9583     }
9584     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
9585     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
9586     if (!SWIG_IsOK(ecode2)) {
9587       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_GetGeomFieldDefnRef" "', argument " "2"" of type '" "int""'");
9588     }
9589     arg2 = static_cast< int >(val2);
9590     {
9591       CPLErrorReset();
9592       result = (OGRGeomFieldDefnShadow *)OGRFeatureShadow_GetGeomFieldDefnRef(arg1,arg2);
9593       CPLErr eclass = CPLGetLastErrorType();
9594       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
9595         do_confess( CPLGetLastErrorMsg(), 0 );
9596 
9597 
9598 
9599 
9600 
9601       }
9602 
9603 
9604       /*
9605           Make warnings regular Perl warnings. This duplicates the warning
9606           message if DontUseExceptions() is in effect (it is not by default).
9607           */
9608       if ( eclass == CE_Warning ) {
9609         warn( CPLGetLastErrorMsg(), "%s" );
9610       }
9611 
9612 
9613     }
9614     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeomFieldDefnShadow, 0 | SWIG_SHADOW); argvi++ ;
9615 
9616 
9617     XSRETURN(argvi);
9618   fail:
9619 
9620 
9621     SWIG_croak_null();
9622   }
9623 }
9624 
9625 
XS(_wrap_Feature_GetFieldAsString)9626 XS(_wrap_Feature_GetFieldAsString) {
9627   {
9628     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
9629     int arg2 ;
9630     void *argp1 = 0 ;
9631     int res1 = 0 ;
9632     int val2 ;
9633     int ecode2 = 0 ;
9634     int argvi = 0;
9635     char *result = 0 ;
9636     dXSARGS;
9637 
9638     if ((items < 2) || (items > 2)) {
9639       SWIG_croak("Usage: Feature_GetFieldAsString(self,id);");
9640     }
9641     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
9642     if (!SWIG_IsOK(res1)) {
9643       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetFieldAsString" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
9644     }
9645     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
9646     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
9647     if (!SWIG_IsOK(ecode2)) {
9648       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_GetFieldAsString" "', argument " "2"" of type '" "int""'");
9649     }
9650     arg2 = static_cast< int >(val2);
9651     {
9652       CPLErrorReset();
9653       result = (char *)OGRFeatureShadow_GetFieldAsString(arg1,arg2);
9654       CPLErr eclass = CPLGetLastErrorType();
9655       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
9656         do_confess( CPLGetLastErrorMsg(), 0 );
9657 
9658 
9659 
9660 
9661 
9662       }
9663 
9664 
9665       /*
9666           Make warnings regular Perl warnings. This duplicates the warning
9667           message if DontUseExceptions() is in effect (it is not by default).
9668           */
9669       if ( eclass == CE_Warning ) {
9670         warn( CPLGetLastErrorMsg(), "%s" );
9671       }
9672 
9673 
9674     }
9675     {
9676       /* %typemap(out) const char * */
9677       ST(argvi) = newSVpv(result, 0);
9678       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
9679       sv_2mortal(ST(argvi));
9680       argvi++;
9681     }
9682 
9683 
9684     XSRETURN(argvi);
9685   fail:
9686 
9687 
9688     SWIG_croak_null();
9689   }
9690 }
9691 
9692 
XS(_wrap_Feature_GetFieldAsInteger)9693 XS(_wrap_Feature_GetFieldAsInteger) {
9694   {
9695     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
9696     int arg2 ;
9697     void *argp1 = 0 ;
9698     int res1 = 0 ;
9699     int val2 ;
9700     int ecode2 = 0 ;
9701     int argvi = 0;
9702     int result;
9703     dXSARGS;
9704 
9705     if ((items < 2) || (items > 2)) {
9706       SWIG_croak("Usage: Feature_GetFieldAsInteger(self,id);");
9707     }
9708     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
9709     if (!SWIG_IsOK(res1)) {
9710       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetFieldAsInteger" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
9711     }
9712     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
9713     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
9714     if (!SWIG_IsOK(ecode2)) {
9715       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_GetFieldAsInteger" "', argument " "2"" of type '" "int""'");
9716     }
9717     arg2 = static_cast< int >(val2);
9718     {
9719       CPLErrorReset();
9720       result = (int)OGRFeatureShadow_GetFieldAsInteger(arg1,arg2);
9721       CPLErr eclass = CPLGetLastErrorType();
9722       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
9723         do_confess( CPLGetLastErrorMsg(), 0 );
9724 
9725 
9726 
9727 
9728 
9729       }
9730 
9731 
9732       /*
9733           Make warnings regular Perl warnings. This duplicates the warning
9734           message if DontUseExceptions() is in effect (it is not by default).
9735           */
9736       if ( eclass == CE_Warning ) {
9737         warn( CPLGetLastErrorMsg(), "%s" );
9738       }
9739 
9740 
9741     }
9742     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
9743 
9744 
9745     XSRETURN(argvi);
9746   fail:
9747 
9748 
9749     SWIG_croak_null();
9750   }
9751 }
9752 
9753 
XS(_wrap_Feature_GetFieldAsInteger64)9754 XS(_wrap_Feature_GetFieldAsInteger64) {
9755   {
9756     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
9757     int arg2 ;
9758     void *argp1 = 0 ;
9759     int res1 = 0 ;
9760     int val2 ;
9761     int ecode2 = 0 ;
9762     int argvi = 0;
9763     GIntBig result;
9764     dXSARGS;
9765 
9766     if ((items < 2) || (items > 2)) {
9767       SWIG_croak("Usage: Feature_GetFieldAsInteger64(self,id);");
9768     }
9769     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
9770     if (!SWIG_IsOK(res1)) {
9771       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetFieldAsInteger64" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
9772     }
9773     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
9774     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
9775     if (!SWIG_IsOK(ecode2)) {
9776       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_GetFieldAsInteger64" "', argument " "2"" of type '" "int""'");
9777     }
9778     arg2 = static_cast< int >(val2);
9779     {
9780       CPLErrorReset();
9781       result = OGRFeatureShadow_GetFieldAsInteger64(arg1,arg2);
9782       CPLErr eclass = CPLGetLastErrorType();
9783       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
9784         do_confess( CPLGetLastErrorMsg(), 0 );
9785 
9786 
9787 
9788 
9789 
9790       }
9791 
9792 
9793       /*
9794           Make warnings regular Perl warnings. This duplicates the warning
9795           message if DontUseExceptions() is in effect (it is not by default).
9796           */
9797       if ( eclass == CE_Warning ) {
9798         warn( CPLGetLastErrorMsg(), "%s" );
9799       }
9800 
9801 
9802     }
9803     {
9804       char temp[256];
9805       sprintf(temp, "" CPL_FRMT_GIB "", result);
9806       ST(argvi) = sv_2mortal(newSVpv(temp, 0));
9807       argvi++;
9808     }
9809 
9810 
9811     XSRETURN(argvi);
9812   fail:
9813 
9814 
9815     SWIG_croak_null();
9816   }
9817 }
9818 
9819 
XS(_wrap_Feature_GetFieldAsDouble)9820 XS(_wrap_Feature_GetFieldAsDouble) {
9821   {
9822     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
9823     int arg2 ;
9824     void *argp1 = 0 ;
9825     int res1 = 0 ;
9826     int val2 ;
9827     int ecode2 = 0 ;
9828     int argvi = 0;
9829     double result;
9830     dXSARGS;
9831 
9832     if ((items < 2) || (items > 2)) {
9833       SWIG_croak("Usage: Feature_GetFieldAsDouble(self,id);");
9834     }
9835     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
9836     if (!SWIG_IsOK(res1)) {
9837       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetFieldAsDouble" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
9838     }
9839     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
9840     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
9841     if (!SWIG_IsOK(ecode2)) {
9842       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_GetFieldAsDouble" "', argument " "2"" of type '" "int""'");
9843     }
9844     arg2 = static_cast< int >(val2);
9845     {
9846       CPLErrorReset();
9847       result = (double)OGRFeatureShadow_GetFieldAsDouble(arg1,arg2);
9848       CPLErr eclass = CPLGetLastErrorType();
9849       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
9850         do_confess( CPLGetLastErrorMsg(), 0 );
9851 
9852 
9853 
9854 
9855 
9856       }
9857 
9858 
9859       /*
9860           Make warnings regular Perl warnings. This duplicates the warning
9861           message if DontUseExceptions() is in effect (it is not by default).
9862           */
9863       if ( eclass == CE_Warning ) {
9864         warn( CPLGetLastErrorMsg(), "%s" );
9865       }
9866 
9867 
9868     }
9869     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
9870 
9871 
9872     XSRETURN(argvi);
9873   fail:
9874 
9875 
9876     SWIG_croak_null();
9877   }
9878 }
9879 
9880 
XS(_wrap_Feature_GetFieldAsDateTime)9881 XS(_wrap_Feature_GetFieldAsDateTime) {
9882   {
9883     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
9884     int arg2 ;
9885     int *arg3 = (int *) 0 ;
9886     int *arg4 = (int *) 0 ;
9887     int *arg5 = (int *) 0 ;
9888     int *arg6 = (int *) 0 ;
9889     int *arg7 = (int *) 0 ;
9890     float *arg8 = (float *) 0 ;
9891     int *arg9 = (int *) 0 ;
9892     void *argp1 = 0 ;
9893     int res1 = 0 ;
9894     int val2 ;
9895     int ecode2 = 0 ;
9896     int temp3 ;
9897     int res3 = SWIG_TMPOBJ ;
9898     int temp4 ;
9899     int res4 = SWIG_TMPOBJ ;
9900     int temp5 ;
9901     int res5 = SWIG_TMPOBJ ;
9902     int temp6 ;
9903     int res6 = SWIG_TMPOBJ ;
9904     int temp7 ;
9905     int res7 = SWIG_TMPOBJ ;
9906     float temp8 ;
9907     int res8 = SWIG_TMPOBJ ;
9908     int temp9 ;
9909     int res9 = SWIG_TMPOBJ ;
9910     int argvi = 0;
9911     dXSARGS;
9912 
9913     arg3 = &temp3;
9914     arg4 = &temp4;
9915     arg5 = &temp5;
9916     arg6 = &temp6;
9917     arg7 = &temp7;
9918     arg8 = &temp8;
9919     arg9 = &temp9;
9920     if ((items < 2) || (items > 2)) {
9921       SWIG_croak("Usage: Feature_GetFieldAsDateTime(self,id);");
9922     }
9923     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
9924     if (!SWIG_IsOK(res1)) {
9925       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetFieldAsDateTime" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
9926     }
9927     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
9928     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
9929     if (!SWIG_IsOK(ecode2)) {
9930       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_GetFieldAsDateTime" "', argument " "2"" of type '" "int""'");
9931     }
9932     arg2 = static_cast< int >(val2);
9933     {
9934       CPLErrorReset();
9935       OGRFeatureShadow_GetFieldAsDateTime(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9);
9936       CPLErr eclass = CPLGetLastErrorType();
9937       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
9938         do_confess( CPLGetLastErrorMsg(), 0 );
9939 
9940 
9941 
9942 
9943 
9944       }
9945 
9946 
9947       /*
9948           Make warnings regular Perl warnings. This duplicates the warning
9949           message if DontUseExceptions() is in effect (it is not by default).
9950           */
9951       if ( eclass == CE_Warning ) {
9952         warn( CPLGetLastErrorMsg(), "%s" );
9953       }
9954 
9955 
9956     }
9957     {
9958       /* %typemap(out) void */
9959     }
9960     if (SWIG_IsTmpObj(res3)) {
9961       if (argvi >= items) EXTEND(sp,1);  ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1((*arg3)); argvi++  ;
9962     } else {
9963       int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0) : 0;
9964       if (argvi >= items) EXTEND(sp,1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_int, new_flags); argvi++  ;
9965     }
9966     if (SWIG_IsTmpObj(res4)) {
9967       if (argvi >= items) EXTEND(sp,1);  ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1((*arg4)); argvi++  ;
9968     } else {
9969       int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0) : 0;
9970       if (argvi >= items) EXTEND(sp,1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_int, new_flags); argvi++  ;
9971     }
9972     if (SWIG_IsTmpObj(res5)) {
9973       if (argvi >= items) EXTEND(sp,1);  ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1((*arg5)); argvi++  ;
9974     } else {
9975       int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0) : 0;
9976       if (argvi >= items) EXTEND(sp,1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_int, new_flags); argvi++  ;
9977     }
9978     if (SWIG_IsTmpObj(res6)) {
9979       if (argvi >= items) EXTEND(sp,1);  ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1((*arg6)); argvi++  ;
9980     } else {
9981       int new_flags = SWIG_IsNewObj(res6) ? (SWIG_POINTER_OWN | 0) : 0;
9982       if (argvi >= items) EXTEND(sp,1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg6), SWIGTYPE_p_int, new_flags); argvi++  ;
9983     }
9984     if (SWIG_IsTmpObj(res7)) {
9985       if (argvi >= items) EXTEND(sp,1);  ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1((*arg7)); argvi++  ;
9986     } else {
9987       int new_flags = SWIG_IsNewObj(res7) ? (SWIG_POINTER_OWN | 0) : 0;
9988       if (argvi >= items) EXTEND(sp,1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg7), SWIGTYPE_p_int, new_flags); argvi++  ;
9989     }
9990     if (SWIG_IsTmpObj(res8)) {
9991       if (argvi >= items) EXTEND(sp,1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg8)); argvi++  ;
9992     } else {
9993       int new_flags = SWIG_IsNewObj(res8) ? (SWIG_POINTER_OWN | 0) : 0;
9994       if (argvi >= items) EXTEND(sp,1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg8), SWIGTYPE_p_float, new_flags); argvi++  ;
9995     }
9996     if (SWIG_IsTmpObj(res9)) {
9997       if (argvi >= items) EXTEND(sp,1);  ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1((*arg9)); argvi++  ;
9998     } else {
9999       int new_flags = SWIG_IsNewObj(res9) ? (SWIG_POINTER_OWN | 0) : 0;
10000       if (argvi >= items) EXTEND(sp,1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg9), SWIGTYPE_p_int, new_flags); argvi++  ;
10001     }
10002 
10003 
10004 
10005 
10006 
10007 
10008 
10009 
10010 
10011     XSRETURN(argvi);
10012   fail:
10013 
10014 
10015 
10016 
10017 
10018 
10019 
10020 
10021 
10022     SWIG_croak_null();
10023   }
10024 }
10025 
10026 
XS(_wrap_Feature_GetFieldAsIntegerList)10027 XS(_wrap_Feature_GetFieldAsIntegerList) {
10028   {
10029     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
10030     int arg2 ;
10031     int *arg3 = (int *) 0 ;
10032     int **arg4 = (int **) 0 ;
10033     void *argp1 = 0 ;
10034     int res1 = 0 ;
10035     int val2 ;
10036     int ecode2 = 0 ;
10037     int nLen3 ;
10038     int *pList3 ;
10039     int argvi = 0;
10040     dXSARGS;
10041 
10042     {
10043       /* %typemap(in,numinputs=0) (int *nLen3, const int **pList3) */
10044       arg3 = &nLen3;
10045       arg4 = &pList3;
10046     }
10047     if ((items < 2) || (items > 2)) {
10048       SWIG_croak("Usage: Feature_GetFieldAsIntegerList(self,id,pList);");
10049     }
10050     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
10051     if (!SWIG_IsOK(res1)) {
10052       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetFieldAsIntegerList" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
10053     }
10054     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
10055     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10056     if (!SWIG_IsOK(ecode2)) {
10057       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_GetFieldAsIntegerList" "', argument " "2"" of type '" "int""'");
10058     }
10059     arg2 = static_cast< int >(val2);
10060     {
10061       CPLErrorReset();
10062       OGRFeatureShadow_GetFieldAsIntegerList(arg1,arg2,arg3,(int const **)arg4);
10063       CPLErr eclass = CPLGetLastErrorType();
10064       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
10065         do_confess( CPLGetLastErrorMsg(), 0 );
10066 
10067 
10068 
10069 
10070 
10071       }
10072 
10073 
10074       /*
10075           Make warnings regular Perl warnings. This duplicates the warning
10076           message if DontUseExceptions() is in effect (it is not by default).
10077           */
10078       if ( eclass == CE_Warning ) {
10079         warn( CPLGetLastErrorMsg(), "%s" );
10080       }
10081 
10082 
10083     }
10084     {
10085       /* %typemap(out) void */
10086     }
10087     {
10088       /* %typemap(argout) (int *nLen, const int **pList) */
10089       ST(argvi) = CreateArrayFromIntArray( *(arg4), *(arg3) );
10090       argvi++;
10091     }
10092 
10093 
10094     XSRETURN(argvi);
10095   fail:
10096 
10097 
10098     SWIG_croak_null();
10099   }
10100 }
10101 
10102 
XS(_wrap_Feature_GetFieldAsInteger64List)10103 XS(_wrap_Feature_GetFieldAsInteger64List) {
10104   {
10105     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
10106     int arg2 ;
10107     int *arg3 = (int *) 0 ;
10108     GIntBig **arg4 = (GIntBig **) 0 ;
10109     void *argp1 = 0 ;
10110     int res1 = 0 ;
10111     int val2 ;
10112     int ecode2 = 0 ;
10113     int nLen3 ;
10114     GIntBig *pList3 ;
10115     int argvi = 0;
10116     dXSARGS;
10117 
10118     {
10119       /* %typemap(in,numinputs=0) (int *nLen3, const GIntBig **pList3) */
10120       arg3 = &nLen3;
10121       arg4 = &pList3;
10122     }
10123     if ((items < 2) || (items > 2)) {
10124       SWIG_croak("Usage: Feature_GetFieldAsInteger64List(self,id,pList);");
10125     }
10126     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
10127     if (!SWIG_IsOK(res1)) {
10128       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetFieldAsInteger64List" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
10129     }
10130     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
10131     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10132     if (!SWIG_IsOK(ecode2)) {
10133       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_GetFieldAsInteger64List" "', argument " "2"" of type '" "int""'");
10134     }
10135     arg2 = static_cast< int >(val2);
10136     {
10137       CPLErrorReset();
10138       OGRFeatureShadow_GetFieldAsInteger64List(arg1,arg2,arg3,(GIntBig const **)arg4);
10139       CPLErr eclass = CPLGetLastErrorType();
10140       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
10141         do_confess( CPLGetLastErrorMsg(), 0 );
10142 
10143 
10144 
10145 
10146 
10147       }
10148 
10149 
10150       /*
10151           Make warnings regular Perl warnings. This duplicates the warning
10152           message if DontUseExceptions() is in effect (it is not by default).
10153           */
10154       if ( eclass == CE_Warning ) {
10155         warn( CPLGetLastErrorMsg(), "%s" );
10156       }
10157 
10158 
10159     }
10160     {
10161       /* %typemap(out) void */
10162     }
10163     {
10164       /* %typemap(argout) (int *nLen, const GIntBig **pList) */
10165       ST(argvi) = CreateArrayFromGIntBigArray( *(arg4), *(arg3) );
10166       argvi++;
10167     }
10168 
10169 
10170     XSRETURN(argvi);
10171   fail:
10172 
10173 
10174     SWIG_croak_null();
10175   }
10176 }
10177 
10178 
XS(_wrap_Feature_GetFieldAsDoubleList)10179 XS(_wrap_Feature_GetFieldAsDoubleList) {
10180   {
10181     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
10182     int arg2 ;
10183     int *arg3 = (int *) 0 ;
10184     double **arg4 = (double **) 0 ;
10185     void *argp1 = 0 ;
10186     int res1 = 0 ;
10187     int val2 ;
10188     int ecode2 = 0 ;
10189     int nLen3 ;
10190     double *pList3 ;
10191     int argvi = 0;
10192     dXSARGS;
10193 
10194     {
10195       /* %typemap(in,numinputs=0) (int *nLen3, const double **pList3) */
10196       arg3 = &nLen3;
10197       arg4 = &pList3;
10198     }
10199     if ((items < 2) || (items > 2)) {
10200       SWIG_croak("Usage: Feature_GetFieldAsDoubleList(self,id,pList);");
10201     }
10202     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
10203     if (!SWIG_IsOK(res1)) {
10204       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetFieldAsDoubleList" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
10205     }
10206     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
10207     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10208     if (!SWIG_IsOK(ecode2)) {
10209       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_GetFieldAsDoubleList" "', argument " "2"" of type '" "int""'");
10210     }
10211     arg2 = static_cast< int >(val2);
10212     {
10213       CPLErrorReset();
10214       OGRFeatureShadow_GetFieldAsDoubleList(arg1,arg2,arg3,(double const **)arg4);
10215       CPLErr eclass = CPLGetLastErrorType();
10216       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
10217         do_confess( CPLGetLastErrorMsg(), 0 );
10218 
10219 
10220 
10221 
10222 
10223       }
10224 
10225 
10226       /*
10227           Make warnings regular Perl warnings. This duplicates the warning
10228           message if DontUseExceptions() is in effect (it is not by default).
10229           */
10230       if ( eclass == CE_Warning ) {
10231         warn( CPLGetLastErrorMsg(), "%s" );
10232       }
10233 
10234 
10235     }
10236     {
10237       /* %typemap(out) void */
10238     }
10239     {
10240       /* %typemap(argout) (int *nLen, const double **pList) */
10241       ST(argvi) = CreateArrayFromDoubleArray( *(arg4), *(arg3) );
10242       argvi++;
10243     }
10244 
10245 
10246     XSRETURN(argvi);
10247   fail:
10248 
10249 
10250     SWIG_croak_null();
10251   }
10252 }
10253 
10254 
XS(_wrap_Feature_GetFieldAsStringList)10255 XS(_wrap_Feature_GetFieldAsStringList) {
10256   {
10257     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
10258     int arg2 ;
10259     char ***arg3 = (char ***) 0 ;
10260     void *argp1 = 0 ;
10261     int res1 = 0 ;
10262     int val2 ;
10263     int ecode2 = 0 ;
10264     char **pList3 ;
10265     int argvi = 0;
10266     dXSARGS;
10267 
10268     {
10269       /* %typemap(in,numinputs=0) (char ***pList3) */
10270       arg3 = &pList3;
10271     }
10272     if ((items < 2) || (items > 2)) {
10273       SWIG_croak("Usage: Feature_GetFieldAsStringList(self,id);");
10274     }
10275     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
10276     if (!SWIG_IsOK(res1)) {
10277       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetFieldAsStringList" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
10278     }
10279     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
10280     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10281     if (!SWIG_IsOK(ecode2)) {
10282       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_GetFieldAsStringList" "', argument " "2"" of type '" "int""'");
10283     }
10284     arg2 = static_cast< int >(val2);
10285     {
10286       CPLErrorReset();
10287       OGRFeatureShadow_GetFieldAsStringList(arg1,arg2,arg3);
10288       CPLErr eclass = CPLGetLastErrorType();
10289       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
10290         do_confess( CPLGetLastErrorMsg(), 0 );
10291 
10292 
10293 
10294 
10295 
10296       }
10297 
10298 
10299       /*
10300           Make warnings regular Perl warnings. This duplicates the warning
10301           message if DontUseExceptions() is in effect (it is not by default).
10302           */
10303       if ( eclass == CE_Warning ) {
10304         warn( CPLGetLastErrorMsg(), "%s" );
10305       }
10306 
10307 
10308     }
10309     {
10310       /* %typemap(out) void */
10311     }
10312     {
10313       /* %typemap(argout) (char ***pList) */
10314       ST(argvi) = CreateArrayFromStringArray( *(arg3) );
10315       argvi++;
10316     }
10317 
10318 
10319 
10320     XSRETURN(argvi);
10321   fail:
10322 
10323 
10324 
10325     SWIG_croak_null();
10326   }
10327 }
10328 
10329 
XS(_wrap_Feature_GetFieldAsBinary)10330 XS(_wrap_Feature_GetFieldAsBinary) {
10331   {
10332     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
10333     int arg2 ;
10334     int *arg3 = (int *) 0 ;
10335     char **arg4 = (char **) 0 ;
10336     void *argp1 = 0 ;
10337     int res1 = 0 ;
10338     int val2 ;
10339     int ecode2 = 0 ;
10340     int nLen3 = 0 ;
10341     char *pBuf3 = 0 ;
10342     int argvi = 0;
10343     OGRErr result;
10344     dXSARGS;
10345 
10346     {
10347       /* %typemap(in,numinputs=0) (int *nLen3, char **pBuf3 ) */
10348       arg3 = &nLen3;
10349       arg4 = &pBuf3;
10350     }
10351     if ((items < 2) || (items > 2)) {
10352       SWIG_croak("Usage: Feature_GetFieldAsBinary(self,id,pBuf);");
10353     }
10354     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
10355     if (!SWIG_IsOK(res1)) {
10356       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetFieldAsBinary" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
10357     }
10358     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
10359     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10360     if (!SWIG_IsOK(ecode2)) {
10361       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_GetFieldAsBinary" "', argument " "2"" of type '" "int""'");
10362     }
10363     arg2 = static_cast< int >(val2);
10364     {
10365       CPLErrorReset();
10366       result = (OGRErr)OGRFeatureShadow_GetFieldAsBinary(arg1,arg2,arg3,arg4);
10367       CPLErr eclass = CPLGetLastErrorType();
10368       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
10369         do_confess( CPLGetLastErrorMsg(), 0 );
10370 
10371 
10372 
10373 
10374 
10375       }
10376 
10377 
10378       /*
10379           Make warnings regular Perl warnings. This duplicates the warning
10380           message if DontUseExceptions() is in effect (it is not by default).
10381           */
10382       if ( eclass == CE_Warning ) {
10383         warn( CPLGetLastErrorMsg(), "%s" );
10384       }
10385 
10386 
10387     }
10388     {
10389       /* %typemap(out) OGRErr */
10390       if ( result != 0 ) {
10391         const char *err = CPLGetLastErrorMsg();
10392         if (err and *err) do_confess(err, 0); /* this is usually better */
10393         do_confess( OGRErrMessages(result), 1 );
10394       }
10395     }
10396     {
10397       /* %typemap(argout) (int *nLen, char **pBuf ) */
10398       ST(argvi) = sv_2mortal(newSVpv( *arg4, *arg3 ));
10399       argvi++;
10400     }
10401 
10402 
10403     {
10404       /* %typemap(freearg) (int *nLen, char **pBuf ) */
10405       if( *arg3 ) {
10406         VSIFree( *arg4 );
10407       }
10408     }
10409     XSRETURN(argvi);
10410   fail:
10411 
10412 
10413     {
10414       /* %typemap(freearg) (int *nLen, char **pBuf ) */
10415       if( *arg3 ) {
10416         VSIFree( *arg4 );
10417       }
10418     }
10419     SWIG_croak_null();
10420   }
10421 }
10422 
10423 
XS(_wrap_Feature_IsFieldSet)10424 XS(_wrap_Feature_IsFieldSet) {
10425   {
10426     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
10427     int arg2 ;
10428     void *argp1 = 0 ;
10429     int res1 = 0 ;
10430     int val2 ;
10431     int ecode2 = 0 ;
10432     int argvi = 0;
10433     bool result;
10434     dXSARGS;
10435 
10436     if ((items < 2) || (items > 2)) {
10437       SWIG_croak("Usage: Feature_IsFieldSet(self,id);");
10438     }
10439     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
10440     if (!SWIG_IsOK(res1)) {
10441       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_IsFieldSet" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
10442     }
10443     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
10444     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10445     if (!SWIG_IsOK(ecode2)) {
10446       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_IsFieldSet" "', argument " "2"" of type '" "int""'");
10447     }
10448     arg2 = static_cast< int >(val2);
10449     {
10450       CPLErrorReset();
10451       result = (bool)OGRFeatureShadow_IsFieldSet(arg1,arg2);
10452       CPLErr eclass = CPLGetLastErrorType();
10453       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
10454         do_confess( CPLGetLastErrorMsg(), 0 );
10455 
10456 
10457 
10458 
10459 
10460       }
10461 
10462 
10463       /*
10464           Make warnings regular Perl warnings. This duplicates the warning
10465           message if DontUseExceptions() is in effect (it is not by default).
10466           */
10467       if ( eclass == CE_Warning ) {
10468         warn( CPLGetLastErrorMsg(), "%s" );
10469       }
10470 
10471 
10472     }
10473     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
10474 
10475 
10476     XSRETURN(argvi);
10477   fail:
10478 
10479 
10480     SWIG_croak_null();
10481   }
10482 }
10483 
10484 
XS(_wrap_Feature_IsFieldNull)10485 XS(_wrap_Feature_IsFieldNull) {
10486   {
10487     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
10488     int arg2 ;
10489     void *argp1 = 0 ;
10490     int res1 = 0 ;
10491     int val2 ;
10492     int ecode2 = 0 ;
10493     int argvi = 0;
10494     bool result;
10495     dXSARGS;
10496 
10497     if ((items < 2) || (items > 2)) {
10498       SWIG_croak("Usage: Feature_IsFieldNull(self,id);");
10499     }
10500     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
10501     if (!SWIG_IsOK(res1)) {
10502       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_IsFieldNull" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
10503     }
10504     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
10505     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10506     if (!SWIG_IsOK(ecode2)) {
10507       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_IsFieldNull" "', argument " "2"" of type '" "int""'");
10508     }
10509     arg2 = static_cast< int >(val2);
10510     {
10511       CPLErrorReset();
10512       result = (bool)OGRFeatureShadow_IsFieldNull(arg1,arg2);
10513       CPLErr eclass = CPLGetLastErrorType();
10514       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
10515         do_confess( CPLGetLastErrorMsg(), 0 );
10516 
10517 
10518 
10519 
10520 
10521       }
10522 
10523 
10524       /*
10525           Make warnings regular Perl warnings. This duplicates the warning
10526           message if DontUseExceptions() is in effect (it is not by default).
10527           */
10528       if ( eclass == CE_Warning ) {
10529         warn( CPLGetLastErrorMsg(), "%s" );
10530       }
10531 
10532 
10533     }
10534     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
10535 
10536 
10537     XSRETURN(argvi);
10538   fail:
10539 
10540 
10541     SWIG_croak_null();
10542   }
10543 }
10544 
10545 
XS(_wrap_Feature_IsFieldSetAndNotNull)10546 XS(_wrap_Feature_IsFieldSetAndNotNull) {
10547   {
10548     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
10549     int arg2 ;
10550     void *argp1 = 0 ;
10551     int res1 = 0 ;
10552     int val2 ;
10553     int ecode2 = 0 ;
10554     int argvi = 0;
10555     bool result;
10556     dXSARGS;
10557 
10558     if ((items < 2) || (items > 2)) {
10559       SWIG_croak("Usage: Feature_IsFieldSetAndNotNull(self,id);");
10560     }
10561     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
10562     if (!SWIG_IsOK(res1)) {
10563       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_IsFieldSetAndNotNull" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
10564     }
10565     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
10566     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10567     if (!SWIG_IsOK(ecode2)) {
10568       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_IsFieldSetAndNotNull" "', argument " "2"" of type '" "int""'");
10569     }
10570     arg2 = static_cast< int >(val2);
10571     {
10572       CPLErrorReset();
10573       result = (bool)OGRFeatureShadow_IsFieldSetAndNotNull(arg1,arg2);
10574       CPLErr eclass = CPLGetLastErrorType();
10575       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
10576         do_confess( CPLGetLastErrorMsg(), 0 );
10577 
10578 
10579 
10580 
10581 
10582       }
10583 
10584 
10585       /*
10586           Make warnings regular Perl warnings. This duplicates the warning
10587           message if DontUseExceptions() is in effect (it is not by default).
10588           */
10589       if ( eclass == CE_Warning ) {
10590         warn( CPLGetLastErrorMsg(), "%s" );
10591       }
10592 
10593 
10594     }
10595     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
10596 
10597 
10598     XSRETURN(argvi);
10599   fail:
10600 
10601 
10602     SWIG_croak_null();
10603   }
10604 }
10605 
10606 
XS(_wrap_Feature__GetFieldIndex)10607 XS(_wrap_Feature__GetFieldIndex) {
10608   {
10609     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
10610     char *arg2 = (char *) 0 ;
10611     void *argp1 = 0 ;
10612     int res1 = 0 ;
10613     U8 *tmpbuf2 = NULL ;
10614     int argvi = 0;
10615     int result;
10616     dXSARGS;
10617 
10618     if ((items < 2) || (items > 2)) {
10619       SWIG_croak("Usage: Feature__GetFieldIndex(self,field_name);");
10620     }
10621     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
10622     if (!SWIG_IsOK(res1)) {
10623       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature__GetFieldIndex" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
10624     }
10625     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
10626     {
10627       /* %typemap(in,numinputs=1) (const char* field_name) */
10628       arg2 = sv_to_utf8_string(ST(1), &tmpbuf2);
10629     }
10630     {
10631       CPLErrorReset();
10632       result = (int)OGRFeatureShadow_GetFieldIndex(arg1,(char const *)arg2);
10633       CPLErr eclass = CPLGetLastErrorType();
10634       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
10635         do_confess( CPLGetLastErrorMsg(), 0 );
10636 
10637 
10638 
10639 
10640 
10641       }
10642 
10643 
10644       /*
10645           Make warnings regular Perl warnings. This duplicates the warning
10646           message if DontUseExceptions() is in effect (it is not by default).
10647           */
10648       if ( eclass == CE_Warning ) {
10649         warn( CPLGetLastErrorMsg(), "%s" );
10650       }
10651 
10652 
10653     }
10654     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
10655 
10656     {
10657       /* %typemap(freearg) (const char* field_name) */
10658       if (tmpbuf2) Safefree(tmpbuf2);
10659     }
10660     XSRETURN(argvi);
10661   fail:
10662 
10663     {
10664       /* %typemap(freearg) (const char* field_name) */
10665       if (tmpbuf2) Safefree(tmpbuf2);
10666     }
10667     SWIG_croak_null();
10668   }
10669 }
10670 
10671 
XS(_wrap_Feature__GetGeomFieldIndex)10672 XS(_wrap_Feature__GetGeomFieldIndex) {
10673   {
10674     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
10675     char *arg2 = (char *) 0 ;
10676     void *argp1 = 0 ;
10677     int res1 = 0 ;
10678     U8 *tmpbuf2 = NULL ;
10679     int argvi = 0;
10680     int result;
10681     dXSARGS;
10682 
10683     if ((items < 2) || (items > 2)) {
10684       SWIG_croak("Usage: Feature__GetGeomFieldIndex(self,field_name);");
10685     }
10686     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
10687     if (!SWIG_IsOK(res1)) {
10688       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature__GetGeomFieldIndex" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
10689     }
10690     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
10691     {
10692       /* %typemap(in,numinputs=1) (const char* field_name) */
10693       arg2 = sv_to_utf8_string(ST(1), &tmpbuf2);
10694     }
10695     {
10696       CPLErrorReset();
10697       result = (int)OGRFeatureShadow_GetGeomFieldIndex(arg1,(char const *)arg2);
10698       CPLErr eclass = CPLGetLastErrorType();
10699       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
10700         do_confess( CPLGetLastErrorMsg(), 0 );
10701 
10702 
10703 
10704 
10705 
10706       }
10707 
10708 
10709       /*
10710           Make warnings regular Perl warnings. This duplicates the warning
10711           message if DontUseExceptions() is in effect (it is not by default).
10712           */
10713       if ( eclass == CE_Warning ) {
10714         warn( CPLGetLastErrorMsg(), "%s" );
10715       }
10716 
10717 
10718     }
10719     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
10720 
10721     {
10722       /* %typemap(freearg) (const char* field_name) */
10723       if (tmpbuf2) Safefree(tmpbuf2);
10724     }
10725     XSRETURN(argvi);
10726   fail:
10727 
10728     {
10729       /* %typemap(freearg) (const char* field_name) */
10730       if (tmpbuf2) Safefree(tmpbuf2);
10731     }
10732     SWIG_croak_null();
10733   }
10734 }
10735 
10736 
XS(_wrap_Feature_GetFID)10737 XS(_wrap_Feature_GetFID) {
10738   {
10739     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
10740     void *argp1 = 0 ;
10741     int res1 = 0 ;
10742     int argvi = 0;
10743     GIntBig result;
10744     dXSARGS;
10745 
10746     if ((items < 1) || (items > 1)) {
10747       SWIG_croak("Usage: Feature_GetFID(self);");
10748     }
10749     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
10750     if (!SWIG_IsOK(res1)) {
10751       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetFID" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
10752     }
10753     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
10754     {
10755       CPLErrorReset();
10756       result = OGRFeatureShadow_GetFID(arg1);
10757       CPLErr eclass = CPLGetLastErrorType();
10758       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
10759         do_confess( CPLGetLastErrorMsg(), 0 );
10760 
10761 
10762 
10763 
10764 
10765       }
10766 
10767 
10768       /*
10769           Make warnings regular Perl warnings. This duplicates the warning
10770           message if DontUseExceptions() is in effect (it is not by default).
10771           */
10772       if ( eclass == CE_Warning ) {
10773         warn( CPLGetLastErrorMsg(), "%s" );
10774       }
10775 
10776 
10777     }
10778     {
10779       char temp[256];
10780       sprintf(temp, "" CPL_FRMT_GIB "", result);
10781       ST(argvi) = sv_2mortal(newSVpv(temp, 0));
10782       argvi++;
10783     }
10784 
10785     XSRETURN(argvi);
10786   fail:
10787 
10788     SWIG_croak_null();
10789   }
10790 }
10791 
10792 
XS(_wrap_Feature_SetFID)10793 XS(_wrap_Feature_SetFID) {
10794   {
10795     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
10796     GIntBig arg2 ;
10797     void *argp1 = 0 ;
10798     int res1 = 0 ;
10799     int argvi = 0;
10800     OGRErr result;
10801     dXSARGS;
10802 
10803     if ((items < 2) || (items > 2)) {
10804       SWIG_croak("Usage: Feature_SetFID(self,fid);");
10805     }
10806     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
10807     if (!SWIG_IsOK(res1)) {
10808       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetFID" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
10809     }
10810     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
10811     {
10812       arg2 = CPLAtoGIntBig(SvPV_nolen(ST(1)));
10813     }
10814     {
10815       CPLErrorReset();
10816       result = (OGRErr)OGRFeatureShadow_SetFID(arg1,arg2);
10817       CPLErr eclass = CPLGetLastErrorType();
10818       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
10819         do_confess( CPLGetLastErrorMsg(), 0 );
10820 
10821 
10822 
10823 
10824 
10825       }
10826 
10827 
10828       /*
10829           Make warnings regular Perl warnings. This duplicates the warning
10830           message if DontUseExceptions() is in effect (it is not by default).
10831           */
10832       if ( eclass == CE_Warning ) {
10833         warn( CPLGetLastErrorMsg(), "%s" );
10834       }
10835 
10836 
10837     }
10838     {
10839       /* %typemap(out) OGRErr */
10840       if ( result != 0 ) {
10841         const char *err = CPLGetLastErrorMsg();
10842         if (err and *err) do_confess(err, 0); /* this is usually better */
10843         do_confess( OGRErrMessages(result), 1 );
10844       }
10845     }
10846 
10847     XSRETURN(argvi);
10848   fail:
10849 
10850     SWIG_croak_null();
10851   }
10852 }
10853 
10854 
XS(_wrap_Feature_DumpReadable)10855 XS(_wrap_Feature_DumpReadable) {
10856   {
10857     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
10858     void *argp1 = 0 ;
10859     int res1 = 0 ;
10860     int argvi = 0;
10861     dXSARGS;
10862 
10863     if ((items < 1) || (items > 1)) {
10864       SWIG_croak("Usage: Feature_DumpReadable(self);");
10865     }
10866     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
10867     if (!SWIG_IsOK(res1)) {
10868       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_DumpReadable" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
10869     }
10870     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
10871     {
10872       CPLErrorReset();
10873       OGRFeatureShadow_DumpReadable(arg1);
10874       CPLErr eclass = CPLGetLastErrorType();
10875       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
10876         do_confess( CPLGetLastErrorMsg(), 0 );
10877 
10878 
10879 
10880 
10881 
10882       }
10883 
10884 
10885       /*
10886           Make warnings regular Perl warnings. This duplicates the warning
10887           message if DontUseExceptions() is in effect (it is not by default).
10888           */
10889       if ( eclass == CE_Warning ) {
10890         warn( CPLGetLastErrorMsg(), "%s" );
10891       }
10892 
10893 
10894     }
10895     {
10896       /* %typemap(out) void */
10897     }
10898 
10899     XSRETURN(argvi);
10900   fail:
10901 
10902     SWIG_croak_null();
10903   }
10904 }
10905 
10906 
XS(_wrap_Feature__UnsetField)10907 XS(_wrap_Feature__UnsetField) {
10908   {
10909     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
10910     int arg2 ;
10911     void *argp1 = 0 ;
10912     int res1 = 0 ;
10913     int val2 ;
10914     int ecode2 = 0 ;
10915     int argvi = 0;
10916     dXSARGS;
10917 
10918     if ((items < 2) || (items > 2)) {
10919       SWIG_croak("Usage: Feature__UnsetField(self,id);");
10920     }
10921     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
10922     if (!SWIG_IsOK(res1)) {
10923       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature__UnsetField" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
10924     }
10925     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
10926     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10927     if (!SWIG_IsOK(ecode2)) {
10928       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature__UnsetField" "', argument " "2"" of type '" "int""'");
10929     }
10930     arg2 = static_cast< int >(val2);
10931     {
10932       CPLErrorReset();
10933       OGRFeatureShadow_UnsetField(arg1,arg2);
10934       CPLErr eclass = CPLGetLastErrorType();
10935       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
10936         do_confess( CPLGetLastErrorMsg(), 0 );
10937 
10938 
10939 
10940 
10941 
10942       }
10943 
10944 
10945       /*
10946           Make warnings regular Perl warnings. This duplicates the warning
10947           message if DontUseExceptions() is in effect (it is not by default).
10948           */
10949       if ( eclass == CE_Warning ) {
10950         warn( CPLGetLastErrorMsg(), "%s" );
10951       }
10952 
10953 
10954     }
10955     {
10956       /* %typemap(out) void */
10957     }
10958 
10959 
10960     XSRETURN(argvi);
10961   fail:
10962 
10963 
10964     SWIG_croak_null();
10965   }
10966 }
10967 
10968 
XS(_wrap_Feature_SetFieldNull)10969 XS(_wrap_Feature_SetFieldNull) {
10970   {
10971     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
10972     int arg2 ;
10973     void *argp1 = 0 ;
10974     int res1 = 0 ;
10975     int val2 ;
10976     int ecode2 = 0 ;
10977     int argvi = 0;
10978     dXSARGS;
10979 
10980     if ((items < 2) || (items > 2)) {
10981       SWIG_croak("Usage: Feature_SetFieldNull(self,id);");
10982     }
10983     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
10984     if (!SWIG_IsOK(res1)) {
10985       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetFieldNull" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
10986     }
10987     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
10988     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10989     if (!SWIG_IsOK(ecode2)) {
10990       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_SetFieldNull" "', argument " "2"" of type '" "int""'");
10991     }
10992     arg2 = static_cast< int >(val2);
10993     {
10994       CPLErrorReset();
10995       OGRFeatureShadow_SetFieldNull(arg1,arg2);
10996       CPLErr eclass = CPLGetLastErrorType();
10997       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
10998         do_confess( CPLGetLastErrorMsg(), 0 );
10999 
11000 
11001 
11002 
11003 
11004       }
11005 
11006 
11007       /*
11008           Make warnings regular Perl warnings. This duplicates the warning
11009           message if DontUseExceptions() is in effect (it is not by default).
11010           */
11011       if ( eclass == CE_Warning ) {
11012         warn( CPLGetLastErrorMsg(), "%s" );
11013       }
11014 
11015 
11016     }
11017     {
11018       /* %typemap(out) void */
11019     }
11020 
11021 
11022     XSRETURN(argvi);
11023   fail:
11024 
11025 
11026     SWIG_croak_null();
11027   }
11028 }
11029 
11030 
XS(_wrap_Feature__SetField__SWIG_0)11031 XS(_wrap_Feature__SetField__SWIG_0) {
11032   {
11033     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
11034     int arg2 ;
11035     char *arg3 = (char *) 0 ;
11036     void *argp1 = 0 ;
11037     int res1 = 0 ;
11038     int val2 ;
11039     int ecode2 = 0 ;
11040     U8 *tmpbuf3 = NULL ;
11041     int argvi = 0;
11042     dXSARGS;
11043 
11044     if ((items < 3) || (items > 3)) {
11045       SWIG_croak("Usage: Feature__SetField(self,id,value);");
11046     }
11047     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
11048     if (!SWIG_IsOK(res1)) {
11049       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature__SetField" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
11050     }
11051     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
11052     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11053     if (!SWIG_IsOK(ecode2)) {
11054       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature__SetField" "', argument " "2"" of type '" "int""'");
11055     }
11056     arg2 = static_cast< int >(val2);
11057     {
11058       /* %typemap(in) (tostring argin) */
11059       arg3 = sv_to_utf8_string(ST(2), &tmpbuf3);
11060     }
11061     {
11062       CPLErrorReset();
11063       OGRFeatureShadow_SetField__SWIG_0(arg1,arg2,(char const *)arg3);
11064       CPLErr eclass = CPLGetLastErrorType();
11065       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
11066         do_confess( CPLGetLastErrorMsg(), 0 );
11067 
11068 
11069 
11070 
11071 
11072       }
11073 
11074 
11075       /*
11076           Make warnings regular Perl warnings. This duplicates the warning
11077           message if DontUseExceptions() is in effect (it is not by default).
11078           */
11079       if ( eclass == CE_Warning ) {
11080         warn( CPLGetLastErrorMsg(), "%s" );
11081       }
11082 
11083 
11084     }
11085     {
11086       /* %typemap(out) void */
11087     }
11088 
11089 
11090     {
11091       /* %typemap(freearg) (tostring argin) */
11092       if (tmpbuf3) Safefree(tmpbuf3);
11093     }
11094     XSRETURN(argvi);
11095   fail:
11096 
11097 
11098     {
11099       /* %typemap(freearg) (tostring argin) */
11100       if (tmpbuf3) Safefree(tmpbuf3);
11101     }
11102     SWIG_croak_null();
11103   }
11104 }
11105 
11106 
XS(_wrap_Feature_SetFieldInteger64)11107 XS(_wrap_Feature_SetFieldInteger64) {
11108   {
11109     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
11110     int arg2 ;
11111     GIntBig arg3 ;
11112     void *argp1 = 0 ;
11113     int res1 = 0 ;
11114     int val2 ;
11115     int ecode2 = 0 ;
11116     int argvi = 0;
11117     dXSARGS;
11118 
11119     if ((items < 3) || (items > 3)) {
11120       SWIG_croak("Usage: Feature_SetFieldInteger64(self,id,value);");
11121     }
11122     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
11123     if (!SWIG_IsOK(res1)) {
11124       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetFieldInteger64" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
11125     }
11126     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
11127     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11128     if (!SWIG_IsOK(ecode2)) {
11129       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_SetFieldInteger64" "', argument " "2"" of type '" "int""'");
11130     }
11131     arg2 = static_cast< int >(val2);
11132     {
11133       arg3 = CPLAtoGIntBig(SvPV_nolen(ST(2)));
11134     }
11135     {
11136       CPLErrorReset();
11137       OGRFeatureShadow_SetFieldInteger64(arg1,arg2,arg3);
11138       CPLErr eclass = CPLGetLastErrorType();
11139       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
11140         do_confess( CPLGetLastErrorMsg(), 0 );
11141 
11142 
11143 
11144 
11145 
11146       }
11147 
11148 
11149       /*
11150           Make warnings regular Perl warnings. This duplicates the warning
11151           message if DontUseExceptions() is in effect (it is not by default).
11152           */
11153       if ( eclass == CE_Warning ) {
11154         warn( CPLGetLastErrorMsg(), "%s" );
11155       }
11156 
11157 
11158     }
11159     {
11160       /* %typemap(out) void */
11161     }
11162 
11163 
11164     XSRETURN(argvi);
11165   fail:
11166 
11167 
11168     SWIG_croak_null();
11169   }
11170 }
11171 
11172 
XS(_wrap_Feature__SetField__SWIG_1)11173 XS(_wrap_Feature__SetField__SWIG_1) {
11174   {
11175     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
11176     int arg2 ;
11177     int arg3 ;
11178     void *argp1 = 0 ;
11179     int res1 = 0 ;
11180     int val2 ;
11181     int ecode2 = 0 ;
11182     int val3 ;
11183     int ecode3 = 0 ;
11184     int argvi = 0;
11185     dXSARGS;
11186 
11187     if ((items < 3) || (items > 3)) {
11188       SWIG_croak("Usage: Feature__SetField(self,id,value);");
11189     }
11190     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
11191     if (!SWIG_IsOK(res1)) {
11192       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature__SetField" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
11193     }
11194     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
11195     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11196     if (!SWIG_IsOK(ecode2)) {
11197       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature__SetField" "', argument " "2"" of type '" "int""'");
11198     }
11199     arg2 = static_cast< int >(val2);
11200     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
11201     if (!SWIG_IsOK(ecode3)) {
11202       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Feature__SetField" "', argument " "3"" of type '" "int""'");
11203     }
11204     arg3 = static_cast< int >(val3);
11205     {
11206       CPLErrorReset();
11207       OGRFeatureShadow_SetField__SWIG_1(arg1,arg2,arg3);
11208       CPLErr eclass = CPLGetLastErrorType();
11209       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
11210         do_confess( CPLGetLastErrorMsg(), 0 );
11211 
11212 
11213 
11214 
11215 
11216       }
11217 
11218 
11219       /*
11220           Make warnings regular Perl warnings. This duplicates the warning
11221           message if DontUseExceptions() is in effect (it is not by default).
11222           */
11223       if ( eclass == CE_Warning ) {
11224         warn( CPLGetLastErrorMsg(), "%s" );
11225       }
11226 
11227 
11228     }
11229     {
11230       /* %typemap(out) void */
11231     }
11232 
11233 
11234 
11235     XSRETURN(argvi);
11236   fail:
11237 
11238 
11239 
11240     SWIG_croak_null();
11241   }
11242 }
11243 
11244 
XS(_wrap_Feature__SetField__SWIG_2)11245 XS(_wrap_Feature__SetField__SWIG_2) {
11246   {
11247     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
11248     int arg2 ;
11249     double arg3 ;
11250     void *argp1 = 0 ;
11251     int res1 = 0 ;
11252     int val2 ;
11253     int ecode2 = 0 ;
11254     double val3 ;
11255     int ecode3 = 0 ;
11256     int argvi = 0;
11257     dXSARGS;
11258 
11259     if ((items < 3) || (items > 3)) {
11260       SWIG_croak("Usage: Feature__SetField(self,id,value);");
11261     }
11262     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
11263     if (!SWIG_IsOK(res1)) {
11264       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature__SetField" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
11265     }
11266     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
11267     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11268     if (!SWIG_IsOK(ecode2)) {
11269       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature__SetField" "', argument " "2"" of type '" "int""'");
11270     }
11271     arg2 = static_cast< int >(val2);
11272     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
11273     if (!SWIG_IsOK(ecode3)) {
11274       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Feature__SetField" "', argument " "3"" of type '" "double""'");
11275     }
11276     arg3 = static_cast< double >(val3);
11277     {
11278       CPLErrorReset();
11279       OGRFeatureShadow_SetField__SWIG_2(arg1,arg2,arg3);
11280       CPLErr eclass = CPLGetLastErrorType();
11281       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
11282         do_confess( CPLGetLastErrorMsg(), 0 );
11283 
11284 
11285 
11286 
11287 
11288       }
11289 
11290 
11291       /*
11292           Make warnings regular Perl warnings. This duplicates the warning
11293           message if DontUseExceptions() is in effect (it is not by default).
11294           */
11295       if ( eclass == CE_Warning ) {
11296         warn( CPLGetLastErrorMsg(), "%s" );
11297       }
11298 
11299 
11300     }
11301     {
11302       /* %typemap(out) void */
11303     }
11304 
11305 
11306 
11307     XSRETURN(argvi);
11308   fail:
11309 
11310 
11311 
11312     SWIG_croak_null();
11313   }
11314 }
11315 
11316 
XS(_wrap_Feature__SetField__SWIG_3)11317 XS(_wrap_Feature__SetField__SWIG_3) {
11318   {
11319     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
11320     int arg2 ;
11321     int arg3 ;
11322     int arg4 ;
11323     int arg5 ;
11324     int arg6 ;
11325     int arg7 ;
11326     float arg8 ;
11327     int arg9 ;
11328     void *argp1 = 0 ;
11329     int res1 = 0 ;
11330     int val2 ;
11331     int ecode2 = 0 ;
11332     int val3 ;
11333     int ecode3 = 0 ;
11334     int val4 ;
11335     int ecode4 = 0 ;
11336     int val5 ;
11337     int ecode5 = 0 ;
11338     int val6 ;
11339     int ecode6 = 0 ;
11340     int val7 ;
11341     int ecode7 = 0 ;
11342     float val8 ;
11343     int ecode8 = 0 ;
11344     int val9 ;
11345     int ecode9 = 0 ;
11346     int argvi = 0;
11347     dXSARGS;
11348 
11349     if ((items < 9) || (items > 9)) {
11350       SWIG_croak("Usage: Feature__SetField(self,id,year,month,day,hour,minute,second,tzflag);");
11351     }
11352     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
11353     if (!SWIG_IsOK(res1)) {
11354       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature__SetField" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
11355     }
11356     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
11357     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11358     if (!SWIG_IsOK(ecode2)) {
11359       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature__SetField" "', argument " "2"" of type '" "int""'");
11360     }
11361     arg2 = static_cast< int >(val2);
11362     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
11363     if (!SWIG_IsOK(ecode3)) {
11364       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Feature__SetField" "', argument " "3"" of type '" "int""'");
11365     }
11366     arg3 = static_cast< int >(val3);
11367     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
11368     if (!SWIG_IsOK(ecode4)) {
11369       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "Feature__SetField" "', argument " "4"" of type '" "int""'");
11370     }
11371     arg4 = static_cast< int >(val4);
11372     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
11373     if (!SWIG_IsOK(ecode5)) {
11374       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "Feature__SetField" "', argument " "5"" of type '" "int""'");
11375     }
11376     arg5 = static_cast< int >(val5);
11377     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
11378     if (!SWIG_IsOK(ecode6)) {
11379       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "Feature__SetField" "', argument " "6"" of type '" "int""'");
11380     }
11381     arg6 = static_cast< int >(val6);
11382     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
11383     if (!SWIG_IsOK(ecode7)) {
11384       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "Feature__SetField" "', argument " "7"" of type '" "int""'");
11385     }
11386     arg7 = static_cast< int >(val7);
11387     ecode8 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
11388     if (!SWIG_IsOK(ecode8)) {
11389       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "Feature__SetField" "', argument " "8"" of type '" "float""'");
11390     }
11391     arg8 = static_cast< float >(val8);
11392     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
11393     if (!SWIG_IsOK(ecode9)) {
11394       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "Feature__SetField" "', argument " "9"" of type '" "int""'");
11395     }
11396     arg9 = static_cast< int >(val9);
11397     {
11398       CPLErrorReset();
11399       OGRFeatureShadow_SetField__SWIG_3(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9);
11400       CPLErr eclass = CPLGetLastErrorType();
11401       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
11402         do_confess( CPLGetLastErrorMsg(), 0 );
11403 
11404 
11405 
11406 
11407 
11408       }
11409 
11410 
11411       /*
11412           Make warnings regular Perl warnings. This duplicates the warning
11413           message if DontUseExceptions() is in effect (it is not by default).
11414           */
11415       if ( eclass == CE_Warning ) {
11416         warn( CPLGetLastErrorMsg(), "%s" );
11417       }
11418 
11419 
11420     }
11421     {
11422       /* %typemap(out) void */
11423     }
11424 
11425 
11426 
11427 
11428 
11429 
11430 
11431 
11432 
11433     XSRETURN(argvi);
11434   fail:
11435 
11436 
11437 
11438 
11439 
11440 
11441 
11442 
11443 
11444     SWIG_croak_null();
11445   }
11446 }
11447 
11448 
XS(_wrap_Feature__SetField)11449 XS(_wrap_Feature__SetField) {
11450   dXSARGS;
11451 
11452   {
11453     unsigned long _index = 0;
11454     SWIG_TypeRank _rank = 0;
11455     if (items == 3) {
11456       SWIG_TypeRank _ranki = 0;
11457       SWIG_TypeRank _rankm = 0;
11458       SWIG_TypeRank _pi = 1;
11459       int _v = 0;
11460       {
11461         void *vptr = 0;
11462         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_OGRFeatureShadow, 0);
11463         _v = SWIG_CheckState(res);
11464       }
11465       if (!_v) goto check_1;
11466       _ranki += _v*_pi;
11467       _rankm += _pi;
11468       _pi *= SWIG_MAXCASTRANK;
11469       {
11470         {
11471           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
11472           _v = SWIG_CheckState(res);
11473         }
11474       }
11475       if (!_v) goto check_1;
11476       _ranki += _v*_pi;
11477       _rankm += _pi;
11478       _pi *= SWIG_MAXCASTRANK;
11479       {
11480         {
11481           /* %typemap(typecheck,precedence=SWIG_TYPECHECK_POINTER) (tostring argin) */
11482           _v = 1;
11483         }
11484       }
11485       if (!_v) goto check_1;
11486       _ranki += _v*_pi;
11487       _rankm += _pi;
11488       _pi *= SWIG_MAXCASTRANK;
11489       if (!_index || (_ranki < _rank)) {
11490         _rank = _ranki; _index = 1;
11491         if (_rank == _rankm) goto dispatch;
11492       }
11493     }
11494   check_1:
11495 
11496     if (items == 3) {
11497       SWIG_TypeRank _ranki = 0;
11498       SWIG_TypeRank _rankm = 0;
11499       SWIG_TypeRank _pi = 1;
11500       int _v = 0;
11501       {
11502         void *vptr = 0;
11503         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_OGRFeatureShadow, 0);
11504         _v = SWIG_CheckState(res);
11505       }
11506       if (!_v) goto check_2;
11507       _ranki += _v*_pi;
11508       _rankm += _pi;
11509       _pi *= SWIG_MAXCASTRANK;
11510       {
11511         {
11512           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
11513           _v = SWIG_CheckState(res);
11514         }
11515       }
11516       if (!_v) goto check_2;
11517       _ranki += _v*_pi;
11518       _rankm += _pi;
11519       _pi *= SWIG_MAXCASTRANK;
11520       {
11521         {
11522           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
11523           _v = SWIG_CheckState(res);
11524         }
11525       }
11526       if (!_v) goto check_2;
11527       _ranki += _v*_pi;
11528       _rankm += _pi;
11529       _pi *= SWIG_MAXCASTRANK;
11530       if (!_index || (_ranki < _rank)) {
11531         _rank = _ranki; _index = 2;
11532         if (_rank == _rankm) goto dispatch;
11533       }
11534     }
11535   check_2:
11536 
11537     if (items == 3) {
11538       SWIG_TypeRank _ranki = 0;
11539       SWIG_TypeRank _rankm = 0;
11540       SWIG_TypeRank _pi = 1;
11541       int _v = 0;
11542       {
11543         void *vptr = 0;
11544         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_OGRFeatureShadow, 0);
11545         _v = SWIG_CheckState(res);
11546       }
11547       if (!_v) goto check_3;
11548       _ranki += _v*_pi;
11549       _rankm += _pi;
11550       _pi *= SWIG_MAXCASTRANK;
11551       {
11552         {
11553           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
11554           _v = SWIG_CheckState(res);
11555         }
11556       }
11557       if (!_v) goto check_3;
11558       _ranki += _v*_pi;
11559       _rankm += _pi;
11560       _pi *= SWIG_MAXCASTRANK;
11561       {
11562         {
11563           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
11564           _v = SWIG_CheckState(res);
11565         }
11566       }
11567       if (!_v) goto check_3;
11568       _ranki += _v*_pi;
11569       _rankm += _pi;
11570       _pi *= SWIG_MAXCASTRANK;
11571       if (!_index || (_ranki < _rank)) {
11572         _rank = _ranki; _index = 3;
11573         if (_rank == _rankm) goto dispatch;
11574       }
11575     }
11576   check_3:
11577 
11578     if (items == 9) {
11579       SWIG_TypeRank _ranki = 0;
11580       SWIG_TypeRank _rankm = 0;
11581       SWIG_TypeRank _pi = 1;
11582       int _v = 0;
11583       {
11584         void *vptr = 0;
11585         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_OGRFeatureShadow, 0);
11586         _v = SWIG_CheckState(res);
11587       }
11588       if (!_v) goto check_4;
11589       _ranki += _v*_pi;
11590       _rankm += _pi;
11591       _pi *= SWIG_MAXCASTRANK;
11592       {
11593         {
11594           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
11595           _v = SWIG_CheckState(res);
11596         }
11597       }
11598       if (!_v) goto check_4;
11599       _ranki += _v*_pi;
11600       _rankm += _pi;
11601       _pi *= SWIG_MAXCASTRANK;
11602       {
11603         {
11604           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
11605           _v = SWIG_CheckState(res);
11606         }
11607       }
11608       if (!_v) goto check_4;
11609       _ranki += _v*_pi;
11610       _rankm += _pi;
11611       _pi *= SWIG_MAXCASTRANK;
11612       {
11613         {
11614           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
11615           _v = SWIG_CheckState(res);
11616         }
11617       }
11618       if (!_v) goto check_4;
11619       _ranki += _v*_pi;
11620       _rankm += _pi;
11621       _pi *= SWIG_MAXCASTRANK;
11622       {
11623         {
11624           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
11625           _v = SWIG_CheckState(res);
11626         }
11627       }
11628       if (!_v) goto check_4;
11629       _ranki += _v*_pi;
11630       _rankm += _pi;
11631       _pi *= SWIG_MAXCASTRANK;
11632       {
11633         {
11634           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
11635           _v = SWIG_CheckState(res);
11636         }
11637       }
11638       if (!_v) goto check_4;
11639       _ranki += _v*_pi;
11640       _rankm += _pi;
11641       _pi *= SWIG_MAXCASTRANK;
11642       {
11643         {
11644           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
11645           _v = SWIG_CheckState(res);
11646         }
11647       }
11648       if (!_v) goto check_4;
11649       _ranki += _v*_pi;
11650       _rankm += _pi;
11651       _pi *= SWIG_MAXCASTRANK;
11652       {
11653         {
11654           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
11655           _v = SWIG_CheckState(res);
11656         }
11657       }
11658       if (!_v) goto check_4;
11659       _ranki += _v*_pi;
11660       _rankm += _pi;
11661       _pi *= SWIG_MAXCASTRANK;
11662       {
11663         {
11664           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
11665           _v = SWIG_CheckState(res);
11666         }
11667       }
11668       if (!_v) goto check_4;
11669       _ranki += _v*_pi;
11670       _rankm += _pi;
11671       _pi *= SWIG_MAXCASTRANK;
11672       if (!_index || (_ranki < _rank)) {
11673         _rank = _ranki; _index = 4;
11674         if (_rank == _rankm) goto dispatch;
11675       }
11676     }
11677   check_4:
11678 
11679   dispatch:
11680     switch(_index) {
11681     case 1:
11682       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Feature__SetField__SWIG_0); return;
11683     case 2:
11684       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Feature__SetField__SWIG_1); return;
11685     case 3:
11686       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Feature__SetField__SWIG_2); return;
11687     case 4:
11688       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Feature__SetField__SWIG_3); return;
11689     }
11690   }
11691 
11692   croak("No matching function for overloaded 'Feature__SetField'");
11693   XSRETURN(0);
11694 }
11695 
11696 
XS(_wrap_Feature_SetFieldIntegerList)11697 XS(_wrap_Feature_SetFieldIntegerList) {
11698   {
11699     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
11700     int arg2 ;
11701     int arg3 ;
11702     int *arg4 = (int *) 0 ;
11703     void *argp1 = 0 ;
11704     int res1 = 0 ;
11705     int val2 ;
11706     int ecode2 = 0 ;
11707     int argvi = 0;
11708     dXSARGS;
11709 
11710     if ((items < 3) || (items > 3)) {
11711       SWIG_croak("Usage: Feature_SetFieldIntegerList(self,id,nList,pList);");
11712     }
11713     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
11714     if (!SWIG_IsOK(res1)) {
11715       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetFieldIntegerList" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
11716     }
11717     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
11718     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11719     if (!SWIG_IsOK(ecode2)) {
11720       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_SetFieldIntegerList" "', argument " "2"" of type '" "int""'");
11721     }
11722     arg2 = static_cast< int >(val2);
11723     {
11724       /* %typemap(in,numinputs=1) (int nList, int* pList) */
11725       if (!(SvROK(ST(2)) && (SvTYPE(SvRV(ST(2)))==SVt_PVAV)))
11726       do_confess(NEED_ARRAY_REF, 1);
11727       AV *av = (AV*)(SvRV(ST(2)));
11728       arg3 = av_len(av)+1;
11729       arg4 = (int*)CPLMalloc(arg3*sizeof(int));
11730       if (arg4) {
11731         for( int i = 0; i<arg3; i++ ) {
11732           SV **sv = av_fetch(av, i, 0);
11733           arg4[i] =  SvIV(*sv);
11734         }
11735       } else
11736       SWIG_fail;
11737     }
11738     {
11739       CPLErrorReset();
11740       OGRFeatureShadow_SetFieldIntegerList(arg1,arg2,arg3,arg4);
11741       CPLErr eclass = CPLGetLastErrorType();
11742       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
11743         do_confess( CPLGetLastErrorMsg(), 0 );
11744 
11745 
11746 
11747 
11748 
11749       }
11750 
11751 
11752       /*
11753           Make warnings regular Perl warnings. This duplicates the warning
11754           message if DontUseExceptions() is in effect (it is not by default).
11755           */
11756       if ( eclass == CE_Warning ) {
11757         warn( CPLGetLastErrorMsg(), "%s" );
11758       }
11759 
11760 
11761     }
11762     {
11763       /* %typemap(out) void */
11764     }
11765 
11766 
11767     {
11768       /* %typemap(freearg) (int nList, int* pList) */
11769       CPLFree((void*) arg4);
11770     }
11771     XSRETURN(argvi);
11772   fail:
11773 
11774 
11775     {
11776       /* %typemap(freearg) (int nList, int* pList) */
11777       CPLFree((void*) arg4);
11778     }
11779     SWIG_croak_null();
11780   }
11781 }
11782 
11783 
XS(_wrap_Feature_SetFieldInteger64List)11784 XS(_wrap_Feature_SetFieldInteger64List) {
11785   {
11786     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
11787     int arg2 ;
11788     int arg3 ;
11789     GIntBig *arg4 = (GIntBig *) 0 ;
11790     void *argp1 = 0 ;
11791     int res1 = 0 ;
11792     int val2 ;
11793     int ecode2 = 0 ;
11794     int argvi = 0;
11795     dXSARGS;
11796 
11797     if ((items < 3) || (items > 3)) {
11798       SWIG_croak("Usage: Feature_SetFieldInteger64List(self,id,nList,pList);");
11799     }
11800     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
11801     if (!SWIG_IsOK(res1)) {
11802       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetFieldInteger64List" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
11803     }
11804     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
11805     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11806     if (!SWIG_IsOK(ecode2)) {
11807       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_SetFieldInteger64List" "', argument " "2"" of type '" "int""'");
11808     }
11809     arg2 = static_cast< int >(val2);
11810     {
11811       /* %typemap(in,numinputs=1) (int nList, GIntBig* pList) */
11812       if (!(SvROK(ST(2)) && (SvTYPE(SvRV(ST(2)))==SVt_PVAV)))
11813       do_confess(NEED_ARRAY_REF, 1);
11814       AV *av = (AV*)(SvRV(ST(2)));
11815       arg3 = av_len(av)+1;
11816       arg4 = (GIntBig*)CPLMalloc(arg3*sizeof(GIntBig));
11817       if (arg4) {
11818         for( int i = 0; i<arg3; i++ ) {
11819           SV **sv = av_fetch(av, i, 0);
11820           arg4[i] =  CPLAtoGIntBig(SvPV_nolen(*sv));
11821         }
11822       } else
11823       SWIG_fail;
11824     }
11825     {
11826       CPLErrorReset();
11827       OGRFeatureShadow_SetFieldInteger64List(arg1,arg2,arg3,arg4);
11828       CPLErr eclass = CPLGetLastErrorType();
11829       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
11830         do_confess( CPLGetLastErrorMsg(), 0 );
11831 
11832 
11833 
11834 
11835 
11836       }
11837 
11838 
11839       /*
11840           Make warnings regular Perl warnings. This duplicates the warning
11841           message if DontUseExceptions() is in effect (it is not by default).
11842           */
11843       if ( eclass == CE_Warning ) {
11844         warn( CPLGetLastErrorMsg(), "%s" );
11845       }
11846 
11847 
11848     }
11849     {
11850       /* %typemap(out) void */
11851     }
11852 
11853 
11854     {
11855       /* %typemap(freearg) (int nList, GIntBig* pList) */
11856       CPLFree((void*) arg4);
11857     }
11858     XSRETURN(argvi);
11859   fail:
11860 
11861 
11862     {
11863       /* %typemap(freearg) (int nList, GIntBig* pList) */
11864       CPLFree((void*) arg4);
11865     }
11866     SWIG_croak_null();
11867   }
11868 }
11869 
11870 
XS(_wrap_Feature_SetFieldDoubleList)11871 XS(_wrap_Feature_SetFieldDoubleList) {
11872   {
11873     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
11874     int arg2 ;
11875     int arg3 ;
11876     double *arg4 = (double *) 0 ;
11877     void *argp1 = 0 ;
11878     int res1 = 0 ;
11879     int val2 ;
11880     int ecode2 = 0 ;
11881     int argvi = 0;
11882     dXSARGS;
11883 
11884     if ((items < 3) || (items > 3)) {
11885       SWIG_croak("Usage: Feature_SetFieldDoubleList(self,id,nList,pList);");
11886     }
11887     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
11888     if (!SWIG_IsOK(res1)) {
11889       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetFieldDoubleList" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
11890     }
11891     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
11892     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11893     if (!SWIG_IsOK(ecode2)) {
11894       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_SetFieldDoubleList" "', argument " "2"" of type '" "int""'");
11895     }
11896     arg2 = static_cast< int >(val2);
11897     {
11898       /* %typemap(in,numinputs=1) (int nList, double* pList) */
11899       if (!(SvROK(ST(2)) && (SvTYPE(SvRV(ST(2)))==SVt_PVAV)))
11900       do_confess(NEED_ARRAY_REF, 1);
11901       AV *av = (AV*)(SvRV(ST(2)));
11902       arg3 = av_len(av)+1;
11903       arg4 = (double*)CPLMalloc(arg3*sizeof(double));
11904       if (arg4) {
11905         for( int i = 0; i<arg3; i++ ) {
11906           SV **sv = av_fetch(av, i, 0);
11907           arg4[i] =  SvNV(*sv);
11908         }
11909       } else
11910       SWIG_fail;
11911     }
11912     {
11913       CPLErrorReset();
11914       OGRFeatureShadow_SetFieldDoubleList(arg1,arg2,arg3,arg4);
11915       CPLErr eclass = CPLGetLastErrorType();
11916       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
11917         do_confess( CPLGetLastErrorMsg(), 0 );
11918 
11919 
11920 
11921 
11922 
11923       }
11924 
11925 
11926       /*
11927           Make warnings regular Perl warnings. This duplicates the warning
11928           message if DontUseExceptions() is in effect (it is not by default).
11929           */
11930       if ( eclass == CE_Warning ) {
11931         warn( CPLGetLastErrorMsg(), "%s" );
11932       }
11933 
11934 
11935     }
11936     {
11937       /* %typemap(out) void */
11938     }
11939 
11940 
11941     {
11942       /* %typemap(freearg) (int nList, double* pList) */
11943       CPLFree((void*) arg4);
11944     }
11945     XSRETURN(argvi);
11946   fail:
11947 
11948 
11949     {
11950       /* %typemap(freearg) (int nList, double* pList) */
11951       CPLFree((void*) arg4);
11952     }
11953     SWIG_croak_null();
11954   }
11955 }
11956 
11957 
XS(_wrap_Feature_SetFieldStringList)11958 XS(_wrap_Feature_SetFieldStringList) {
11959   {
11960     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
11961     int arg2 ;
11962     char **arg3 = (char **) 0 ;
11963     void *argp1 = 0 ;
11964     int res1 = 0 ;
11965     int val2 ;
11966     int ecode2 = 0 ;
11967     int argvi = 0;
11968     dXSARGS;
11969 
11970     if ((items < 3) || (items > 3)) {
11971       SWIG_croak("Usage: Feature_SetFieldStringList(self,id,pList);");
11972     }
11973     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
11974     if (!SWIG_IsOK(res1)) {
11975       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetFieldStringList" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
11976     }
11977     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
11978     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11979     if (!SWIG_IsOK(ecode2)) {
11980       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_SetFieldStringList" "', argument " "2"" of type '" "int""'");
11981     }
11982     arg2 = static_cast< int >(val2);
11983     {
11984       /* %typemap(in) char **options */
11985       if (SvOK(ST(2))) {
11986         if (SvROK(ST(2))) {
11987           if (SvTYPE(SvRV(ST(2)))==SVt_PVAV) {
11988             AV *av = (AV*)(SvRV(ST(2)));
11989             for (int i = 0; i < av_len(av)+1; i++) {
11990               SV *sv = *(av_fetch(av, i, 0));
11991               bool sf;
11992               char *tmp = sv_to_utf8_string(sv, NULL, &sf);
11993               arg3 = CSLAddString(arg3, tmp);
11994               if (sf) Safefree(tmp); else free(tmp);
11995             }
11996           } else if (SvTYPE(SvRV(ST(2)))==SVt_PVHV) {
11997             HV *hv = (HV*)SvRV(ST(2));
11998             SV *sv;
11999             char *key;
12000             I32 klen;
12001             arg3 = NULL;
12002             hv_iterinit(hv);
12003             while(sv = hv_iternextsv(hv, &key, &klen)) {
12004               bool sf;
12005               char *tmp = sv_to_utf8_string(sv, NULL, &sf);
12006               arg3 = CSLAddNameValue(arg3, key, tmp);
12007               if (sf) Safefree(tmp); else free(tmp);
12008             }
12009           } else
12010           do_confess(NEED_REF, 1);
12011         } else
12012         do_confess(NEED_REF, 1);
12013       }
12014     }
12015     {
12016       CPLErrorReset();
12017       OGRFeatureShadow_SetFieldStringList(arg1,arg2,arg3);
12018       CPLErr eclass = CPLGetLastErrorType();
12019       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
12020         do_confess( CPLGetLastErrorMsg(), 0 );
12021 
12022 
12023 
12024 
12025 
12026       }
12027 
12028 
12029       /*
12030           Make warnings regular Perl warnings. This duplicates the warning
12031           message if DontUseExceptions() is in effect (it is not by default).
12032           */
12033       if ( eclass == CE_Warning ) {
12034         warn( CPLGetLastErrorMsg(), "%s" );
12035       }
12036 
12037 
12038     }
12039     {
12040       /* %typemap(out) void */
12041     }
12042 
12043 
12044     {
12045       /* %typemap(freearg) char **options */
12046       if (arg3) CSLDestroy( arg3 );
12047     }
12048     XSRETURN(argvi);
12049   fail:
12050 
12051 
12052     {
12053       /* %typemap(freearg) char **options */
12054       if (arg3) CSLDestroy( arg3 );
12055     }
12056     SWIG_croak_null();
12057   }
12058 }
12059 
12060 
XS(_wrap_Feature_SetFieldBinary)12061 XS(_wrap_Feature_SetFieldBinary) {
12062   {
12063     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
12064     int arg2 ;
12065     int arg3 ;
12066     GByte *arg4 = (GByte *) 0 ;
12067     void *argp1 = 0 ;
12068     int res1 = 0 ;
12069     int val2 ;
12070     int ecode2 = 0 ;
12071     int argvi = 0;
12072     dXSARGS;
12073 
12074     if ((items < 3) || (items > 3)) {
12075       SWIG_croak("Usage: Feature_SetFieldBinary(self,i,nBytes,pabyBuf);");
12076     }
12077     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
12078     if (!SWIG_IsOK(res1)) {
12079       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetFieldBinary" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
12080     }
12081     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
12082     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
12083     if (!SWIG_IsOK(ecode2)) {
12084       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_SetFieldBinary" "', argument " "2"" of type '" "int""'");
12085     }
12086     arg2 = static_cast< int >(val2);
12087     {
12088       /* %typemap(in,numinputs=1) (int nBytes, GByte* pabyBuf) */
12089       arg3 = SvCUR(ST(2));
12090       arg4 = (GByte*)SvPV_nolen(ST(2));
12091     }
12092     {
12093       CPLErrorReset();
12094       OGRFeatureShadow_SetFieldBinary(arg1,arg2,arg3,arg4);
12095       CPLErr eclass = CPLGetLastErrorType();
12096       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
12097         do_confess( CPLGetLastErrorMsg(), 0 );
12098 
12099 
12100 
12101 
12102 
12103       }
12104 
12105 
12106       /*
12107           Make warnings regular Perl warnings. This duplicates the warning
12108           message if DontUseExceptions() is in effect (it is not by default).
12109           */
12110       if ( eclass == CE_Warning ) {
12111         warn( CPLGetLastErrorMsg(), "%s" );
12112       }
12113 
12114 
12115     }
12116     {
12117       /* %typemap(out) void */
12118     }
12119 
12120 
12121     XSRETURN(argvi);
12122   fail:
12123 
12124 
12125     SWIG_croak_null();
12126   }
12127 }
12128 
12129 
XS(_wrap_Feature_SetFieldBinaryFromHexString)12130 XS(_wrap_Feature_SetFieldBinaryFromHexString) {
12131   {
12132     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
12133     int arg2 ;
12134     char *arg3 = (char *) 0 ;
12135     void *argp1 = 0 ;
12136     int res1 = 0 ;
12137     int val2 ;
12138     int ecode2 = 0 ;
12139     int res3 ;
12140     char *buf3 = 0 ;
12141     int alloc3 = 0 ;
12142     int argvi = 0;
12143     dXSARGS;
12144 
12145     if ((items < 3) || (items > 3)) {
12146       SWIG_croak("Usage: Feature_SetFieldBinaryFromHexString(self,id,pszValue);");
12147     }
12148     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
12149     if (!SWIG_IsOK(res1)) {
12150       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetFieldBinaryFromHexString" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
12151     }
12152     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
12153     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
12154     if (!SWIG_IsOK(ecode2)) {
12155       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_SetFieldBinaryFromHexString" "', argument " "2"" of type '" "int""'");
12156     }
12157     arg2 = static_cast< int >(val2);
12158     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
12159     if (!SWIG_IsOK(res3)) {
12160       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Feature_SetFieldBinaryFromHexString" "', argument " "3"" of type '" "char const *""'");
12161     }
12162     arg3 = reinterpret_cast< char * >(buf3);
12163     {
12164       CPLErrorReset();
12165       OGRFeatureShadow_SetFieldBinaryFromHexString(arg1,arg2,(char const *)arg3);
12166       CPLErr eclass = CPLGetLastErrorType();
12167       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
12168         do_confess( CPLGetLastErrorMsg(), 0 );
12169 
12170 
12171 
12172 
12173 
12174       }
12175 
12176 
12177       /*
12178           Make warnings regular Perl warnings. This duplicates the warning
12179           message if DontUseExceptions() is in effect (it is not by default).
12180           */
12181       if ( eclass == CE_Warning ) {
12182         warn( CPLGetLastErrorMsg(), "%s" );
12183       }
12184 
12185 
12186     }
12187     {
12188       /* %typemap(out) void */
12189     }
12190 
12191 
12192     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
12193     XSRETURN(argvi);
12194   fail:
12195 
12196 
12197     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
12198     SWIG_croak_null();
12199   }
12200 }
12201 
12202 
XS(_wrap_Feature__SetFrom)12203 XS(_wrap_Feature__SetFrom) {
12204   {
12205     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
12206     OGRFeatureShadow *arg2 = (OGRFeatureShadow *) 0 ;
12207     int arg3 = (int) 1 ;
12208     void *argp1 = 0 ;
12209     int res1 = 0 ;
12210     void *argp2 = 0 ;
12211     int res2 = 0 ;
12212     int val3 ;
12213     int ecode3 = 0 ;
12214     int argvi = 0;
12215     OGRErr result;
12216     dXSARGS;
12217 
12218     if ((items < 2) || (items > 3)) {
12219       SWIG_croak("Usage: Feature__SetFrom(self,other,forgiving);");
12220     }
12221     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
12222     if (!SWIG_IsOK(res1)) {
12223       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature__SetFrom" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
12224     }
12225     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
12226     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
12227     if (!SWIG_IsOK(res2)) {
12228       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Feature__SetFrom" "', argument " "2"" of type '" "OGRFeatureShadow *""'");
12229     }
12230     arg2 = reinterpret_cast< OGRFeatureShadow * >(argp2);
12231     if (items > 2) {
12232       ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
12233       if (!SWIG_IsOK(ecode3)) {
12234         SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Feature__SetFrom" "', argument " "3"" of type '" "int""'");
12235       }
12236       arg3 = static_cast< int >(val3);
12237     }
12238     {
12239       if (!arg2) {
12240         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
12241       }
12242     }
12243     {
12244       CPLErrorReset();
12245       result = (OGRErr)OGRFeatureShadow_SetFrom(arg1,arg2,arg3);
12246       CPLErr eclass = CPLGetLastErrorType();
12247       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
12248         do_confess( CPLGetLastErrorMsg(), 0 );
12249 
12250 
12251 
12252 
12253 
12254       }
12255 
12256 
12257       /*
12258           Make warnings regular Perl warnings. This duplicates the warning
12259           message if DontUseExceptions() is in effect (it is not by default).
12260           */
12261       if ( eclass == CE_Warning ) {
12262         warn( CPLGetLastErrorMsg(), "%s" );
12263       }
12264 
12265 
12266     }
12267     {
12268       /* %typemap(out) OGRErr */
12269       if ( result != 0 ) {
12270         const char *err = CPLGetLastErrorMsg();
12271         if (err and *err) do_confess(err, 0); /* this is usually better */
12272         do_confess( OGRErrMessages(result), 1 );
12273       }
12274     }
12275 
12276 
12277 
12278     XSRETURN(argvi);
12279   fail:
12280 
12281 
12282 
12283     SWIG_croak_null();
12284   }
12285 }
12286 
12287 
XS(_wrap_Feature_SetFromWithMap)12288 XS(_wrap_Feature_SetFromWithMap) {
12289   {
12290     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
12291     OGRFeatureShadow *arg2 = (OGRFeatureShadow *) 0 ;
12292     int arg3 ;
12293     int arg4 ;
12294     int *arg5 = (int *) 0 ;
12295     void *argp1 = 0 ;
12296     int res1 = 0 ;
12297     void *argp2 = 0 ;
12298     int res2 = 0 ;
12299     int val3 ;
12300     int ecode3 = 0 ;
12301     int argvi = 0;
12302     OGRErr result;
12303     dXSARGS;
12304 
12305     if ((items < 4) || (items > 4)) {
12306       SWIG_croak("Usage: Feature_SetFromWithMap(self,other,forgiving,nList,pList);");
12307     }
12308     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
12309     if (!SWIG_IsOK(res1)) {
12310       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetFromWithMap" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
12311     }
12312     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
12313     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
12314     if (!SWIG_IsOK(res2)) {
12315       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Feature_SetFromWithMap" "', argument " "2"" of type '" "OGRFeatureShadow *""'");
12316     }
12317     arg2 = reinterpret_cast< OGRFeatureShadow * >(argp2);
12318     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
12319     if (!SWIG_IsOK(ecode3)) {
12320       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Feature_SetFromWithMap" "', argument " "3"" of type '" "int""'");
12321     }
12322     arg3 = static_cast< int >(val3);
12323     {
12324       /* %typemap(in,numinputs=1) (int nList, int* pList) */
12325       if (!(SvROK(ST(3)) && (SvTYPE(SvRV(ST(3)))==SVt_PVAV)))
12326       do_confess(NEED_ARRAY_REF, 1);
12327       AV *av = (AV*)(SvRV(ST(3)));
12328       arg4 = av_len(av)+1;
12329       arg5 = (int*)CPLMalloc(arg4*sizeof(int));
12330       if (arg5) {
12331         for( int i = 0; i<arg4; i++ ) {
12332           SV **sv = av_fetch(av, i, 0);
12333           arg5[i] =  SvIV(*sv);
12334         }
12335       } else
12336       SWIG_fail;
12337     }
12338     {
12339       if (!arg2) {
12340         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
12341       }
12342     }
12343     {
12344       CPLErrorReset();
12345       result = (OGRErr)OGRFeatureShadow_SetFromWithMap(arg1,arg2,arg3,arg4,arg5);
12346       CPLErr eclass = CPLGetLastErrorType();
12347       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
12348         do_confess( CPLGetLastErrorMsg(), 0 );
12349 
12350 
12351 
12352 
12353 
12354       }
12355 
12356 
12357       /*
12358           Make warnings regular Perl warnings. This duplicates the warning
12359           message if DontUseExceptions() is in effect (it is not by default).
12360           */
12361       if ( eclass == CE_Warning ) {
12362         warn( CPLGetLastErrorMsg(), "%s" );
12363       }
12364 
12365 
12366     }
12367     {
12368       /* %typemap(out) OGRErr */
12369       if ( result != 0 ) {
12370         const char *err = CPLGetLastErrorMsg();
12371         if (err and *err) do_confess(err, 0); /* this is usually better */
12372         do_confess( OGRErrMessages(result), 1 );
12373       }
12374     }
12375 
12376 
12377 
12378     {
12379       /* %typemap(freearg) (int nList, int* pList) */
12380       CPLFree((void*) arg5);
12381     }
12382     XSRETURN(argvi);
12383   fail:
12384 
12385 
12386 
12387     {
12388       /* %typemap(freearg) (int nList, int* pList) */
12389       CPLFree((void*) arg5);
12390     }
12391     SWIG_croak_null();
12392   }
12393 }
12394 
12395 
XS(_wrap_Feature_GetStyleString)12396 XS(_wrap_Feature_GetStyleString) {
12397   {
12398     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
12399     void *argp1 = 0 ;
12400     int res1 = 0 ;
12401     int argvi = 0;
12402     char *result = 0 ;
12403     dXSARGS;
12404 
12405     if ((items < 1) || (items > 1)) {
12406       SWIG_croak("Usage: Feature_GetStyleString(self);");
12407     }
12408     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
12409     if (!SWIG_IsOK(res1)) {
12410       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetStyleString" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
12411     }
12412     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
12413     {
12414       CPLErrorReset();
12415       result = (char *)OGRFeatureShadow_GetStyleString(arg1);
12416       CPLErr eclass = CPLGetLastErrorType();
12417       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
12418         do_confess( CPLGetLastErrorMsg(), 0 );
12419 
12420 
12421 
12422 
12423 
12424       }
12425 
12426 
12427       /*
12428           Make warnings regular Perl warnings. This duplicates the warning
12429           message if DontUseExceptions() is in effect (it is not by default).
12430           */
12431       if ( eclass == CE_Warning ) {
12432         warn( CPLGetLastErrorMsg(), "%s" );
12433       }
12434 
12435 
12436     }
12437     {
12438       /* %typemap(out) const char * */
12439       ST(argvi) = newSVpv(result, 0);
12440       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
12441       sv_2mortal(ST(argvi));
12442       argvi++;
12443     }
12444 
12445     XSRETURN(argvi);
12446   fail:
12447 
12448     SWIG_croak_null();
12449   }
12450 }
12451 
12452 
XS(_wrap_Feature_SetStyleString)12453 XS(_wrap_Feature_SetStyleString) {
12454   {
12455     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
12456     char *arg2 = (char *) 0 ;
12457     void *argp1 = 0 ;
12458     int res1 = 0 ;
12459     int res2 ;
12460     char *buf2 = 0 ;
12461     int alloc2 = 0 ;
12462     int argvi = 0;
12463     dXSARGS;
12464 
12465     if ((items < 2) || (items > 2)) {
12466       SWIG_croak("Usage: Feature_SetStyleString(self,the_string);");
12467     }
12468     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
12469     if (!SWIG_IsOK(res1)) {
12470       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetStyleString" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
12471     }
12472     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
12473     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
12474     if (!SWIG_IsOK(res2)) {
12475       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Feature_SetStyleString" "', argument " "2"" of type '" "char const *""'");
12476     }
12477     arg2 = reinterpret_cast< char * >(buf2);
12478     {
12479       CPLErrorReset();
12480       OGRFeatureShadow_SetStyleString(arg1,(char const *)arg2);
12481       CPLErr eclass = CPLGetLastErrorType();
12482       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
12483         do_confess( CPLGetLastErrorMsg(), 0 );
12484 
12485 
12486 
12487 
12488 
12489       }
12490 
12491 
12492       /*
12493           Make warnings regular Perl warnings. This duplicates the warning
12494           message if DontUseExceptions() is in effect (it is not by default).
12495           */
12496       if ( eclass == CE_Warning ) {
12497         warn( CPLGetLastErrorMsg(), "%s" );
12498       }
12499 
12500 
12501     }
12502     {
12503       /* %typemap(out) void */
12504     }
12505 
12506     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
12507     XSRETURN(argvi);
12508   fail:
12509 
12510     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
12511     SWIG_croak_null();
12512   }
12513 }
12514 
12515 
XS(_wrap_Feature_GetFieldType)12516 XS(_wrap_Feature_GetFieldType) {
12517   {
12518     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
12519     int arg2 ;
12520     void *argp1 = 0 ;
12521     int res1 = 0 ;
12522     int val2 ;
12523     int ecode2 = 0 ;
12524     int argvi = 0;
12525     OGRFieldType result;
12526     dXSARGS;
12527 
12528     if ((items < 2) || (items > 2)) {
12529       SWIG_croak("Usage: Feature_GetFieldType(self,id);");
12530     }
12531     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
12532     if (!SWIG_IsOK(res1)) {
12533       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetFieldType" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
12534     }
12535     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
12536     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
12537     if (!SWIG_IsOK(ecode2)) {
12538       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_GetFieldType" "', argument " "2"" of type '" "int""'");
12539     }
12540     arg2 = static_cast< int >(val2);
12541     {
12542       CPLErrorReset();
12543       result = (OGRFieldType)OGRFeatureShadow_GetFieldType(arg1,arg2);
12544       CPLErr eclass = CPLGetLastErrorType();
12545       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
12546         do_confess( CPLGetLastErrorMsg(), 0 );
12547 
12548 
12549 
12550 
12551 
12552       }
12553 
12554 
12555       /*
12556           Make warnings regular Perl warnings. This duplicates the warning
12557           message if DontUseExceptions() is in effect (it is not by default).
12558           */
12559       if ( eclass == CE_Warning ) {
12560         warn( CPLGetLastErrorMsg(), "%s" );
12561       }
12562 
12563 
12564     }
12565     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
12566 
12567 
12568     XSRETURN(argvi);
12569   fail:
12570 
12571 
12572     SWIG_croak_null();
12573   }
12574 }
12575 
12576 
XS(_wrap_Feature__Validate)12577 XS(_wrap_Feature__Validate) {
12578   {
12579     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
12580     int arg2 = (int) OGR_F_VAL_ALL ;
12581     int arg3 = (int) TRUE ;
12582     void *argp1 = 0 ;
12583     int res1 = 0 ;
12584     int val2 ;
12585     int ecode2 = 0 ;
12586     int val3 ;
12587     int ecode3 = 0 ;
12588     int argvi = 0;
12589     int result;
12590     dXSARGS;
12591 
12592     if ((items < 1) || (items > 3)) {
12593       SWIG_croak("Usage: Feature__Validate(self,flags,bEmitError);");
12594     }
12595     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
12596     if (!SWIG_IsOK(res1)) {
12597       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature__Validate" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
12598     }
12599     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
12600     if (items > 1) {
12601       ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
12602       if (!SWIG_IsOK(ecode2)) {
12603         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature__Validate" "', argument " "2"" of type '" "int""'");
12604       }
12605       arg2 = static_cast< int >(val2);
12606     }
12607     if (items > 2) {
12608       ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
12609       if (!SWIG_IsOK(ecode3)) {
12610         SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Feature__Validate" "', argument " "3"" of type '" "int""'");
12611       }
12612       arg3 = static_cast< int >(val3);
12613     }
12614     {
12615       CPLErrorReset();
12616       result = (int)OGRFeatureShadow_Validate(arg1,arg2,arg3);
12617       CPLErr eclass = CPLGetLastErrorType();
12618       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
12619         do_confess( CPLGetLastErrorMsg(), 0 );
12620 
12621 
12622 
12623 
12624 
12625       }
12626 
12627 
12628       /*
12629           Make warnings regular Perl warnings. This duplicates the warning
12630           message if DontUseExceptions() is in effect (it is not by default).
12631           */
12632       if ( eclass == CE_Warning ) {
12633         warn( CPLGetLastErrorMsg(), "%s" );
12634       }
12635 
12636 
12637     }
12638     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
12639 
12640 
12641 
12642     XSRETURN(argvi);
12643   fail:
12644 
12645 
12646 
12647     SWIG_croak_null();
12648   }
12649 }
12650 
12651 
XS(_wrap_Feature_FillUnsetWithDefault)12652 XS(_wrap_Feature_FillUnsetWithDefault) {
12653   {
12654     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
12655     int arg2 = (int) FALSE ;
12656     char **arg3 = (char **) NULL ;
12657     void *argp1 = 0 ;
12658     int res1 = 0 ;
12659     int val2 ;
12660     int ecode2 = 0 ;
12661     int argvi = 0;
12662     dXSARGS;
12663 
12664     if ((items < 1) || (items > 3)) {
12665       SWIG_croak("Usage: Feature_FillUnsetWithDefault(self,bNotNullableOnly,options);");
12666     }
12667     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
12668     if (!SWIG_IsOK(res1)) {
12669       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_FillUnsetWithDefault" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
12670     }
12671     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
12672     if (items > 1) {
12673       ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
12674       if (!SWIG_IsOK(ecode2)) {
12675         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Feature_FillUnsetWithDefault" "', argument " "2"" of type '" "int""'");
12676       }
12677       arg2 = static_cast< int >(val2);
12678     }
12679     if (items > 2) {
12680       {
12681         /* %typemap(in) char **options */
12682         if (SvOK(ST(2))) {
12683           if (SvROK(ST(2))) {
12684             if (SvTYPE(SvRV(ST(2)))==SVt_PVAV) {
12685               AV *av = (AV*)(SvRV(ST(2)));
12686               for (int i = 0; i < av_len(av)+1; i++) {
12687                 SV *sv = *(av_fetch(av, i, 0));
12688                 bool sf;
12689                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
12690                 arg3 = CSLAddString(arg3, tmp);
12691                 if (sf) Safefree(tmp); else free(tmp);
12692               }
12693             } else if (SvTYPE(SvRV(ST(2)))==SVt_PVHV) {
12694               HV *hv = (HV*)SvRV(ST(2));
12695               SV *sv;
12696               char *key;
12697               I32 klen;
12698               arg3 = NULL;
12699               hv_iterinit(hv);
12700               while(sv = hv_iternextsv(hv, &key, &klen)) {
12701                 bool sf;
12702                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
12703                 arg3 = CSLAddNameValue(arg3, key, tmp);
12704                 if (sf) Safefree(tmp); else free(tmp);
12705               }
12706             } else
12707             do_confess(NEED_REF, 1);
12708           } else
12709           do_confess(NEED_REF, 1);
12710         }
12711       }
12712     }
12713     {
12714       CPLErrorReset();
12715       OGRFeatureShadow_FillUnsetWithDefault(arg1,arg2,arg3);
12716       CPLErr eclass = CPLGetLastErrorType();
12717       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
12718         do_confess( CPLGetLastErrorMsg(), 0 );
12719 
12720 
12721 
12722 
12723 
12724       }
12725 
12726 
12727       /*
12728           Make warnings regular Perl warnings. This duplicates the warning
12729           message if DontUseExceptions() is in effect (it is not by default).
12730           */
12731       if ( eclass == CE_Warning ) {
12732         warn( CPLGetLastErrorMsg(), "%s" );
12733       }
12734 
12735 
12736     }
12737     {
12738       /* %typemap(out) void */
12739     }
12740 
12741 
12742     {
12743       /* %typemap(freearg) char **options */
12744       if (arg3) CSLDestroy( arg3 );
12745     }
12746     XSRETURN(argvi);
12747   fail:
12748 
12749 
12750     {
12751       /* %typemap(freearg) char **options */
12752       if (arg3) CSLDestroy( arg3 );
12753     }
12754     SWIG_croak_null();
12755   }
12756 }
12757 
12758 
XS(_wrap_Feature_GetNativeData)12759 XS(_wrap_Feature_GetNativeData) {
12760   {
12761     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
12762     void *argp1 = 0 ;
12763     int res1 = 0 ;
12764     int argvi = 0;
12765     char *result = 0 ;
12766     dXSARGS;
12767 
12768     if ((items < 1) || (items > 1)) {
12769       SWIG_croak("Usage: Feature_GetNativeData(self);");
12770     }
12771     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
12772     if (!SWIG_IsOK(res1)) {
12773       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetNativeData" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
12774     }
12775     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
12776     {
12777       CPLErrorReset();
12778       result = (char *)OGRFeatureShadow_GetNativeData(arg1);
12779       CPLErr eclass = CPLGetLastErrorType();
12780       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
12781         do_confess( CPLGetLastErrorMsg(), 0 );
12782 
12783 
12784 
12785 
12786 
12787       }
12788 
12789 
12790       /*
12791           Make warnings regular Perl warnings. This duplicates the warning
12792           message if DontUseExceptions() is in effect (it is not by default).
12793           */
12794       if ( eclass == CE_Warning ) {
12795         warn( CPLGetLastErrorMsg(), "%s" );
12796       }
12797 
12798 
12799     }
12800     {
12801       /* %typemap(out) const char * */
12802       ST(argvi) = newSVpv(result, 0);
12803       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
12804       sv_2mortal(ST(argvi));
12805       argvi++;
12806     }
12807 
12808     XSRETURN(argvi);
12809   fail:
12810 
12811     SWIG_croak_null();
12812   }
12813 }
12814 
12815 
XS(_wrap_Feature_GetNativeMediaType)12816 XS(_wrap_Feature_GetNativeMediaType) {
12817   {
12818     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
12819     void *argp1 = 0 ;
12820     int res1 = 0 ;
12821     int argvi = 0;
12822     char *result = 0 ;
12823     dXSARGS;
12824 
12825     if ((items < 1) || (items > 1)) {
12826       SWIG_croak("Usage: Feature_GetNativeMediaType(self);");
12827     }
12828     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
12829     if (!SWIG_IsOK(res1)) {
12830       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_GetNativeMediaType" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
12831     }
12832     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
12833     {
12834       CPLErrorReset();
12835       result = (char *)OGRFeatureShadow_GetNativeMediaType(arg1);
12836       CPLErr eclass = CPLGetLastErrorType();
12837       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
12838         do_confess( CPLGetLastErrorMsg(), 0 );
12839 
12840 
12841 
12842 
12843 
12844       }
12845 
12846 
12847       /*
12848           Make warnings regular Perl warnings. This duplicates the warning
12849           message if DontUseExceptions() is in effect (it is not by default).
12850           */
12851       if ( eclass == CE_Warning ) {
12852         warn( CPLGetLastErrorMsg(), "%s" );
12853       }
12854 
12855 
12856     }
12857     {
12858       /* %typemap(out) const char * */
12859       ST(argvi) = newSVpv(result, 0);
12860       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
12861       sv_2mortal(ST(argvi));
12862       argvi++;
12863     }
12864 
12865     XSRETURN(argvi);
12866   fail:
12867 
12868     SWIG_croak_null();
12869   }
12870 }
12871 
12872 
XS(_wrap_Feature_SetNativeData)12873 XS(_wrap_Feature_SetNativeData) {
12874   {
12875     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
12876     char *arg2 = (char *) 0 ;
12877     void *argp1 = 0 ;
12878     int res1 = 0 ;
12879     int res2 ;
12880     char *buf2 = 0 ;
12881     int alloc2 = 0 ;
12882     int argvi = 0;
12883     dXSARGS;
12884 
12885     if ((items < 2) || (items > 2)) {
12886       SWIG_croak("Usage: Feature_SetNativeData(self,nativeData);");
12887     }
12888     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
12889     if (!SWIG_IsOK(res1)) {
12890       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetNativeData" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
12891     }
12892     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
12893     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
12894     if (!SWIG_IsOK(res2)) {
12895       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Feature_SetNativeData" "', argument " "2"" of type '" "char const *""'");
12896     }
12897     arg2 = reinterpret_cast< char * >(buf2);
12898     {
12899       CPLErrorReset();
12900       OGRFeatureShadow_SetNativeData(arg1,(char const *)arg2);
12901       CPLErr eclass = CPLGetLastErrorType();
12902       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
12903         do_confess( CPLGetLastErrorMsg(), 0 );
12904 
12905 
12906 
12907 
12908 
12909       }
12910 
12911 
12912       /*
12913           Make warnings regular Perl warnings. This duplicates the warning
12914           message if DontUseExceptions() is in effect (it is not by default).
12915           */
12916       if ( eclass == CE_Warning ) {
12917         warn( CPLGetLastErrorMsg(), "%s" );
12918       }
12919 
12920 
12921     }
12922     {
12923       /* %typemap(out) void */
12924     }
12925 
12926     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
12927     XSRETURN(argvi);
12928   fail:
12929 
12930     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
12931     SWIG_croak_null();
12932   }
12933 }
12934 
12935 
XS(_wrap_Feature_SetNativeMediaType)12936 XS(_wrap_Feature_SetNativeMediaType) {
12937   {
12938     OGRFeatureShadow *arg1 = (OGRFeatureShadow *) 0 ;
12939     char *arg2 = (char *) 0 ;
12940     void *argp1 = 0 ;
12941     int res1 = 0 ;
12942     int res2 ;
12943     char *buf2 = 0 ;
12944     int alloc2 = 0 ;
12945     int argvi = 0;
12946     dXSARGS;
12947 
12948     if ((items < 2) || (items > 2)) {
12949       SWIG_croak("Usage: Feature_SetNativeMediaType(self,nativeMediaType);");
12950     }
12951     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureShadow, 0 |  0 );
12952     if (!SWIG_IsOK(res1)) {
12953       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Feature_SetNativeMediaType" "', argument " "1"" of type '" "OGRFeatureShadow *""'");
12954     }
12955     arg1 = reinterpret_cast< OGRFeatureShadow * >(argp1);
12956     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
12957     if (!SWIG_IsOK(res2)) {
12958       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Feature_SetNativeMediaType" "', argument " "2"" of type '" "char const *""'");
12959     }
12960     arg2 = reinterpret_cast< char * >(buf2);
12961     {
12962       CPLErrorReset();
12963       OGRFeatureShadow_SetNativeMediaType(arg1,(char const *)arg2);
12964       CPLErr eclass = CPLGetLastErrorType();
12965       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
12966         do_confess( CPLGetLastErrorMsg(), 0 );
12967 
12968 
12969 
12970 
12971 
12972       }
12973 
12974 
12975       /*
12976           Make warnings regular Perl warnings. This duplicates the warning
12977           message if DontUseExceptions() is in effect (it is not by default).
12978           */
12979       if ( eclass == CE_Warning ) {
12980         warn( CPLGetLastErrorMsg(), "%s" );
12981       }
12982 
12983 
12984     }
12985     {
12986       /* %typemap(out) void */
12987     }
12988 
12989     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
12990     XSRETURN(argvi);
12991   fail:
12992 
12993     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
12994     SWIG_croak_null();
12995   }
12996 }
12997 
12998 
XS(_wrap_delete_FeatureDefn)12999 XS(_wrap_delete_FeatureDefn) {
13000   {
13001     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13002     void *argp1 = 0 ;
13003     int res1 = 0 ;
13004     int argvi = 0;
13005     dXSARGS;
13006 
13007     if ((items < 1) || (items > 1)) {
13008       SWIG_croak("Usage: delete_FeatureDefn(self);");
13009     }
13010     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, SWIG_POINTER_DISOWN |  0 );
13011     if (!SWIG_IsOK(res1)) {
13012       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_FeatureDefn" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
13013     }
13014     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
13015     {
13016       CPLErrorReset();
13017       delete_OGRFeatureDefnShadow(arg1);
13018       CPLErr eclass = CPLGetLastErrorType();
13019       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13020         do_confess( CPLGetLastErrorMsg(), 0 );
13021 
13022 
13023 
13024 
13025 
13026       }
13027 
13028 
13029       /*
13030           Make warnings regular Perl warnings. This duplicates the warning
13031           message if DontUseExceptions() is in effect (it is not by default).
13032           */
13033       if ( eclass == CE_Warning ) {
13034         warn( CPLGetLastErrorMsg(), "%s" );
13035       }
13036 
13037 
13038     }
13039     {
13040       /* %typemap(out) void */
13041     }
13042 
13043     XSRETURN(argvi);
13044   fail:
13045 
13046     SWIG_croak_null();
13047   }
13048 }
13049 
13050 
XS(_wrap_new_FeatureDefn)13051 XS(_wrap_new_FeatureDefn) {
13052   {
13053     char *arg1 = (char *) NULL ;
13054     int res1 ;
13055     char *buf1 = 0 ;
13056     int alloc1 = 0 ;
13057     int argvi = 0;
13058     OGRFeatureDefnShadow *result = 0 ;
13059     dXSARGS;
13060 
13061     if ((items < 0) || (items > 1)) {
13062       SWIG_croak("Usage: new_FeatureDefn(name_null_ok);");
13063     }
13064     if (items > 0) {
13065       res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
13066       if (!SWIG_IsOK(res1)) {
13067         SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_FeatureDefn" "', argument " "1"" of type '" "char const *""'");
13068       }
13069       arg1 = reinterpret_cast< char * >(buf1);
13070     }
13071     {
13072       CPLErrorReset();
13073       result = (OGRFeatureDefnShadow *)new_OGRFeatureDefnShadow((char const *)arg1);
13074       CPLErr eclass = CPLGetLastErrorType();
13075       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13076         do_confess( CPLGetLastErrorMsg(), 0 );
13077 
13078 
13079 
13080 
13081 
13082       }
13083 
13084 
13085       /*
13086           Make warnings regular Perl warnings. This duplicates the warning
13087           message if DontUseExceptions() is in effect (it is not by default).
13088           */
13089       if ( eclass == CE_Warning ) {
13090         warn( CPLGetLastErrorMsg(), "%s" );
13091       }
13092 
13093 
13094     }
13095     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRFeatureDefnShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
13096     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
13097     XSRETURN(argvi);
13098   fail:
13099     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
13100     SWIG_croak_null();
13101   }
13102 }
13103 
13104 
XS(_wrap_FeatureDefn_GetName)13105 XS(_wrap_FeatureDefn_GetName) {
13106   {
13107     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13108     void *argp1 = 0 ;
13109     int res1 = 0 ;
13110     int argvi = 0;
13111     char *result = 0 ;
13112     dXSARGS;
13113 
13114     if ((items < 1) || (items > 1)) {
13115       SWIG_croak("Usage: FeatureDefn_GetName(self);");
13116     }
13117     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
13118     if (!SWIG_IsOK(res1)) {
13119       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn_GetName" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
13120     }
13121     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
13122     {
13123       CPLErrorReset();
13124       result = (char *)OGRFeatureDefnShadow_GetName(arg1);
13125       CPLErr eclass = CPLGetLastErrorType();
13126       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13127         do_confess( CPLGetLastErrorMsg(), 0 );
13128 
13129 
13130 
13131 
13132 
13133       }
13134 
13135 
13136       /*
13137           Make warnings regular Perl warnings. This duplicates the warning
13138           message if DontUseExceptions() is in effect (it is not by default).
13139           */
13140       if ( eclass == CE_Warning ) {
13141         warn( CPLGetLastErrorMsg(), "%s" );
13142       }
13143 
13144 
13145     }
13146     {
13147       /* %typemap(out) const char * */
13148       ST(argvi) = newSVpv(result, 0);
13149       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
13150       sv_2mortal(ST(argvi));
13151       argvi++;
13152     }
13153 
13154     XSRETURN(argvi);
13155   fail:
13156 
13157     SWIG_croak_null();
13158   }
13159 }
13160 
13161 
XS(_wrap_FeatureDefn_GetFieldCount)13162 XS(_wrap_FeatureDefn_GetFieldCount) {
13163   {
13164     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13165     void *argp1 = 0 ;
13166     int res1 = 0 ;
13167     int argvi = 0;
13168     int result;
13169     dXSARGS;
13170 
13171     if ((items < 1) || (items > 1)) {
13172       SWIG_croak("Usage: FeatureDefn_GetFieldCount(self);");
13173     }
13174     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
13175     if (!SWIG_IsOK(res1)) {
13176       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn_GetFieldCount" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
13177     }
13178     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
13179     {
13180       CPLErrorReset();
13181       result = (int)OGRFeatureDefnShadow_GetFieldCount(arg1);
13182       CPLErr eclass = CPLGetLastErrorType();
13183       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13184         do_confess( CPLGetLastErrorMsg(), 0 );
13185 
13186 
13187 
13188 
13189 
13190       }
13191 
13192 
13193       /*
13194           Make warnings regular Perl warnings. This duplicates the warning
13195           message if DontUseExceptions() is in effect (it is not by default).
13196           */
13197       if ( eclass == CE_Warning ) {
13198         warn( CPLGetLastErrorMsg(), "%s" );
13199       }
13200 
13201 
13202     }
13203     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
13204 
13205     XSRETURN(argvi);
13206   fail:
13207 
13208     SWIG_croak_null();
13209   }
13210 }
13211 
13212 
XS(_wrap_FeatureDefn__GetFieldDefn)13213 XS(_wrap_FeatureDefn__GetFieldDefn) {
13214   {
13215     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13216     int arg2 ;
13217     void *argp1 = 0 ;
13218     int res1 = 0 ;
13219     int val2 ;
13220     int ecode2 = 0 ;
13221     int argvi = 0;
13222     OGRFieldDefnShadow *result = 0 ;
13223     dXSARGS;
13224 
13225     if ((items < 2) || (items > 2)) {
13226       SWIG_croak("Usage: FeatureDefn__GetFieldDefn(self,i);");
13227     }
13228     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
13229     if (!SWIG_IsOK(res1)) {
13230       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn__GetFieldDefn" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
13231     }
13232     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
13233     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
13234     if (!SWIG_IsOK(ecode2)) {
13235       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FeatureDefn__GetFieldDefn" "', argument " "2"" of type '" "int""'");
13236     }
13237     arg2 = static_cast< int >(val2);
13238     {
13239       CPLErrorReset();
13240       result = (OGRFieldDefnShadow *)OGRFeatureDefnShadow_GetFieldDefn(arg1,arg2);
13241       CPLErr eclass = CPLGetLastErrorType();
13242       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13243         do_confess( CPLGetLastErrorMsg(), 0 );
13244 
13245 
13246 
13247 
13248 
13249       }
13250 
13251 
13252       /*
13253           Make warnings regular Perl warnings. This duplicates the warning
13254           message if DontUseExceptions() is in effect (it is not by default).
13255           */
13256       if ( eclass == CE_Warning ) {
13257         warn( CPLGetLastErrorMsg(), "%s" );
13258       }
13259 
13260 
13261     }
13262     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRFieldDefnShadow, 0 | SWIG_SHADOW); argvi++ ;
13263 
13264 
13265     XSRETURN(argvi);
13266   fail:
13267 
13268 
13269     SWIG_croak_null();
13270   }
13271 }
13272 
13273 
XS(_wrap_FeatureDefn__GetFieldIndex)13274 XS(_wrap_FeatureDefn__GetFieldIndex) {
13275   {
13276     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13277     char *arg2 = (char *) 0 ;
13278     void *argp1 = 0 ;
13279     int res1 = 0 ;
13280     U8 *tmpbuf2 = NULL ;
13281     int argvi = 0;
13282     int result;
13283     dXSARGS;
13284 
13285     if ((items < 2) || (items > 2)) {
13286       SWIG_croak("Usage: FeatureDefn__GetFieldIndex(self,field_name);");
13287     }
13288     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
13289     if (!SWIG_IsOK(res1)) {
13290       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn__GetFieldIndex" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
13291     }
13292     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
13293     {
13294       /* %typemap(in,numinputs=1) (const char* field_name) */
13295       arg2 = sv_to_utf8_string(ST(1), &tmpbuf2);
13296     }
13297     {
13298       CPLErrorReset();
13299       result = (int)OGRFeatureDefnShadow_GetFieldIndex(arg1,(char const *)arg2);
13300       CPLErr eclass = CPLGetLastErrorType();
13301       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13302         do_confess( CPLGetLastErrorMsg(), 0 );
13303 
13304 
13305 
13306 
13307 
13308       }
13309 
13310 
13311       /*
13312           Make warnings regular Perl warnings. This duplicates the warning
13313           message if DontUseExceptions() is in effect (it is not by default).
13314           */
13315       if ( eclass == CE_Warning ) {
13316         warn( CPLGetLastErrorMsg(), "%s" );
13317       }
13318 
13319 
13320     }
13321     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
13322 
13323     {
13324       /* %typemap(freearg) (const char* field_name) */
13325       if (tmpbuf2) Safefree(tmpbuf2);
13326     }
13327     XSRETURN(argvi);
13328   fail:
13329 
13330     {
13331       /* %typemap(freearg) (const char* field_name) */
13332       if (tmpbuf2) Safefree(tmpbuf2);
13333     }
13334     SWIG_croak_null();
13335   }
13336 }
13337 
13338 
XS(_wrap_FeatureDefn_AddFieldDefn)13339 XS(_wrap_FeatureDefn_AddFieldDefn) {
13340   {
13341     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13342     OGRFieldDefnShadow *arg2 = (OGRFieldDefnShadow *) 0 ;
13343     void *argp1 = 0 ;
13344     int res1 = 0 ;
13345     void *argp2 = 0 ;
13346     int res2 = 0 ;
13347     int argvi = 0;
13348     dXSARGS;
13349 
13350     if ((items < 2) || (items > 2)) {
13351       SWIG_croak("Usage: FeatureDefn_AddFieldDefn(self,defn);");
13352     }
13353     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
13354     if (!SWIG_IsOK(res1)) {
13355       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn_AddFieldDefn" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
13356     }
13357     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
13358     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
13359     if (!SWIG_IsOK(res2)) {
13360       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "FeatureDefn_AddFieldDefn" "', argument " "2"" of type '" "OGRFieldDefnShadow *""'");
13361     }
13362     arg2 = reinterpret_cast< OGRFieldDefnShadow * >(argp2);
13363     {
13364       if (!arg2) {
13365         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
13366       }
13367     }
13368     {
13369       CPLErrorReset();
13370       OGRFeatureDefnShadow_AddFieldDefn(arg1,arg2);
13371       CPLErr eclass = CPLGetLastErrorType();
13372       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13373         do_confess( CPLGetLastErrorMsg(), 0 );
13374 
13375 
13376 
13377 
13378 
13379       }
13380 
13381 
13382       /*
13383           Make warnings regular Perl warnings. This duplicates the warning
13384           message if DontUseExceptions() is in effect (it is not by default).
13385           */
13386       if ( eclass == CE_Warning ) {
13387         warn( CPLGetLastErrorMsg(), "%s" );
13388       }
13389 
13390 
13391     }
13392     {
13393       /* %typemap(out) void */
13394     }
13395 
13396 
13397     XSRETURN(argvi);
13398   fail:
13399 
13400 
13401     SWIG_croak_null();
13402   }
13403 }
13404 
13405 
XS(_wrap_FeatureDefn_GetGeomFieldCount)13406 XS(_wrap_FeatureDefn_GetGeomFieldCount) {
13407   {
13408     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13409     void *argp1 = 0 ;
13410     int res1 = 0 ;
13411     int argvi = 0;
13412     int result;
13413     dXSARGS;
13414 
13415     if ((items < 1) || (items > 1)) {
13416       SWIG_croak("Usage: FeatureDefn_GetGeomFieldCount(self);");
13417     }
13418     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
13419     if (!SWIG_IsOK(res1)) {
13420       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn_GetGeomFieldCount" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
13421     }
13422     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
13423     {
13424       CPLErrorReset();
13425       result = (int)OGRFeatureDefnShadow_GetGeomFieldCount(arg1);
13426       CPLErr eclass = CPLGetLastErrorType();
13427       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13428         do_confess( CPLGetLastErrorMsg(), 0 );
13429 
13430 
13431 
13432 
13433 
13434       }
13435 
13436 
13437       /*
13438           Make warnings regular Perl warnings. This duplicates the warning
13439           message if DontUseExceptions() is in effect (it is not by default).
13440           */
13441       if ( eclass == CE_Warning ) {
13442         warn( CPLGetLastErrorMsg(), "%s" );
13443       }
13444 
13445 
13446     }
13447     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
13448 
13449     XSRETURN(argvi);
13450   fail:
13451 
13452     SWIG_croak_null();
13453   }
13454 }
13455 
13456 
XS(_wrap_FeatureDefn__GetGeomFieldDefn)13457 XS(_wrap_FeatureDefn__GetGeomFieldDefn) {
13458   {
13459     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13460     int arg2 ;
13461     void *argp1 = 0 ;
13462     int res1 = 0 ;
13463     int val2 ;
13464     int ecode2 = 0 ;
13465     int argvi = 0;
13466     OGRGeomFieldDefnShadow *result = 0 ;
13467     dXSARGS;
13468 
13469     if ((items < 2) || (items > 2)) {
13470       SWIG_croak("Usage: FeatureDefn__GetGeomFieldDefn(self,i);");
13471     }
13472     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
13473     if (!SWIG_IsOK(res1)) {
13474       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn__GetGeomFieldDefn" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
13475     }
13476     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
13477     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
13478     if (!SWIG_IsOK(ecode2)) {
13479       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FeatureDefn__GetGeomFieldDefn" "', argument " "2"" of type '" "int""'");
13480     }
13481     arg2 = static_cast< int >(val2);
13482     {
13483       CPLErrorReset();
13484       result = (OGRGeomFieldDefnShadow *)OGRFeatureDefnShadow_GetGeomFieldDefn(arg1,arg2);
13485       CPLErr eclass = CPLGetLastErrorType();
13486       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13487         do_confess( CPLGetLastErrorMsg(), 0 );
13488 
13489 
13490 
13491 
13492 
13493       }
13494 
13495 
13496       /*
13497           Make warnings regular Perl warnings. This duplicates the warning
13498           message if DontUseExceptions() is in effect (it is not by default).
13499           */
13500       if ( eclass == CE_Warning ) {
13501         warn( CPLGetLastErrorMsg(), "%s" );
13502       }
13503 
13504 
13505     }
13506     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeomFieldDefnShadow, 0 | SWIG_SHADOW); argvi++ ;
13507 
13508 
13509     XSRETURN(argvi);
13510   fail:
13511 
13512 
13513     SWIG_croak_null();
13514   }
13515 }
13516 
13517 
XS(_wrap_FeatureDefn__GetGeomFieldIndex)13518 XS(_wrap_FeatureDefn__GetGeomFieldIndex) {
13519   {
13520     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13521     char *arg2 = (char *) 0 ;
13522     void *argp1 = 0 ;
13523     int res1 = 0 ;
13524     U8 *tmpbuf2 = NULL ;
13525     int argvi = 0;
13526     int result;
13527     dXSARGS;
13528 
13529     if ((items < 2) || (items > 2)) {
13530       SWIG_croak("Usage: FeatureDefn__GetGeomFieldIndex(self,field_name);");
13531     }
13532     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
13533     if (!SWIG_IsOK(res1)) {
13534       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn__GetGeomFieldIndex" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
13535     }
13536     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
13537     {
13538       /* %typemap(in,numinputs=1) (const char* field_name) */
13539       arg2 = sv_to_utf8_string(ST(1), &tmpbuf2);
13540     }
13541     {
13542       CPLErrorReset();
13543       result = (int)OGRFeatureDefnShadow_GetGeomFieldIndex(arg1,(char const *)arg2);
13544       CPLErr eclass = CPLGetLastErrorType();
13545       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13546         do_confess( CPLGetLastErrorMsg(), 0 );
13547 
13548 
13549 
13550 
13551 
13552       }
13553 
13554 
13555       /*
13556           Make warnings regular Perl warnings. This duplicates the warning
13557           message if DontUseExceptions() is in effect (it is not by default).
13558           */
13559       if ( eclass == CE_Warning ) {
13560         warn( CPLGetLastErrorMsg(), "%s" );
13561       }
13562 
13563 
13564     }
13565     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
13566 
13567     {
13568       /* %typemap(freearg) (const char* field_name) */
13569       if (tmpbuf2) Safefree(tmpbuf2);
13570     }
13571     XSRETURN(argvi);
13572   fail:
13573 
13574     {
13575       /* %typemap(freearg) (const char* field_name) */
13576       if (tmpbuf2) Safefree(tmpbuf2);
13577     }
13578     SWIG_croak_null();
13579   }
13580 }
13581 
13582 
XS(_wrap_FeatureDefn_AddGeomFieldDefn)13583 XS(_wrap_FeatureDefn_AddGeomFieldDefn) {
13584   {
13585     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13586     OGRGeomFieldDefnShadow *arg2 = (OGRGeomFieldDefnShadow *) 0 ;
13587     void *argp1 = 0 ;
13588     int res1 = 0 ;
13589     void *argp2 = 0 ;
13590     int res2 = 0 ;
13591     int argvi = 0;
13592     dXSARGS;
13593 
13594     if ((items < 2) || (items > 2)) {
13595       SWIG_croak("Usage: FeatureDefn_AddGeomFieldDefn(self,defn);");
13596     }
13597     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
13598     if (!SWIG_IsOK(res1)) {
13599       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn_AddGeomFieldDefn" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
13600     }
13601     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
13602     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeomFieldDefnShadow, 0 |  0 );
13603     if (!SWIG_IsOK(res2)) {
13604       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "FeatureDefn_AddGeomFieldDefn" "', argument " "2"" of type '" "OGRGeomFieldDefnShadow *""'");
13605     }
13606     arg2 = reinterpret_cast< OGRGeomFieldDefnShadow * >(argp2);
13607     {
13608       if (!arg2) {
13609         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
13610       }
13611     }
13612     {
13613       CPLErrorReset();
13614       OGRFeatureDefnShadow_AddGeomFieldDefn(arg1,arg2);
13615       CPLErr eclass = CPLGetLastErrorType();
13616       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13617         do_confess( CPLGetLastErrorMsg(), 0 );
13618 
13619 
13620 
13621 
13622 
13623       }
13624 
13625 
13626       /*
13627           Make warnings regular Perl warnings. This duplicates the warning
13628           message if DontUseExceptions() is in effect (it is not by default).
13629           */
13630       if ( eclass == CE_Warning ) {
13631         warn( CPLGetLastErrorMsg(), "%s" );
13632       }
13633 
13634 
13635     }
13636     {
13637       /* %typemap(out) void */
13638     }
13639 
13640 
13641     XSRETURN(argvi);
13642   fail:
13643 
13644 
13645     SWIG_croak_null();
13646   }
13647 }
13648 
13649 
XS(_wrap_FeatureDefn_DeleteGeomFieldDefn)13650 XS(_wrap_FeatureDefn_DeleteGeomFieldDefn) {
13651   {
13652     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13653     int arg2 ;
13654     void *argp1 = 0 ;
13655     int res1 = 0 ;
13656     int val2 ;
13657     int ecode2 = 0 ;
13658     int argvi = 0;
13659     OGRErr result;
13660     dXSARGS;
13661 
13662     if ((items < 2) || (items > 2)) {
13663       SWIG_croak("Usage: FeatureDefn_DeleteGeomFieldDefn(self,idx);");
13664     }
13665     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
13666     if (!SWIG_IsOK(res1)) {
13667       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn_DeleteGeomFieldDefn" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
13668     }
13669     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
13670     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
13671     if (!SWIG_IsOK(ecode2)) {
13672       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FeatureDefn_DeleteGeomFieldDefn" "', argument " "2"" of type '" "int""'");
13673     }
13674     arg2 = static_cast< int >(val2);
13675     {
13676       CPLErrorReset();
13677       result = (OGRErr)OGRFeatureDefnShadow_DeleteGeomFieldDefn(arg1,arg2);
13678       CPLErr eclass = CPLGetLastErrorType();
13679       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13680         do_confess( CPLGetLastErrorMsg(), 0 );
13681 
13682 
13683 
13684 
13685 
13686       }
13687 
13688 
13689       /*
13690           Make warnings regular Perl warnings. This duplicates the warning
13691           message if DontUseExceptions() is in effect (it is not by default).
13692           */
13693       if ( eclass == CE_Warning ) {
13694         warn( CPLGetLastErrorMsg(), "%s" );
13695       }
13696 
13697 
13698     }
13699     {
13700       /* %typemap(out) OGRErr */
13701       if ( result != 0 ) {
13702         const char *err = CPLGetLastErrorMsg();
13703         if (err and *err) do_confess(err, 0); /* this is usually better */
13704         do_confess( OGRErrMessages(result), 1 );
13705       }
13706     }
13707 
13708 
13709     XSRETURN(argvi);
13710   fail:
13711 
13712 
13713     SWIG_croak_null();
13714   }
13715 }
13716 
13717 
XS(_wrap_FeatureDefn_GetGeomType)13718 XS(_wrap_FeatureDefn_GetGeomType) {
13719   {
13720     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13721     void *argp1 = 0 ;
13722     int res1 = 0 ;
13723     int argvi = 0;
13724     OGRwkbGeometryType result;
13725     dXSARGS;
13726 
13727     if ((items < 1) || (items > 1)) {
13728       SWIG_croak("Usage: FeatureDefn_GetGeomType(self);");
13729     }
13730     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
13731     if (!SWIG_IsOK(res1)) {
13732       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn_GetGeomType" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
13733     }
13734     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
13735     {
13736       CPLErrorReset();
13737       result = (OGRwkbGeometryType)OGRFeatureDefnShadow_GetGeomType(arg1);
13738       CPLErr eclass = CPLGetLastErrorType();
13739       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13740         do_confess( CPLGetLastErrorMsg(), 0 );
13741 
13742 
13743 
13744 
13745 
13746       }
13747 
13748 
13749       /*
13750           Make warnings regular Perl warnings. This duplicates the warning
13751           message if DontUseExceptions() is in effect (it is not by default).
13752           */
13753       if ( eclass == CE_Warning ) {
13754         warn( CPLGetLastErrorMsg(), "%s" );
13755       }
13756 
13757 
13758     }
13759     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
13760 
13761     XSRETURN(argvi);
13762   fail:
13763 
13764     SWIG_croak_null();
13765   }
13766 }
13767 
13768 
XS(_wrap_FeatureDefn_SetGeomType)13769 XS(_wrap_FeatureDefn_SetGeomType) {
13770   {
13771     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13772     OGRwkbGeometryType arg2 ;
13773     void *argp1 = 0 ;
13774     int res1 = 0 ;
13775     int val2 ;
13776     int ecode2 = 0 ;
13777     int argvi = 0;
13778     dXSARGS;
13779 
13780     if ((items < 2) || (items > 2)) {
13781       SWIG_croak("Usage: FeatureDefn_SetGeomType(self,geom_type);");
13782     }
13783     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
13784     if (!SWIG_IsOK(res1)) {
13785       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn_SetGeomType" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
13786     }
13787     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
13788     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
13789     if (!SWIG_IsOK(ecode2)) {
13790       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FeatureDefn_SetGeomType" "', argument " "2"" of type '" "OGRwkbGeometryType""'");
13791     }
13792     arg2 = static_cast< OGRwkbGeometryType >(val2);
13793     {
13794       CPLErrorReset();
13795       OGRFeatureDefnShadow_SetGeomType(arg1,arg2);
13796       CPLErr eclass = CPLGetLastErrorType();
13797       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13798         do_confess( CPLGetLastErrorMsg(), 0 );
13799 
13800 
13801 
13802 
13803 
13804       }
13805 
13806 
13807       /*
13808           Make warnings regular Perl warnings. This duplicates the warning
13809           message if DontUseExceptions() is in effect (it is not by default).
13810           */
13811       if ( eclass == CE_Warning ) {
13812         warn( CPLGetLastErrorMsg(), "%s" );
13813       }
13814 
13815 
13816     }
13817     {
13818       /* %typemap(out) void */
13819     }
13820 
13821 
13822     XSRETURN(argvi);
13823   fail:
13824 
13825 
13826     SWIG_croak_null();
13827   }
13828 }
13829 
13830 
XS(_wrap_FeatureDefn_GetReferenceCount)13831 XS(_wrap_FeatureDefn_GetReferenceCount) {
13832   {
13833     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13834     void *argp1 = 0 ;
13835     int res1 = 0 ;
13836     int argvi = 0;
13837     int result;
13838     dXSARGS;
13839 
13840     if ((items < 1) || (items > 1)) {
13841       SWIG_croak("Usage: FeatureDefn_GetReferenceCount(self);");
13842     }
13843     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
13844     if (!SWIG_IsOK(res1)) {
13845       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn_GetReferenceCount" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
13846     }
13847     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
13848     {
13849       CPLErrorReset();
13850       result = (int)OGRFeatureDefnShadow_GetReferenceCount(arg1);
13851       CPLErr eclass = CPLGetLastErrorType();
13852       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13853         do_confess( CPLGetLastErrorMsg(), 0 );
13854 
13855 
13856 
13857 
13858 
13859       }
13860 
13861 
13862       /*
13863           Make warnings regular Perl warnings. This duplicates the warning
13864           message if DontUseExceptions() is in effect (it is not by default).
13865           */
13866       if ( eclass == CE_Warning ) {
13867         warn( CPLGetLastErrorMsg(), "%s" );
13868       }
13869 
13870 
13871     }
13872     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
13873 
13874     XSRETURN(argvi);
13875   fail:
13876 
13877     SWIG_croak_null();
13878   }
13879 }
13880 
13881 
XS(_wrap_FeatureDefn_IsGeometryIgnored)13882 XS(_wrap_FeatureDefn_IsGeometryIgnored) {
13883   {
13884     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13885     void *argp1 = 0 ;
13886     int res1 = 0 ;
13887     int argvi = 0;
13888     int result;
13889     dXSARGS;
13890 
13891     if ((items < 1) || (items > 1)) {
13892       SWIG_croak("Usage: FeatureDefn_IsGeometryIgnored(self);");
13893     }
13894     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
13895     if (!SWIG_IsOK(res1)) {
13896       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn_IsGeometryIgnored" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
13897     }
13898     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
13899     {
13900       CPLErrorReset();
13901       result = (int)OGRFeatureDefnShadow_IsGeometryIgnored(arg1);
13902       CPLErr eclass = CPLGetLastErrorType();
13903       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13904         do_confess( CPLGetLastErrorMsg(), 0 );
13905 
13906 
13907 
13908 
13909 
13910       }
13911 
13912 
13913       /*
13914           Make warnings regular Perl warnings. This duplicates the warning
13915           message if DontUseExceptions() is in effect (it is not by default).
13916           */
13917       if ( eclass == CE_Warning ) {
13918         warn( CPLGetLastErrorMsg(), "%s" );
13919       }
13920 
13921 
13922     }
13923     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
13924 
13925     XSRETURN(argvi);
13926   fail:
13927 
13928     SWIG_croak_null();
13929   }
13930 }
13931 
13932 
XS(_wrap_FeatureDefn_SetGeometryIgnored)13933 XS(_wrap_FeatureDefn_SetGeometryIgnored) {
13934   {
13935     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13936     int arg2 ;
13937     void *argp1 = 0 ;
13938     int res1 = 0 ;
13939     int val2 ;
13940     int ecode2 = 0 ;
13941     int argvi = 0;
13942     dXSARGS;
13943 
13944     if ((items < 2) || (items > 2)) {
13945       SWIG_croak("Usage: FeatureDefn_SetGeometryIgnored(self,bIgnored);");
13946     }
13947     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
13948     if (!SWIG_IsOK(res1)) {
13949       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn_SetGeometryIgnored" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
13950     }
13951     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
13952     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
13953     if (!SWIG_IsOK(ecode2)) {
13954       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FeatureDefn_SetGeometryIgnored" "', argument " "2"" of type '" "int""'");
13955     }
13956     arg2 = static_cast< int >(val2);
13957     {
13958       CPLErrorReset();
13959       OGRFeatureDefnShadow_SetGeometryIgnored(arg1,arg2);
13960       CPLErr eclass = CPLGetLastErrorType();
13961       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
13962         do_confess( CPLGetLastErrorMsg(), 0 );
13963 
13964 
13965 
13966 
13967 
13968       }
13969 
13970 
13971       /*
13972           Make warnings regular Perl warnings. This duplicates the warning
13973           message if DontUseExceptions() is in effect (it is not by default).
13974           */
13975       if ( eclass == CE_Warning ) {
13976         warn( CPLGetLastErrorMsg(), "%s" );
13977       }
13978 
13979 
13980     }
13981     {
13982       /* %typemap(out) void */
13983     }
13984 
13985 
13986     XSRETURN(argvi);
13987   fail:
13988 
13989 
13990     SWIG_croak_null();
13991   }
13992 }
13993 
13994 
XS(_wrap_FeatureDefn_IsStyleIgnored)13995 XS(_wrap_FeatureDefn_IsStyleIgnored) {
13996   {
13997     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
13998     void *argp1 = 0 ;
13999     int res1 = 0 ;
14000     int argvi = 0;
14001     int result;
14002     dXSARGS;
14003 
14004     if ((items < 1) || (items > 1)) {
14005       SWIG_croak("Usage: FeatureDefn_IsStyleIgnored(self);");
14006     }
14007     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
14008     if (!SWIG_IsOK(res1)) {
14009       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn_IsStyleIgnored" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
14010     }
14011     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
14012     {
14013       CPLErrorReset();
14014       result = (int)OGRFeatureDefnShadow_IsStyleIgnored(arg1);
14015       CPLErr eclass = CPLGetLastErrorType();
14016       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14017         do_confess( CPLGetLastErrorMsg(), 0 );
14018 
14019 
14020 
14021 
14022 
14023       }
14024 
14025 
14026       /*
14027           Make warnings regular Perl warnings. This duplicates the warning
14028           message if DontUseExceptions() is in effect (it is not by default).
14029           */
14030       if ( eclass == CE_Warning ) {
14031         warn( CPLGetLastErrorMsg(), "%s" );
14032       }
14033 
14034 
14035     }
14036     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
14037 
14038     XSRETURN(argvi);
14039   fail:
14040 
14041     SWIG_croak_null();
14042   }
14043 }
14044 
14045 
XS(_wrap_FeatureDefn_SetStyleIgnored)14046 XS(_wrap_FeatureDefn_SetStyleIgnored) {
14047   {
14048     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
14049     int arg2 ;
14050     void *argp1 = 0 ;
14051     int res1 = 0 ;
14052     int val2 ;
14053     int ecode2 = 0 ;
14054     int argvi = 0;
14055     dXSARGS;
14056 
14057     if ((items < 2) || (items > 2)) {
14058       SWIG_croak("Usage: FeatureDefn_SetStyleIgnored(self,bIgnored);");
14059     }
14060     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
14061     if (!SWIG_IsOK(res1)) {
14062       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn_SetStyleIgnored" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
14063     }
14064     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
14065     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
14066     if (!SWIG_IsOK(ecode2)) {
14067       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FeatureDefn_SetStyleIgnored" "', argument " "2"" of type '" "int""'");
14068     }
14069     arg2 = static_cast< int >(val2);
14070     {
14071       CPLErrorReset();
14072       OGRFeatureDefnShadow_SetStyleIgnored(arg1,arg2);
14073       CPLErr eclass = CPLGetLastErrorType();
14074       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14075         do_confess( CPLGetLastErrorMsg(), 0 );
14076 
14077 
14078 
14079 
14080 
14081       }
14082 
14083 
14084       /*
14085           Make warnings regular Perl warnings. This duplicates the warning
14086           message if DontUseExceptions() is in effect (it is not by default).
14087           */
14088       if ( eclass == CE_Warning ) {
14089         warn( CPLGetLastErrorMsg(), "%s" );
14090       }
14091 
14092 
14093     }
14094     {
14095       /* %typemap(out) void */
14096     }
14097 
14098 
14099     XSRETURN(argvi);
14100   fail:
14101 
14102 
14103     SWIG_croak_null();
14104   }
14105 }
14106 
14107 
XS(_wrap_FeatureDefn_IsSame)14108 XS(_wrap_FeatureDefn_IsSame) {
14109   {
14110     OGRFeatureDefnShadow *arg1 = (OGRFeatureDefnShadow *) 0 ;
14111     OGRFeatureDefnShadow *arg2 = (OGRFeatureDefnShadow *) 0 ;
14112     void *argp1 = 0 ;
14113     int res1 = 0 ;
14114     void *argp2 = 0 ;
14115     int res2 = 0 ;
14116     int argvi = 0;
14117     int result;
14118     dXSARGS;
14119 
14120     if ((items < 2) || (items > 2)) {
14121       SWIG_croak("Usage: FeatureDefn_IsSame(self,other_defn);");
14122     }
14123     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
14124     if (!SWIG_IsOK(res1)) {
14125       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FeatureDefn_IsSame" "', argument " "1"" of type '" "OGRFeatureDefnShadow *""'");
14126     }
14127     arg1 = reinterpret_cast< OGRFeatureDefnShadow * >(argp1);
14128     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRFeatureDefnShadow, 0 |  0 );
14129     if (!SWIG_IsOK(res2)) {
14130       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "FeatureDefn_IsSame" "', argument " "2"" of type '" "OGRFeatureDefnShadow *""'");
14131     }
14132     arg2 = reinterpret_cast< OGRFeatureDefnShadow * >(argp2);
14133     {
14134       if (!arg2) {
14135         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
14136       }
14137     }
14138     {
14139       CPLErrorReset();
14140       result = (int)OGRFeatureDefnShadow_IsSame(arg1,arg2);
14141       CPLErr eclass = CPLGetLastErrorType();
14142       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14143         do_confess( CPLGetLastErrorMsg(), 0 );
14144 
14145 
14146 
14147 
14148 
14149       }
14150 
14151 
14152       /*
14153           Make warnings regular Perl warnings. This duplicates the warning
14154           message if DontUseExceptions() is in effect (it is not by default).
14155           */
14156       if ( eclass == CE_Warning ) {
14157         warn( CPLGetLastErrorMsg(), "%s" );
14158       }
14159 
14160 
14161     }
14162     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
14163 
14164 
14165     XSRETURN(argvi);
14166   fail:
14167 
14168 
14169     SWIG_croak_null();
14170   }
14171 }
14172 
14173 
XS(_wrap_delete_FieldDefn)14174 XS(_wrap_delete_FieldDefn) {
14175   {
14176     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
14177     void *argp1 = 0 ;
14178     int res1 = 0 ;
14179     int argvi = 0;
14180     dXSARGS;
14181 
14182     if ((items < 1) || (items > 1)) {
14183       SWIG_croak("Usage: delete_FieldDefn(self);");
14184     }
14185     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, SWIG_POINTER_DISOWN |  0 );
14186     if (!SWIG_IsOK(res1)) {
14187       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_FieldDefn" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
14188     }
14189     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
14190     {
14191       CPLErrorReset();
14192       delete_OGRFieldDefnShadow(arg1);
14193       CPLErr eclass = CPLGetLastErrorType();
14194       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14195         do_confess( CPLGetLastErrorMsg(), 0 );
14196 
14197 
14198 
14199 
14200 
14201       }
14202 
14203 
14204       /*
14205           Make warnings regular Perl warnings. This duplicates the warning
14206           message if DontUseExceptions() is in effect (it is not by default).
14207           */
14208       if ( eclass == CE_Warning ) {
14209         warn( CPLGetLastErrorMsg(), "%s" );
14210       }
14211 
14212 
14213     }
14214     {
14215       /* %typemap(out) void */
14216     }
14217 
14218     XSRETURN(argvi);
14219   fail:
14220 
14221     SWIG_croak_null();
14222   }
14223 }
14224 
14225 
XS(_wrap_new_FieldDefn)14226 XS(_wrap_new_FieldDefn) {
14227   {
14228     char *arg1 = (char *) "unnamed" ;
14229     OGRFieldType arg2 = (OGRFieldType) OFTString ;
14230     int res1 ;
14231     char *buf1 = 0 ;
14232     int alloc1 = 0 ;
14233     int val2 ;
14234     int ecode2 = 0 ;
14235     int argvi = 0;
14236     OGRFieldDefnShadow *result = 0 ;
14237     dXSARGS;
14238 
14239     if ((items < 0) || (items > 2)) {
14240       SWIG_croak("Usage: new_FieldDefn(name_null_ok,field_type);");
14241     }
14242     if (items > 0) {
14243       res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
14244       if (!SWIG_IsOK(res1)) {
14245         SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_FieldDefn" "', argument " "1"" of type '" "char const *""'");
14246       }
14247       arg1 = reinterpret_cast< char * >(buf1);
14248     }
14249     if (items > 1) {
14250       ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
14251       if (!SWIG_IsOK(ecode2)) {
14252         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_FieldDefn" "', argument " "2"" of type '" "OGRFieldType""'");
14253       }
14254       arg2 = static_cast< OGRFieldType >(val2);
14255     }
14256     {
14257       CPLErrorReset();
14258       result = (OGRFieldDefnShadow *)new_OGRFieldDefnShadow((char const *)arg1,arg2);
14259       CPLErr eclass = CPLGetLastErrorType();
14260       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14261         do_confess( CPLGetLastErrorMsg(), 0 );
14262 
14263 
14264 
14265 
14266 
14267       }
14268 
14269 
14270       /*
14271           Make warnings regular Perl warnings. This duplicates the warning
14272           message if DontUseExceptions() is in effect (it is not by default).
14273           */
14274       if ( eclass == CE_Warning ) {
14275         warn( CPLGetLastErrorMsg(), "%s" );
14276       }
14277 
14278 
14279     }
14280     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRFieldDefnShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
14281     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
14282 
14283     XSRETURN(argvi);
14284   fail:
14285     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
14286 
14287     SWIG_croak_null();
14288   }
14289 }
14290 
14291 
XS(_wrap_FieldDefn_GetName)14292 XS(_wrap_FieldDefn_GetName) {
14293   {
14294     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
14295     void *argp1 = 0 ;
14296     int res1 = 0 ;
14297     int argvi = 0;
14298     char *result = 0 ;
14299     dXSARGS;
14300 
14301     if ((items < 1) || (items > 1)) {
14302       SWIG_croak("Usage: FieldDefn_GetName(self);");
14303     }
14304     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
14305     if (!SWIG_IsOK(res1)) {
14306       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_GetName" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
14307     }
14308     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
14309     {
14310       CPLErrorReset();
14311       result = (char *)OGRFieldDefnShadow_GetName(arg1);
14312       CPLErr eclass = CPLGetLastErrorType();
14313       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14314         do_confess( CPLGetLastErrorMsg(), 0 );
14315 
14316 
14317 
14318 
14319 
14320       }
14321 
14322 
14323       /*
14324           Make warnings regular Perl warnings. This duplicates the warning
14325           message if DontUseExceptions() is in effect (it is not by default).
14326           */
14327       if ( eclass == CE_Warning ) {
14328         warn( CPLGetLastErrorMsg(), "%s" );
14329       }
14330 
14331 
14332     }
14333     {
14334       /* %typemap(out) const char * */
14335       ST(argvi) = newSVpv(result, 0);
14336       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
14337       sv_2mortal(ST(argvi));
14338       argvi++;
14339     }
14340 
14341     XSRETURN(argvi);
14342   fail:
14343 
14344     SWIG_croak_null();
14345   }
14346 }
14347 
14348 
XS(_wrap_FieldDefn_GetNameRef)14349 XS(_wrap_FieldDefn_GetNameRef) {
14350   {
14351     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
14352     void *argp1 = 0 ;
14353     int res1 = 0 ;
14354     int argvi = 0;
14355     char *result = 0 ;
14356     dXSARGS;
14357 
14358     if ((items < 1) || (items > 1)) {
14359       SWIG_croak("Usage: FieldDefn_GetNameRef(self);");
14360     }
14361     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
14362     if (!SWIG_IsOK(res1)) {
14363       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_GetNameRef" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
14364     }
14365     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
14366     {
14367       CPLErrorReset();
14368       result = (char *)OGRFieldDefnShadow_GetNameRef(arg1);
14369       CPLErr eclass = CPLGetLastErrorType();
14370       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14371         do_confess( CPLGetLastErrorMsg(), 0 );
14372 
14373 
14374 
14375 
14376 
14377       }
14378 
14379 
14380       /*
14381           Make warnings regular Perl warnings. This duplicates the warning
14382           message if DontUseExceptions() is in effect (it is not by default).
14383           */
14384       if ( eclass == CE_Warning ) {
14385         warn( CPLGetLastErrorMsg(), "%s" );
14386       }
14387 
14388 
14389     }
14390     {
14391       /* %typemap(out) const char * */
14392       ST(argvi) = newSVpv(result, 0);
14393       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
14394       sv_2mortal(ST(argvi));
14395       argvi++;
14396     }
14397 
14398     XSRETURN(argvi);
14399   fail:
14400 
14401     SWIG_croak_null();
14402   }
14403 }
14404 
14405 
XS(_wrap_FieldDefn_SetName)14406 XS(_wrap_FieldDefn_SetName) {
14407   {
14408     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
14409     char *arg2 = (char *) 0 ;
14410     void *argp1 = 0 ;
14411     int res1 = 0 ;
14412     int res2 ;
14413     char *buf2 = 0 ;
14414     int alloc2 = 0 ;
14415     int argvi = 0;
14416     dXSARGS;
14417 
14418     if ((items < 2) || (items > 2)) {
14419       SWIG_croak("Usage: FieldDefn_SetName(self,name);");
14420     }
14421     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
14422     if (!SWIG_IsOK(res1)) {
14423       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_SetName" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
14424     }
14425     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
14426     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
14427     if (!SWIG_IsOK(res2)) {
14428       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "FieldDefn_SetName" "', argument " "2"" of type '" "char const *""'");
14429     }
14430     arg2 = reinterpret_cast< char * >(buf2);
14431     {
14432       if (!arg2) {
14433         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
14434       }
14435     }
14436     {
14437       CPLErrorReset();
14438       OGRFieldDefnShadow_SetName(arg1,(char const *)arg2);
14439       CPLErr eclass = CPLGetLastErrorType();
14440       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14441         do_confess( CPLGetLastErrorMsg(), 0 );
14442 
14443 
14444 
14445 
14446 
14447       }
14448 
14449 
14450       /*
14451           Make warnings regular Perl warnings. This duplicates the warning
14452           message if DontUseExceptions() is in effect (it is not by default).
14453           */
14454       if ( eclass == CE_Warning ) {
14455         warn( CPLGetLastErrorMsg(), "%s" );
14456       }
14457 
14458 
14459     }
14460     {
14461       /* %typemap(out) void */
14462     }
14463 
14464     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
14465     XSRETURN(argvi);
14466   fail:
14467 
14468     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
14469     SWIG_croak_null();
14470   }
14471 }
14472 
14473 
XS(_wrap_FieldDefn_GetAlternativeName)14474 XS(_wrap_FieldDefn_GetAlternativeName) {
14475   {
14476     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
14477     void *argp1 = 0 ;
14478     int res1 = 0 ;
14479     int argvi = 0;
14480     char *result = 0 ;
14481     dXSARGS;
14482 
14483     if ((items < 1) || (items > 1)) {
14484       SWIG_croak("Usage: FieldDefn_GetAlternativeName(self);");
14485     }
14486     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
14487     if (!SWIG_IsOK(res1)) {
14488       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_GetAlternativeName" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
14489     }
14490     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
14491     {
14492       CPLErrorReset();
14493       result = (char *)OGRFieldDefnShadow_GetAlternativeName(arg1);
14494       CPLErr eclass = CPLGetLastErrorType();
14495       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14496         do_confess( CPLGetLastErrorMsg(), 0 );
14497 
14498 
14499 
14500 
14501 
14502       }
14503 
14504 
14505       /*
14506           Make warnings regular Perl warnings. This duplicates the warning
14507           message if DontUseExceptions() is in effect (it is not by default).
14508           */
14509       if ( eclass == CE_Warning ) {
14510         warn( CPLGetLastErrorMsg(), "%s" );
14511       }
14512 
14513 
14514     }
14515     {
14516       /* %typemap(out) const char * */
14517       ST(argvi) = newSVpv(result, 0);
14518       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
14519       sv_2mortal(ST(argvi));
14520       argvi++;
14521     }
14522 
14523     XSRETURN(argvi);
14524   fail:
14525 
14526     SWIG_croak_null();
14527   }
14528 }
14529 
14530 
XS(_wrap_FieldDefn_GetAlternativeNameRef)14531 XS(_wrap_FieldDefn_GetAlternativeNameRef) {
14532   {
14533     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
14534     void *argp1 = 0 ;
14535     int res1 = 0 ;
14536     int argvi = 0;
14537     char *result = 0 ;
14538     dXSARGS;
14539 
14540     if ((items < 1) || (items > 1)) {
14541       SWIG_croak("Usage: FieldDefn_GetAlternativeNameRef(self);");
14542     }
14543     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
14544     if (!SWIG_IsOK(res1)) {
14545       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_GetAlternativeNameRef" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
14546     }
14547     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
14548     {
14549       CPLErrorReset();
14550       result = (char *)OGRFieldDefnShadow_GetAlternativeNameRef(arg1);
14551       CPLErr eclass = CPLGetLastErrorType();
14552       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14553         do_confess( CPLGetLastErrorMsg(), 0 );
14554 
14555 
14556 
14557 
14558 
14559       }
14560 
14561 
14562       /*
14563           Make warnings regular Perl warnings. This duplicates the warning
14564           message if DontUseExceptions() is in effect (it is not by default).
14565           */
14566       if ( eclass == CE_Warning ) {
14567         warn( CPLGetLastErrorMsg(), "%s" );
14568       }
14569 
14570 
14571     }
14572     {
14573       /* %typemap(out) const char * */
14574       ST(argvi) = newSVpv(result, 0);
14575       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
14576       sv_2mortal(ST(argvi));
14577       argvi++;
14578     }
14579 
14580     XSRETURN(argvi);
14581   fail:
14582 
14583     SWIG_croak_null();
14584   }
14585 }
14586 
14587 
XS(_wrap_FieldDefn_SetAlternativeName)14588 XS(_wrap_FieldDefn_SetAlternativeName) {
14589   {
14590     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
14591     char *arg2 = (char *) 0 ;
14592     void *argp1 = 0 ;
14593     int res1 = 0 ;
14594     int res2 ;
14595     char *buf2 = 0 ;
14596     int alloc2 = 0 ;
14597     int argvi = 0;
14598     dXSARGS;
14599 
14600     if ((items < 2) || (items > 2)) {
14601       SWIG_croak("Usage: FieldDefn_SetAlternativeName(self,alternativeName);");
14602     }
14603     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
14604     if (!SWIG_IsOK(res1)) {
14605       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_SetAlternativeName" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
14606     }
14607     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
14608     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
14609     if (!SWIG_IsOK(res2)) {
14610       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "FieldDefn_SetAlternativeName" "', argument " "2"" of type '" "char const *""'");
14611     }
14612     arg2 = reinterpret_cast< char * >(buf2);
14613     {
14614       CPLErrorReset();
14615       OGRFieldDefnShadow_SetAlternativeName(arg1,(char const *)arg2);
14616       CPLErr eclass = CPLGetLastErrorType();
14617       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14618         do_confess( CPLGetLastErrorMsg(), 0 );
14619 
14620 
14621 
14622 
14623 
14624       }
14625 
14626 
14627       /*
14628           Make warnings regular Perl warnings. This duplicates the warning
14629           message if DontUseExceptions() is in effect (it is not by default).
14630           */
14631       if ( eclass == CE_Warning ) {
14632         warn( CPLGetLastErrorMsg(), "%s" );
14633       }
14634 
14635 
14636     }
14637     {
14638       /* %typemap(out) void */
14639     }
14640 
14641     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
14642     XSRETURN(argvi);
14643   fail:
14644 
14645     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
14646     SWIG_croak_null();
14647   }
14648 }
14649 
14650 
XS(_wrap_FieldDefn_GetType)14651 XS(_wrap_FieldDefn_GetType) {
14652   {
14653     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
14654     void *argp1 = 0 ;
14655     int res1 = 0 ;
14656     int argvi = 0;
14657     OGRFieldType result;
14658     dXSARGS;
14659 
14660     if ((items < 1) || (items > 1)) {
14661       SWIG_croak("Usage: FieldDefn_GetType(self);");
14662     }
14663     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
14664     if (!SWIG_IsOK(res1)) {
14665       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_GetType" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
14666     }
14667     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
14668     {
14669       CPLErrorReset();
14670       result = (OGRFieldType)OGRFieldDefnShadow_GetType(arg1);
14671       CPLErr eclass = CPLGetLastErrorType();
14672       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14673         do_confess( CPLGetLastErrorMsg(), 0 );
14674 
14675 
14676 
14677 
14678 
14679       }
14680 
14681 
14682       /*
14683           Make warnings regular Perl warnings. This duplicates the warning
14684           message if DontUseExceptions() is in effect (it is not by default).
14685           */
14686       if ( eclass == CE_Warning ) {
14687         warn( CPLGetLastErrorMsg(), "%s" );
14688       }
14689 
14690 
14691     }
14692     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
14693 
14694     XSRETURN(argvi);
14695   fail:
14696 
14697     SWIG_croak_null();
14698   }
14699 }
14700 
14701 
XS(_wrap_FieldDefn_SetType)14702 XS(_wrap_FieldDefn_SetType) {
14703   {
14704     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
14705     OGRFieldType arg2 ;
14706     void *argp1 = 0 ;
14707     int res1 = 0 ;
14708     int val2 ;
14709     int ecode2 = 0 ;
14710     int argvi = 0;
14711     dXSARGS;
14712 
14713     if ((items < 2) || (items > 2)) {
14714       SWIG_croak("Usage: FieldDefn_SetType(self,type);");
14715     }
14716     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
14717     if (!SWIG_IsOK(res1)) {
14718       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_SetType" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
14719     }
14720     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
14721     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
14722     if (!SWIG_IsOK(ecode2)) {
14723       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FieldDefn_SetType" "', argument " "2"" of type '" "OGRFieldType""'");
14724     }
14725     arg2 = static_cast< OGRFieldType >(val2);
14726     {
14727       CPLErrorReset();
14728       OGRFieldDefnShadow_SetType(arg1,arg2);
14729       CPLErr eclass = CPLGetLastErrorType();
14730       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14731         do_confess( CPLGetLastErrorMsg(), 0 );
14732 
14733 
14734 
14735 
14736 
14737       }
14738 
14739 
14740       /*
14741           Make warnings regular Perl warnings. This duplicates the warning
14742           message if DontUseExceptions() is in effect (it is not by default).
14743           */
14744       if ( eclass == CE_Warning ) {
14745         warn( CPLGetLastErrorMsg(), "%s" );
14746       }
14747 
14748 
14749     }
14750     {
14751       /* %typemap(out) void */
14752     }
14753 
14754 
14755     XSRETURN(argvi);
14756   fail:
14757 
14758 
14759     SWIG_croak_null();
14760   }
14761 }
14762 
14763 
XS(_wrap_FieldDefn_GetSubType)14764 XS(_wrap_FieldDefn_GetSubType) {
14765   {
14766     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
14767     void *argp1 = 0 ;
14768     int res1 = 0 ;
14769     int argvi = 0;
14770     OGRFieldSubType result;
14771     dXSARGS;
14772 
14773     if ((items < 1) || (items > 1)) {
14774       SWIG_croak("Usage: FieldDefn_GetSubType(self);");
14775     }
14776     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
14777     if (!SWIG_IsOK(res1)) {
14778       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_GetSubType" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
14779     }
14780     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
14781     {
14782       CPLErrorReset();
14783       result = (OGRFieldSubType)OGRFieldDefnShadow_GetSubType(arg1);
14784       CPLErr eclass = CPLGetLastErrorType();
14785       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14786         do_confess( CPLGetLastErrorMsg(), 0 );
14787 
14788 
14789 
14790 
14791 
14792       }
14793 
14794 
14795       /*
14796           Make warnings regular Perl warnings. This duplicates the warning
14797           message if DontUseExceptions() is in effect (it is not by default).
14798           */
14799       if ( eclass == CE_Warning ) {
14800         warn( CPLGetLastErrorMsg(), "%s" );
14801       }
14802 
14803 
14804     }
14805     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
14806 
14807     XSRETURN(argvi);
14808   fail:
14809 
14810     SWIG_croak_null();
14811   }
14812 }
14813 
14814 
XS(_wrap_FieldDefn_SetSubType)14815 XS(_wrap_FieldDefn_SetSubType) {
14816   {
14817     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
14818     OGRFieldSubType arg2 ;
14819     void *argp1 = 0 ;
14820     int res1 = 0 ;
14821     int val2 ;
14822     int ecode2 = 0 ;
14823     int argvi = 0;
14824     dXSARGS;
14825 
14826     if ((items < 2) || (items > 2)) {
14827       SWIG_croak("Usage: FieldDefn_SetSubType(self,type);");
14828     }
14829     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
14830     if (!SWIG_IsOK(res1)) {
14831       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_SetSubType" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
14832     }
14833     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
14834     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
14835     if (!SWIG_IsOK(ecode2)) {
14836       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FieldDefn_SetSubType" "', argument " "2"" of type '" "OGRFieldSubType""'");
14837     }
14838     arg2 = static_cast< OGRFieldSubType >(val2);
14839     {
14840       CPLErrorReset();
14841       OGRFieldDefnShadow_SetSubType(arg1,arg2);
14842       CPLErr eclass = CPLGetLastErrorType();
14843       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14844         do_confess( CPLGetLastErrorMsg(), 0 );
14845 
14846 
14847 
14848 
14849 
14850       }
14851 
14852 
14853       /*
14854           Make warnings regular Perl warnings. This duplicates the warning
14855           message if DontUseExceptions() is in effect (it is not by default).
14856           */
14857       if ( eclass == CE_Warning ) {
14858         warn( CPLGetLastErrorMsg(), "%s" );
14859       }
14860 
14861 
14862     }
14863     {
14864       /* %typemap(out) void */
14865     }
14866 
14867 
14868     XSRETURN(argvi);
14869   fail:
14870 
14871 
14872     SWIG_croak_null();
14873   }
14874 }
14875 
14876 
XS(_wrap_FieldDefn_GetJustify)14877 XS(_wrap_FieldDefn_GetJustify) {
14878   {
14879     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
14880     void *argp1 = 0 ;
14881     int res1 = 0 ;
14882     int argvi = 0;
14883     OGRJustification result;
14884     dXSARGS;
14885 
14886     if ((items < 1) || (items > 1)) {
14887       SWIG_croak("Usage: FieldDefn_GetJustify(self);");
14888     }
14889     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
14890     if (!SWIG_IsOK(res1)) {
14891       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_GetJustify" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
14892     }
14893     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
14894     {
14895       CPLErrorReset();
14896       result = (OGRJustification)OGRFieldDefnShadow_GetJustify(arg1);
14897       CPLErr eclass = CPLGetLastErrorType();
14898       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14899         do_confess( CPLGetLastErrorMsg(), 0 );
14900 
14901 
14902 
14903 
14904 
14905       }
14906 
14907 
14908       /*
14909           Make warnings regular Perl warnings. This duplicates the warning
14910           message if DontUseExceptions() is in effect (it is not by default).
14911           */
14912       if ( eclass == CE_Warning ) {
14913         warn( CPLGetLastErrorMsg(), "%s" );
14914       }
14915 
14916 
14917     }
14918     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
14919 
14920     XSRETURN(argvi);
14921   fail:
14922 
14923     SWIG_croak_null();
14924   }
14925 }
14926 
14927 
XS(_wrap_FieldDefn_SetJustify)14928 XS(_wrap_FieldDefn_SetJustify) {
14929   {
14930     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
14931     OGRJustification arg2 ;
14932     void *argp1 = 0 ;
14933     int res1 = 0 ;
14934     int val2 ;
14935     int ecode2 = 0 ;
14936     int argvi = 0;
14937     dXSARGS;
14938 
14939     if ((items < 2) || (items > 2)) {
14940       SWIG_croak("Usage: FieldDefn_SetJustify(self,justify);");
14941     }
14942     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
14943     if (!SWIG_IsOK(res1)) {
14944       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_SetJustify" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
14945     }
14946     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
14947     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
14948     if (!SWIG_IsOK(ecode2)) {
14949       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FieldDefn_SetJustify" "', argument " "2"" of type '" "OGRJustification""'");
14950     }
14951     arg2 = static_cast< OGRJustification >(val2);
14952     {
14953       CPLErrorReset();
14954       OGRFieldDefnShadow_SetJustify(arg1,arg2);
14955       CPLErr eclass = CPLGetLastErrorType();
14956       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
14957         do_confess( CPLGetLastErrorMsg(), 0 );
14958 
14959 
14960 
14961 
14962 
14963       }
14964 
14965 
14966       /*
14967           Make warnings regular Perl warnings. This duplicates the warning
14968           message if DontUseExceptions() is in effect (it is not by default).
14969           */
14970       if ( eclass == CE_Warning ) {
14971         warn( CPLGetLastErrorMsg(), "%s" );
14972       }
14973 
14974 
14975     }
14976     {
14977       /* %typemap(out) void */
14978     }
14979 
14980 
14981     XSRETURN(argvi);
14982   fail:
14983 
14984 
14985     SWIG_croak_null();
14986   }
14987 }
14988 
14989 
XS(_wrap_FieldDefn_GetWidth)14990 XS(_wrap_FieldDefn_GetWidth) {
14991   {
14992     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
14993     void *argp1 = 0 ;
14994     int res1 = 0 ;
14995     int argvi = 0;
14996     int result;
14997     dXSARGS;
14998 
14999     if ((items < 1) || (items > 1)) {
15000       SWIG_croak("Usage: FieldDefn_GetWidth(self);");
15001     }
15002     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15003     if (!SWIG_IsOK(res1)) {
15004       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_GetWidth" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15005     }
15006     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15007     {
15008       CPLErrorReset();
15009       result = (int)OGRFieldDefnShadow_GetWidth(arg1);
15010       CPLErr eclass = CPLGetLastErrorType();
15011       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15012         do_confess( CPLGetLastErrorMsg(), 0 );
15013 
15014 
15015 
15016 
15017 
15018       }
15019 
15020 
15021       /*
15022           Make warnings regular Perl warnings. This duplicates the warning
15023           message if DontUseExceptions() is in effect (it is not by default).
15024           */
15025       if ( eclass == CE_Warning ) {
15026         warn( CPLGetLastErrorMsg(), "%s" );
15027       }
15028 
15029 
15030     }
15031     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
15032 
15033     XSRETURN(argvi);
15034   fail:
15035 
15036     SWIG_croak_null();
15037   }
15038 }
15039 
15040 
XS(_wrap_FieldDefn_SetWidth)15041 XS(_wrap_FieldDefn_SetWidth) {
15042   {
15043     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
15044     int arg2 ;
15045     void *argp1 = 0 ;
15046     int res1 = 0 ;
15047     int val2 ;
15048     int ecode2 = 0 ;
15049     int argvi = 0;
15050     dXSARGS;
15051 
15052     if ((items < 2) || (items > 2)) {
15053       SWIG_croak("Usage: FieldDefn_SetWidth(self,width);");
15054     }
15055     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15056     if (!SWIG_IsOK(res1)) {
15057       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_SetWidth" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15058     }
15059     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15060     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
15061     if (!SWIG_IsOK(ecode2)) {
15062       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FieldDefn_SetWidth" "', argument " "2"" of type '" "int""'");
15063     }
15064     arg2 = static_cast< int >(val2);
15065     {
15066       CPLErrorReset();
15067       OGRFieldDefnShadow_SetWidth(arg1,arg2);
15068       CPLErr eclass = CPLGetLastErrorType();
15069       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15070         do_confess( CPLGetLastErrorMsg(), 0 );
15071 
15072 
15073 
15074 
15075 
15076       }
15077 
15078 
15079       /*
15080           Make warnings regular Perl warnings. This duplicates the warning
15081           message if DontUseExceptions() is in effect (it is not by default).
15082           */
15083       if ( eclass == CE_Warning ) {
15084         warn( CPLGetLastErrorMsg(), "%s" );
15085       }
15086 
15087 
15088     }
15089     {
15090       /* %typemap(out) void */
15091     }
15092 
15093 
15094     XSRETURN(argvi);
15095   fail:
15096 
15097 
15098     SWIG_croak_null();
15099   }
15100 }
15101 
15102 
XS(_wrap_FieldDefn_GetPrecision)15103 XS(_wrap_FieldDefn_GetPrecision) {
15104   {
15105     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
15106     void *argp1 = 0 ;
15107     int res1 = 0 ;
15108     int argvi = 0;
15109     int result;
15110     dXSARGS;
15111 
15112     if ((items < 1) || (items > 1)) {
15113       SWIG_croak("Usage: FieldDefn_GetPrecision(self);");
15114     }
15115     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15116     if (!SWIG_IsOK(res1)) {
15117       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_GetPrecision" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15118     }
15119     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15120     {
15121       CPLErrorReset();
15122       result = (int)OGRFieldDefnShadow_GetPrecision(arg1);
15123       CPLErr eclass = CPLGetLastErrorType();
15124       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15125         do_confess( CPLGetLastErrorMsg(), 0 );
15126 
15127 
15128 
15129 
15130 
15131       }
15132 
15133 
15134       /*
15135           Make warnings regular Perl warnings. This duplicates the warning
15136           message if DontUseExceptions() is in effect (it is not by default).
15137           */
15138       if ( eclass == CE_Warning ) {
15139         warn( CPLGetLastErrorMsg(), "%s" );
15140       }
15141 
15142 
15143     }
15144     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
15145 
15146     XSRETURN(argvi);
15147   fail:
15148 
15149     SWIG_croak_null();
15150   }
15151 }
15152 
15153 
XS(_wrap_FieldDefn_SetPrecision)15154 XS(_wrap_FieldDefn_SetPrecision) {
15155   {
15156     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
15157     int arg2 ;
15158     void *argp1 = 0 ;
15159     int res1 = 0 ;
15160     int val2 ;
15161     int ecode2 = 0 ;
15162     int argvi = 0;
15163     dXSARGS;
15164 
15165     if ((items < 2) || (items > 2)) {
15166       SWIG_croak("Usage: FieldDefn_SetPrecision(self,precision);");
15167     }
15168     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15169     if (!SWIG_IsOK(res1)) {
15170       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_SetPrecision" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15171     }
15172     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15173     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
15174     if (!SWIG_IsOK(ecode2)) {
15175       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FieldDefn_SetPrecision" "', argument " "2"" of type '" "int""'");
15176     }
15177     arg2 = static_cast< int >(val2);
15178     {
15179       CPLErrorReset();
15180       OGRFieldDefnShadow_SetPrecision(arg1,arg2);
15181       CPLErr eclass = CPLGetLastErrorType();
15182       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15183         do_confess( CPLGetLastErrorMsg(), 0 );
15184 
15185 
15186 
15187 
15188 
15189       }
15190 
15191 
15192       /*
15193           Make warnings regular Perl warnings. This duplicates the warning
15194           message if DontUseExceptions() is in effect (it is not by default).
15195           */
15196       if ( eclass == CE_Warning ) {
15197         warn( CPLGetLastErrorMsg(), "%s" );
15198       }
15199 
15200 
15201     }
15202     {
15203       /* %typemap(out) void */
15204     }
15205 
15206 
15207     XSRETURN(argvi);
15208   fail:
15209 
15210 
15211     SWIG_croak_null();
15212   }
15213 }
15214 
15215 
XS(_wrap_FieldDefn_GetTypeName)15216 XS(_wrap_FieldDefn_GetTypeName) {
15217   {
15218     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
15219     void *argp1 = 0 ;
15220     int res1 = 0 ;
15221     int argvi = 0;
15222     char *result = 0 ;
15223     dXSARGS;
15224 
15225     if ((items < 1) || (items > 1)) {
15226       SWIG_croak("Usage: FieldDefn_GetTypeName(self);");
15227     }
15228     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15229     if (!SWIG_IsOK(res1)) {
15230       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_GetTypeName" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15231     }
15232     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15233     {
15234       CPLErrorReset();
15235       result = (char *)OGRFieldDefnShadow_GetTypeName(arg1);
15236       CPLErr eclass = CPLGetLastErrorType();
15237       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15238         do_confess( CPLGetLastErrorMsg(), 0 );
15239 
15240 
15241 
15242 
15243 
15244       }
15245 
15246 
15247       /*
15248           Make warnings regular Perl warnings. This duplicates the warning
15249           message if DontUseExceptions() is in effect (it is not by default).
15250           */
15251       if ( eclass == CE_Warning ) {
15252         warn( CPLGetLastErrorMsg(), "%s" );
15253       }
15254 
15255 
15256     }
15257     {
15258       /* %typemap(out) const char * */
15259       ST(argvi) = newSVpv(result, 0);
15260       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
15261       sv_2mortal(ST(argvi));
15262       argvi++;
15263     }
15264 
15265     XSRETURN(argvi);
15266   fail:
15267 
15268     SWIG_croak_null();
15269   }
15270 }
15271 
15272 
XS(_wrap_FieldDefn_GetFieldTypeName)15273 XS(_wrap_FieldDefn_GetFieldTypeName) {
15274   {
15275     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
15276     OGRFieldType arg2 ;
15277     void *argp1 = 0 ;
15278     int res1 = 0 ;
15279     int val2 ;
15280     int ecode2 = 0 ;
15281     int argvi = 0;
15282     char *result = 0 ;
15283     dXSARGS;
15284 
15285     if ((items < 2) || (items > 2)) {
15286       SWIG_croak("Usage: FieldDefn_GetFieldTypeName(self,type);");
15287     }
15288     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15289     if (!SWIG_IsOK(res1)) {
15290       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_GetFieldTypeName" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15291     }
15292     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15293     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
15294     if (!SWIG_IsOK(ecode2)) {
15295       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FieldDefn_GetFieldTypeName" "', argument " "2"" of type '" "OGRFieldType""'");
15296     }
15297     arg2 = static_cast< OGRFieldType >(val2);
15298     {
15299       CPLErrorReset();
15300       result = (char *)OGRFieldDefnShadow_GetFieldTypeName(arg1,arg2);
15301       CPLErr eclass = CPLGetLastErrorType();
15302       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15303         do_confess( CPLGetLastErrorMsg(), 0 );
15304 
15305 
15306 
15307 
15308 
15309       }
15310 
15311 
15312       /*
15313           Make warnings regular Perl warnings. This duplicates the warning
15314           message if DontUseExceptions() is in effect (it is not by default).
15315           */
15316       if ( eclass == CE_Warning ) {
15317         warn( CPLGetLastErrorMsg(), "%s" );
15318       }
15319 
15320 
15321     }
15322     {
15323       /* %typemap(out) const char * */
15324       ST(argvi) = newSVpv(result, 0);
15325       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
15326       sv_2mortal(ST(argvi));
15327       argvi++;
15328     }
15329 
15330 
15331     XSRETURN(argvi);
15332   fail:
15333 
15334 
15335     SWIG_croak_null();
15336   }
15337 }
15338 
15339 
XS(_wrap_FieldDefn_IsIgnored)15340 XS(_wrap_FieldDefn_IsIgnored) {
15341   {
15342     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
15343     void *argp1 = 0 ;
15344     int res1 = 0 ;
15345     int argvi = 0;
15346     int result;
15347     dXSARGS;
15348 
15349     if ((items < 1) || (items > 1)) {
15350       SWIG_croak("Usage: FieldDefn_IsIgnored(self);");
15351     }
15352     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15353     if (!SWIG_IsOK(res1)) {
15354       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_IsIgnored" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15355     }
15356     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15357     {
15358       CPLErrorReset();
15359       result = (int)OGRFieldDefnShadow_IsIgnored(arg1);
15360       CPLErr eclass = CPLGetLastErrorType();
15361       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15362         do_confess( CPLGetLastErrorMsg(), 0 );
15363 
15364 
15365 
15366 
15367 
15368       }
15369 
15370 
15371       /*
15372           Make warnings regular Perl warnings. This duplicates the warning
15373           message if DontUseExceptions() is in effect (it is not by default).
15374           */
15375       if ( eclass == CE_Warning ) {
15376         warn( CPLGetLastErrorMsg(), "%s" );
15377       }
15378 
15379 
15380     }
15381     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
15382 
15383     XSRETURN(argvi);
15384   fail:
15385 
15386     SWIG_croak_null();
15387   }
15388 }
15389 
15390 
XS(_wrap_FieldDefn_SetIgnored)15391 XS(_wrap_FieldDefn_SetIgnored) {
15392   {
15393     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
15394     int arg2 ;
15395     void *argp1 = 0 ;
15396     int res1 = 0 ;
15397     int val2 ;
15398     int ecode2 = 0 ;
15399     int argvi = 0;
15400     dXSARGS;
15401 
15402     if ((items < 2) || (items > 2)) {
15403       SWIG_croak("Usage: FieldDefn_SetIgnored(self,bIgnored);");
15404     }
15405     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15406     if (!SWIG_IsOK(res1)) {
15407       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_SetIgnored" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15408     }
15409     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15410     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
15411     if (!SWIG_IsOK(ecode2)) {
15412       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FieldDefn_SetIgnored" "', argument " "2"" of type '" "int""'");
15413     }
15414     arg2 = static_cast< int >(val2);
15415     {
15416       CPLErrorReset();
15417       OGRFieldDefnShadow_SetIgnored(arg1,arg2);
15418       CPLErr eclass = CPLGetLastErrorType();
15419       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15420         do_confess( CPLGetLastErrorMsg(), 0 );
15421 
15422 
15423 
15424 
15425 
15426       }
15427 
15428 
15429       /*
15430           Make warnings regular Perl warnings. This duplicates the warning
15431           message if DontUseExceptions() is in effect (it is not by default).
15432           */
15433       if ( eclass == CE_Warning ) {
15434         warn( CPLGetLastErrorMsg(), "%s" );
15435       }
15436 
15437 
15438     }
15439     {
15440       /* %typemap(out) void */
15441     }
15442 
15443 
15444     XSRETURN(argvi);
15445   fail:
15446 
15447 
15448     SWIG_croak_null();
15449   }
15450 }
15451 
15452 
XS(_wrap_FieldDefn_IsNullable)15453 XS(_wrap_FieldDefn_IsNullable) {
15454   {
15455     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
15456     void *argp1 = 0 ;
15457     int res1 = 0 ;
15458     int argvi = 0;
15459     int result;
15460     dXSARGS;
15461 
15462     if ((items < 1) || (items > 1)) {
15463       SWIG_croak("Usage: FieldDefn_IsNullable(self);");
15464     }
15465     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15466     if (!SWIG_IsOK(res1)) {
15467       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_IsNullable" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15468     }
15469     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15470     {
15471       CPLErrorReset();
15472       result = (int)OGRFieldDefnShadow_IsNullable(arg1);
15473       CPLErr eclass = CPLGetLastErrorType();
15474       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15475         do_confess( CPLGetLastErrorMsg(), 0 );
15476 
15477 
15478 
15479 
15480 
15481       }
15482 
15483 
15484       /*
15485           Make warnings regular Perl warnings. This duplicates the warning
15486           message if DontUseExceptions() is in effect (it is not by default).
15487           */
15488       if ( eclass == CE_Warning ) {
15489         warn( CPLGetLastErrorMsg(), "%s" );
15490       }
15491 
15492 
15493     }
15494     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
15495 
15496     XSRETURN(argvi);
15497   fail:
15498 
15499     SWIG_croak_null();
15500   }
15501 }
15502 
15503 
XS(_wrap_FieldDefn_SetNullable)15504 XS(_wrap_FieldDefn_SetNullable) {
15505   {
15506     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
15507     int arg2 ;
15508     void *argp1 = 0 ;
15509     int res1 = 0 ;
15510     int val2 ;
15511     int ecode2 = 0 ;
15512     int argvi = 0;
15513     dXSARGS;
15514 
15515     if ((items < 2) || (items > 2)) {
15516       SWIG_croak("Usage: FieldDefn_SetNullable(self,bNullable);");
15517     }
15518     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15519     if (!SWIG_IsOK(res1)) {
15520       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_SetNullable" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15521     }
15522     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15523     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
15524     if (!SWIG_IsOK(ecode2)) {
15525       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FieldDefn_SetNullable" "', argument " "2"" of type '" "int""'");
15526     }
15527     arg2 = static_cast< int >(val2);
15528     {
15529       CPLErrorReset();
15530       OGRFieldDefnShadow_SetNullable(arg1,arg2);
15531       CPLErr eclass = CPLGetLastErrorType();
15532       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15533         do_confess( CPLGetLastErrorMsg(), 0 );
15534 
15535 
15536 
15537 
15538 
15539       }
15540 
15541 
15542       /*
15543           Make warnings regular Perl warnings. This duplicates the warning
15544           message if DontUseExceptions() is in effect (it is not by default).
15545           */
15546       if ( eclass == CE_Warning ) {
15547         warn( CPLGetLastErrorMsg(), "%s" );
15548       }
15549 
15550 
15551     }
15552     {
15553       /* %typemap(out) void */
15554     }
15555 
15556 
15557     XSRETURN(argvi);
15558   fail:
15559 
15560 
15561     SWIG_croak_null();
15562   }
15563 }
15564 
15565 
XS(_wrap_FieldDefn_IsUnique)15566 XS(_wrap_FieldDefn_IsUnique) {
15567   {
15568     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
15569     void *argp1 = 0 ;
15570     int res1 = 0 ;
15571     int argvi = 0;
15572     int result;
15573     dXSARGS;
15574 
15575     if ((items < 1) || (items > 1)) {
15576       SWIG_croak("Usage: FieldDefn_IsUnique(self);");
15577     }
15578     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15579     if (!SWIG_IsOK(res1)) {
15580       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_IsUnique" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15581     }
15582     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15583     {
15584       CPLErrorReset();
15585       result = (int)OGRFieldDefnShadow_IsUnique(arg1);
15586       CPLErr eclass = CPLGetLastErrorType();
15587       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15588         do_confess( CPLGetLastErrorMsg(), 0 );
15589 
15590 
15591 
15592 
15593 
15594       }
15595 
15596 
15597       /*
15598           Make warnings regular Perl warnings. This duplicates the warning
15599           message if DontUseExceptions() is in effect (it is not by default).
15600           */
15601       if ( eclass == CE_Warning ) {
15602         warn( CPLGetLastErrorMsg(), "%s" );
15603       }
15604 
15605 
15606     }
15607     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
15608 
15609     XSRETURN(argvi);
15610   fail:
15611 
15612     SWIG_croak_null();
15613   }
15614 }
15615 
15616 
XS(_wrap_FieldDefn_SetUnique)15617 XS(_wrap_FieldDefn_SetUnique) {
15618   {
15619     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
15620     int arg2 ;
15621     void *argp1 = 0 ;
15622     int res1 = 0 ;
15623     int val2 ;
15624     int ecode2 = 0 ;
15625     int argvi = 0;
15626     dXSARGS;
15627 
15628     if ((items < 2) || (items > 2)) {
15629       SWIG_croak("Usage: FieldDefn_SetUnique(self,bUnique);");
15630     }
15631     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15632     if (!SWIG_IsOK(res1)) {
15633       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_SetUnique" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15634     }
15635     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15636     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
15637     if (!SWIG_IsOK(ecode2)) {
15638       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FieldDefn_SetUnique" "', argument " "2"" of type '" "int""'");
15639     }
15640     arg2 = static_cast< int >(val2);
15641     {
15642       CPLErrorReset();
15643       OGRFieldDefnShadow_SetUnique(arg1,arg2);
15644       CPLErr eclass = CPLGetLastErrorType();
15645       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15646         do_confess( CPLGetLastErrorMsg(), 0 );
15647 
15648 
15649 
15650 
15651 
15652       }
15653 
15654 
15655       /*
15656           Make warnings regular Perl warnings. This duplicates the warning
15657           message if DontUseExceptions() is in effect (it is not by default).
15658           */
15659       if ( eclass == CE_Warning ) {
15660         warn( CPLGetLastErrorMsg(), "%s" );
15661       }
15662 
15663 
15664     }
15665     {
15666       /* %typemap(out) void */
15667     }
15668 
15669 
15670     XSRETURN(argvi);
15671   fail:
15672 
15673 
15674     SWIG_croak_null();
15675   }
15676 }
15677 
15678 
XS(_wrap_FieldDefn_GetDefault)15679 XS(_wrap_FieldDefn_GetDefault) {
15680   {
15681     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
15682     void *argp1 = 0 ;
15683     int res1 = 0 ;
15684     int argvi = 0;
15685     char *result = 0 ;
15686     dXSARGS;
15687 
15688     if ((items < 1) || (items > 1)) {
15689       SWIG_croak("Usage: FieldDefn_GetDefault(self);");
15690     }
15691     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15692     if (!SWIG_IsOK(res1)) {
15693       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_GetDefault" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15694     }
15695     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15696     {
15697       CPLErrorReset();
15698       result = (char *)OGRFieldDefnShadow_GetDefault(arg1);
15699       CPLErr eclass = CPLGetLastErrorType();
15700       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15701         do_confess( CPLGetLastErrorMsg(), 0 );
15702 
15703 
15704 
15705 
15706 
15707       }
15708 
15709 
15710       /*
15711           Make warnings regular Perl warnings. This duplicates the warning
15712           message if DontUseExceptions() is in effect (it is not by default).
15713           */
15714       if ( eclass == CE_Warning ) {
15715         warn( CPLGetLastErrorMsg(), "%s" );
15716       }
15717 
15718 
15719     }
15720     {
15721       /* %typemap(out) const char * */
15722       ST(argvi) = newSVpv(result, 0);
15723       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
15724       sv_2mortal(ST(argvi));
15725       argvi++;
15726     }
15727 
15728     XSRETURN(argvi);
15729   fail:
15730 
15731     SWIG_croak_null();
15732   }
15733 }
15734 
15735 
XS(_wrap_FieldDefn_SetDefault)15736 XS(_wrap_FieldDefn_SetDefault) {
15737   {
15738     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
15739     char *arg2 = (char *) 0 ;
15740     void *argp1 = 0 ;
15741     int res1 = 0 ;
15742     int res2 ;
15743     char *buf2 = 0 ;
15744     int alloc2 = 0 ;
15745     int argvi = 0;
15746     dXSARGS;
15747 
15748     if ((items < 2) || (items > 2)) {
15749       SWIG_croak("Usage: FieldDefn_SetDefault(self,pszValue);");
15750     }
15751     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15752     if (!SWIG_IsOK(res1)) {
15753       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_SetDefault" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15754     }
15755     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15756     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
15757     if (!SWIG_IsOK(res2)) {
15758       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "FieldDefn_SetDefault" "', argument " "2"" of type '" "char const *""'");
15759     }
15760     arg2 = reinterpret_cast< char * >(buf2);
15761     {
15762       CPLErrorReset();
15763       OGRFieldDefnShadow_SetDefault(arg1,(char const *)arg2);
15764       CPLErr eclass = CPLGetLastErrorType();
15765       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15766         do_confess( CPLGetLastErrorMsg(), 0 );
15767 
15768 
15769 
15770 
15771 
15772       }
15773 
15774 
15775       /*
15776           Make warnings regular Perl warnings. This duplicates the warning
15777           message if DontUseExceptions() is in effect (it is not by default).
15778           */
15779       if ( eclass == CE_Warning ) {
15780         warn( CPLGetLastErrorMsg(), "%s" );
15781       }
15782 
15783 
15784     }
15785     {
15786       /* %typemap(out) void */
15787     }
15788 
15789     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
15790     XSRETURN(argvi);
15791   fail:
15792 
15793     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
15794     SWIG_croak_null();
15795   }
15796 }
15797 
15798 
XS(_wrap_FieldDefn_IsDefaultDriverSpecific)15799 XS(_wrap_FieldDefn_IsDefaultDriverSpecific) {
15800   {
15801     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
15802     void *argp1 = 0 ;
15803     int res1 = 0 ;
15804     int argvi = 0;
15805     int result;
15806     dXSARGS;
15807 
15808     if ((items < 1) || (items > 1)) {
15809       SWIG_croak("Usage: FieldDefn_IsDefaultDriverSpecific(self);");
15810     }
15811     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15812     if (!SWIG_IsOK(res1)) {
15813       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_IsDefaultDriverSpecific" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15814     }
15815     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15816     {
15817       CPLErrorReset();
15818       result = (int)OGRFieldDefnShadow_IsDefaultDriverSpecific(arg1);
15819       CPLErr eclass = CPLGetLastErrorType();
15820       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15821         do_confess( CPLGetLastErrorMsg(), 0 );
15822 
15823 
15824 
15825 
15826 
15827       }
15828 
15829 
15830       /*
15831           Make warnings regular Perl warnings. This duplicates the warning
15832           message if DontUseExceptions() is in effect (it is not by default).
15833           */
15834       if ( eclass == CE_Warning ) {
15835         warn( CPLGetLastErrorMsg(), "%s" );
15836       }
15837 
15838 
15839     }
15840     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
15841 
15842     XSRETURN(argvi);
15843   fail:
15844 
15845     SWIG_croak_null();
15846   }
15847 }
15848 
15849 
XS(_wrap_FieldDefn_GetDomainName)15850 XS(_wrap_FieldDefn_GetDomainName) {
15851   {
15852     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
15853     void *argp1 = 0 ;
15854     int res1 = 0 ;
15855     int argvi = 0;
15856     char *result = 0 ;
15857     dXSARGS;
15858 
15859     if ((items < 1) || (items > 1)) {
15860       SWIG_croak("Usage: FieldDefn_GetDomainName(self);");
15861     }
15862     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15863     if (!SWIG_IsOK(res1)) {
15864       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_GetDomainName" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15865     }
15866     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15867     {
15868       CPLErrorReset();
15869       result = (char *)OGRFieldDefnShadow_GetDomainName(arg1);
15870       CPLErr eclass = CPLGetLastErrorType();
15871       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15872         do_confess( CPLGetLastErrorMsg(), 0 );
15873 
15874 
15875 
15876 
15877 
15878       }
15879 
15880 
15881       /*
15882           Make warnings regular Perl warnings. This duplicates the warning
15883           message if DontUseExceptions() is in effect (it is not by default).
15884           */
15885       if ( eclass == CE_Warning ) {
15886         warn( CPLGetLastErrorMsg(), "%s" );
15887       }
15888 
15889 
15890     }
15891     {
15892       /* %typemap(out) const char * */
15893       ST(argvi) = newSVpv(result, 0);
15894       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
15895       sv_2mortal(ST(argvi));
15896       argvi++;
15897     }
15898 
15899     XSRETURN(argvi);
15900   fail:
15901 
15902     SWIG_croak_null();
15903   }
15904 }
15905 
15906 
XS(_wrap_FieldDefn_SetDomainName)15907 XS(_wrap_FieldDefn_SetDomainName) {
15908   {
15909     OGRFieldDefnShadow *arg1 = (OGRFieldDefnShadow *) 0 ;
15910     char *arg2 = (char *) 0 ;
15911     void *argp1 = 0 ;
15912     int res1 = 0 ;
15913     int res2 ;
15914     char *buf2 = 0 ;
15915     int alloc2 = 0 ;
15916     int argvi = 0;
15917     dXSARGS;
15918 
15919     if ((items < 2) || (items > 2)) {
15920       SWIG_croak("Usage: FieldDefn_SetDomainName(self,name);");
15921     }
15922     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDefnShadow, 0 |  0 );
15923     if (!SWIG_IsOK(res1)) {
15924       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDefn_SetDomainName" "', argument " "1"" of type '" "OGRFieldDefnShadow *""'");
15925     }
15926     arg1 = reinterpret_cast< OGRFieldDefnShadow * >(argp1);
15927     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
15928     if (!SWIG_IsOK(res2)) {
15929       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "FieldDefn_SetDomainName" "', argument " "2"" of type '" "char const *""'");
15930     }
15931     arg2 = reinterpret_cast< char * >(buf2);
15932     {
15933       if (!arg2) {
15934         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
15935       }
15936     }
15937     {
15938       CPLErrorReset();
15939       OGRFieldDefnShadow_SetDomainName(arg1,(char const *)arg2);
15940       CPLErr eclass = CPLGetLastErrorType();
15941       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15942         do_confess( CPLGetLastErrorMsg(), 0 );
15943 
15944 
15945 
15946 
15947 
15948       }
15949 
15950 
15951       /*
15952           Make warnings regular Perl warnings. This duplicates the warning
15953           message if DontUseExceptions() is in effect (it is not by default).
15954           */
15955       if ( eclass == CE_Warning ) {
15956         warn( CPLGetLastErrorMsg(), "%s" );
15957       }
15958 
15959 
15960     }
15961     {
15962       /* %typemap(out) void */
15963     }
15964 
15965     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
15966     XSRETURN(argvi);
15967   fail:
15968 
15969     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
15970     SWIG_croak_null();
15971   }
15972 }
15973 
15974 
XS(_wrap_delete_GeomFieldDefn)15975 XS(_wrap_delete_GeomFieldDefn) {
15976   {
15977     OGRGeomFieldDefnShadow *arg1 = (OGRGeomFieldDefnShadow *) 0 ;
15978     void *argp1 = 0 ;
15979     int res1 = 0 ;
15980     int argvi = 0;
15981     dXSARGS;
15982 
15983     if ((items < 1) || (items > 1)) {
15984       SWIG_croak("Usage: delete_GeomFieldDefn(self);");
15985     }
15986     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeomFieldDefnShadow, SWIG_POINTER_DISOWN |  0 );
15987     if (!SWIG_IsOK(res1)) {
15988       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GeomFieldDefn" "', argument " "1"" of type '" "OGRGeomFieldDefnShadow *""'");
15989     }
15990     arg1 = reinterpret_cast< OGRGeomFieldDefnShadow * >(argp1);
15991     {
15992       CPLErrorReset();
15993       delete_OGRGeomFieldDefnShadow(arg1);
15994       CPLErr eclass = CPLGetLastErrorType();
15995       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
15996         do_confess( CPLGetLastErrorMsg(), 0 );
15997 
15998 
15999 
16000 
16001 
16002       }
16003 
16004 
16005       /*
16006           Make warnings regular Perl warnings. This duplicates the warning
16007           message if DontUseExceptions() is in effect (it is not by default).
16008           */
16009       if ( eclass == CE_Warning ) {
16010         warn( CPLGetLastErrorMsg(), "%s" );
16011       }
16012 
16013 
16014     }
16015     {
16016       /* %typemap(out) void */
16017     }
16018 
16019     XSRETURN(argvi);
16020   fail:
16021 
16022     SWIG_croak_null();
16023   }
16024 }
16025 
16026 
XS(_wrap_new_GeomFieldDefn)16027 XS(_wrap_new_GeomFieldDefn) {
16028   {
16029     char *arg1 = (char *) "" ;
16030     OGRwkbGeometryType arg2 = (OGRwkbGeometryType) wkbUnknown ;
16031     int res1 ;
16032     char *buf1 = 0 ;
16033     int alloc1 = 0 ;
16034     int val2 ;
16035     int ecode2 = 0 ;
16036     int argvi = 0;
16037     OGRGeomFieldDefnShadow *result = 0 ;
16038     dXSARGS;
16039 
16040     if ((items < 0) || (items > 2)) {
16041       SWIG_croak("Usage: new_GeomFieldDefn(name_null_ok,field_type);");
16042     }
16043     if (items > 0) {
16044       res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
16045       if (!SWIG_IsOK(res1)) {
16046         SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_GeomFieldDefn" "', argument " "1"" of type '" "char const *""'");
16047       }
16048       arg1 = reinterpret_cast< char * >(buf1);
16049     }
16050     if (items > 1) {
16051       ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
16052       if (!SWIG_IsOK(ecode2)) {
16053         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_GeomFieldDefn" "', argument " "2"" of type '" "OGRwkbGeometryType""'");
16054       }
16055       arg2 = static_cast< OGRwkbGeometryType >(val2);
16056     }
16057     {
16058       CPLErrorReset();
16059       result = (OGRGeomFieldDefnShadow *)new_OGRGeomFieldDefnShadow((char const *)arg1,arg2);
16060       CPLErr eclass = CPLGetLastErrorType();
16061       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16062         do_confess( CPLGetLastErrorMsg(), 0 );
16063 
16064 
16065 
16066 
16067 
16068       }
16069 
16070 
16071       /*
16072           Make warnings regular Perl warnings. This duplicates the warning
16073           message if DontUseExceptions() is in effect (it is not by default).
16074           */
16075       if ( eclass == CE_Warning ) {
16076         warn( CPLGetLastErrorMsg(), "%s" );
16077       }
16078 
16079 
16080     }
16081     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeomFieldDefnShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
16082     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
16083 
16084     XSRETURN(argvi);
16085   fail:
16086     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
16087 
16088     SWIG_croak_null();
16089   }
16090 }
16091 
16092 
XS(_wrap_GeomFieldDefn_GetName)16093 XS(_wrap_GeomFieldDefn_GetName) {
16094   {
16095     OGRGeomFieldDefnShadow *arg1 = (OGRGeomFieldDefnShadow *) 0 ;
16096     void *argp1 = 0 ;
16097     int res1 = 0 ;
16098     int argvi = 0;
16099     char *result = 0 ;
16100     dXSARGS;
16101 
16102     if ((items < 1) || (items > 1)) {
16103       SWIG_croak("Usage: GeomFieldDefn_GetName(self);");
16104     }
16105     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeomFieldDefnShadow, 0 |  0 );
16106     if (!SWIG_IsOK(res1)) {
16107       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GeomFieldDefn_GetName" "', argument " "1"" of type '" "OGRGeomFieldDefnShadow *""'");
16108     }
16109     arg1 = reinterpret_cast< OGRGeomFieldDefnShadow * >(argp1);
16110     {
16111       CPLErrorReset();
16112       result = (char *)OGRGeomFieldDefnShadow_GetName(arg1);
16113       CPLErr eclass = CPLGetLastErrorType();
16114       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16115         do_confess( CPLGetLastErrorMsg(), 0 );
16116 
16117 
16118 
16119 
16120 
16121       }
16122 
16123 
16124       /*
16125           Make warnings regular Perl warnings. This duplicates the warning
16126           message if DontUseExceptions() is in effect (it is not by default).
16127           */
16128       if ( eclass == CE_Warning ) {
16129         warn( CPLGetLastErrorMsg(), "%s" );
16130       }
16131 
16132 
16133     }
16134     {
16135       /* %typemap(out) const char * */
16136       ST(argvi) = newSVpv(result, 0);
16137       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
16138       sv_2mortal(ST(argvi));
16139       argvi++;
16140     }
16141 
16142     XSRETURN(argvi);
16143   fail:
16144 
16145     SWIG_croak_null();
16146   }
16147 }
16148 
16149 
XS(_wrap_GeomFieldDefn_GetNameRef)16150 XS(_wrap_GeomFieldDefn_GetNameRef) {
16151   {
16152     OGRGeomFieldDefnShadow *arg1 = (OGRGeomFieldDefnShadow *) 0 ;
16153     void *argp1 = 0 ;
16154     int res1 = 0 ;
16155     int argvi = 0;
16156     char *result = 0 ;
16157     dXSARGS;
16158 
16159     if ((items < 1) || (items > 1)) {
16160       SWIG_croak("Usage: GeomFieldDefn_GetNameRef(self);");
16161     }
16162     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeomFieldDefnShadow, 0 |  0 );
16163     if (!SWIG_IsOK(res1)) {
16164       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GeomFieldDefn_GetNameRef" "', argument " "1"" of type '" "OGRGeomFieldDefnShadow *""'");
16165     }
16166     arg1 = reinterpret_cast< OGRGeomFieldDefnShadow * >(argp1);
16167     {
16168       CPLErrorReset();
16169       result = (char *)OGRGeomFieldDefnShadow_GetNameRef(arg1);
16170       CPLErr eclass = CPLGetLastErrorType();
16171       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16172         do_confess( CPLGetLastErrorMsg(), 0 );
16173 
16174 
16175 
16176 
16177 
16178       }
16179 
16180 
16181       /*
16182           Make warnings regular Perl warnings. This duplicates the warning
16183           message if DontUseExceptions() is in effect (it is not by default).
16184           */
16185       if ( eclass == CE_Warning ) {
16186         warn( CPLGetLastErrorMsg(), "%s" );
16187       }
16188 
16189 
16190     }
16191     {
16192       /* %typemap(out) const char * */
16193       ST(argvi) = newSVpv(result, 0);
16194       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
16195       sv_2mortal(ST(argvi));
16196       argvi++;
16197     }
16198 
16199     XSRETURN(argvi);
16200   fail:
16201 
16202     SWIG_croak_null();
16203   }
16204 }
16205 
16206 
XS(_wrap_GeomFieldDefn_SetName)16207 XS(_wrap_GeomFieldDefn_SetName) {
16208   {
16209     OGRGeomFieldDefnShadow *arg1 = (OGRGeomFieldDefnShadow *) 0 ;
16210     char *arg2 = (char *) 0 ;
16211     void *argp1 = 0 ;
16212     int res1 = 0 ;
16213     int res2 ;
16214     char *buf2 = 0 ;
16215     int alloc2 = 0 ;
16216     int argvi = 0;
16217     dXSARGS;
16218 
16219     if ((items < 2) || (items > 2)) {
16220       SWIG_croak("Usage: GeomFieldDefn_SetName(self,name);");
16221     }
16222     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeomFieldDefnShadow, 0 |  0 );
16223     if (!SWIG_IsOK(res1)) {
16224       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GeomFieldDefn_SetName" "', argument " "1"" of type '" "OGRGeomFieldDefnShadow *""'");
16225     }
16226     arg1 = reinterpret_cast< OGRGeomFieldDefnShadow * >(argp1);
16227     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
16228     if (!SWIG_IsOK(res2)) {
16229       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GeomFieldDefn_SetName" "', argument " "2"" of type '" "char const *""'");
16230     }
16231     arg2 = reinterpret_cast< char * >(buf2);
16232     {
16233       if (!arg2) {
16234         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
16235       }
16236     }
16237     {
16238       CPLErrorReset();
16239       OGRGeomFieldDefnShadow_SetName(arg1,(char const *)arg2);
16240       CPLErr eclass = CPLGetLastErrorType();
16241       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16242         do_confess( CPLGetLastErrorMsg(), 0 );
16243 
16244 
16245 
16246 
16247 
16248       }
16249 
16250 
16251       /*
16252           Make warnings regular Perl warnings. This duplicates the warning
16253           message if DontUseExceptions() is in effect (it is not by default).
16254           */
16255       if ( eclass == CE_Warning ) {
16256         warn( CPLGetLastErrorMsg(), "%s" );
16257       }
16258 
16259 
16260     }
16261     {
16262       /* %typemap(out) void */
16263     }
16264 
16265     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
16266     XSRETURN(argvi);
16267   fail:
16268 
16269     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
16270     SWIG_croak_null();
16271   }
16272 }
16273 
16274 
XS(_wrap_GeomFieldDefn_GetType)16275 XS(_wrap_GeomFieldDefn_GetType) {
16276   {
16277     OGRGeomFieldDefnShadow *arg1 = (OGRGeomFieldDefnShadow *) 0 ;
16278     void *argp1 = 0 ;
16279     int res1 = 0 ;
16280     int argvi = 0;
16281     OGRwkbGeometryType result;
16282     dXSARGS;
16283 
16284     if ((items < 1) || (items > 1)) {
16285       SWIG_croak("Usage: GeomFieldDefn_GetType(self);");
16286     }
16287     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeomFieldDefnShadow, 0 |  0 );
16288     if (!SWIG_IsOK(res1)) {
16289       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GeomFieldDefn_GetType" "', argument " "1"" of type '" "OGRGeomFieldDefnShadow *""'");
16290     }
16291     arg1 = reinterpret_cast< OGRGeomFieldDefnShadow * >(argp1);
16292     {
16293       CPLErrorReset();
16294       result = (OGRwkbGeometryType)OGRGeomFieldDefnShadow_GetType(arg1);
16295       CPLErr eclass = CPLGetLastErrorType();
16296       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16297         do_confess( CPLGetLastErrorMsg(), 0 );
16298 
16299 
16300 
16301 
16302 
16303       }
16304 
16305 
16306       /*
16307           Make warnings regular Perl warnings. This duplicates the warning
16308           message if DontUseExceptions() is in effect (it is not by default).
16309           */
16310       if ( eclass == CE_Warning ) {
16311         warn( CPLGetLastErrorMsg(), "%s" );
16312       }
16313 
16314 
16315     }
16316     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
16317 
16318     XSRETURN(argvi);
16319   fail:
16320 
16321     SWIG_croak_null();
16322   }
16323 }
16324 
16325 
XS(_wrap_GeomFieldDefn_SetType)16326 XS(_wrap_GeomFieldDefn_SetType) {
16327   {
16328     OGRGeomFieldDefnShadow *arg1 = (OGRGeomFieldDefnShadow *) 0 ;
16329     OGRwkbGeometryType arg2 ;
16330     void *argp1 = 0 ;
16331     int res1 = 0 ;
16332     int val2 ;
16333     int ecode2 = 0 ;
16334     int argvi = 0;
16335     dXSARGS;
16336 
16337     if ((items < 2) || (items > 2)) {
16338       SWIG_croak("Usage: GeomFieldDefn_SetType(self,type);");
16339     }
16340     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeomFieldDefnShadow, 0 |  0 );
16341     if (!SWIG_IsOK(res1)) {
16342       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GeomFieldDefn_SetType" "', argument " "1"" of type '" "OGRGeomFieldDefnShadow *""'");
16343     }
16344     arg1 = reinterpret_cast< OGRGeomFieldDefnShadow * >(argp1);
16345     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
16346     if (!SWIG_IsOK(ecode2)) {
16347       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GeomFieldDefn_SetType" "', argument " "2"" of type '" "OGRwkbGeometryType""'");
16348     }
16349     arg2 = static_cast< OGRwkbGeometryType >(val2);
16350     {
16351       CPLErrorReset();
16352       OGRGeomFieldDefnShadow_SetType(arg1,arg2);
16353       CPLErr eclass = CPLGetLastErrorType();
16354       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16355         do_confess( CPLGetLastErrorMsg(), 0 );
16356 
16357 
16358 
16359 
16360 
16361       }
16362 
16363 
16364       /*
16365           Make warnings regular Perl warnings. This duplicates the warning
16366           message if DontUseExceptions() is in effect (it is not by default).
16367           */
16368       if ( eclass == CE_Warning ) {
16369         warn( CPLGetLastErrorMsg(), "%s" );
16370       }
16371 
16372 
16373     }
16374     {
16375       /* %typemap(out) void */
16376     }
16377 
16378 
16379     XSRETURN(argvi);
16380   fail:
16381 
16382 
16383     SWIG_croak_null();
16384   }
16385 }
16386 
16387 
XS(_wrap_GeomFieldDefn_GetSpatialRef)16388 XS(_wrap_GeomFieldDefn_GetSpatialRef) {
16389   {
16390     OGRGeomFieldDefnShadow *arg1 = (OGRGeomFieldDefnShadow *) 0 ;
16391     void *argp1 = 0 ;
16392     int res1 = 0 ;
16393     int argvi = 0;
16394     OSRSpatialReferenceShadow *result = 0 ;
16395     dXSARGS;
16396 
16397     if ((items < 1) || (items > 1)) {
16398       SWIG_croak("Usage: GeomFieldDefn_GetSpatialRef(self);");
16399     }
16400     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeomFieldDefnShadow, 0 |  0 );
16401     if (!SWIG_IsOK(res1)) {
16402       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GeomFieldDefn_GetSpatialRef" "', argument " "1"" of type '" "OGRGeomFieldDefnShadow *""'");
16403     }
16404     arg1 = reinterpret_cast< OGRGeomFieldDefnShadow * >(argp1);
16405     {
16406       CPLErrorReset();
16407       result = (OSRSpatialReferenceShadow *)OGRGeomFieldDefnShadow_GetSpatialRef(arg1);
16408       CPLErr eclass = CPLGetLastErrorType();
16409       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16410         do_confess( CPLGetLastErrorMsg(), 0 );
16411 
16412 
16413 
16414 
16415 
16416       }
16417 
16418 
16419       /*
16420           Make warnings regular Perl warnings. This duplicates the warning
16421           message if DontUseExceptions() is in effect (it is not by default).
16422           */
16423       if ( eclass == CE_Warning ) {
16424         warn( CPLGetLastErrorMsg(), "%s" );
16425       }
16426 
16427 
16428     }
16429     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OSRSpatialReferenceShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
16430 
16431     XSRETURN(argvi);
16432   fail:
16433 
16434     SWIG_croak_null();
16435   }
16436 }
16437 
16438 
XS(_wrap_GeomFieldDefn_SetSpatialRef)16439 XS(_wrap_GeomFieldDefn_SetSpatialRef) {
16440   {
16441     OGRGeomFieldDefnShadow *arg1 = (OGRGeomFieldDefnShadow *) 0 ;
16442     OSRSpatialReferenceShadow *arg2 = (OSRSpatialReferenceShadow *) 0 ;
16443     void *argp1 = 0 ;
16444     int res1 = 0 ;
16445     void *argp2 = 0 ;
16446     int res2 = 0 ;
16447     int argvi = 0;
16448     dXSARGS;
16449 
16450     if ((items < 2) || (items > 2)) {
16451       SWIG_croak("Usage: GeomFieldDefn_SetSpatialRef(self,srs);");
16452     }
16453     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeomFieldDefnShadow, 0 |  0 );
16454     if (!SWIG_IsOK(res1)) {
16455       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GeomFieldDefn_SetSpatialRef" "', argument " "1"" of type '" "OGRGeomFieldDefnShadow *""'");
16456     }
16457     arg1 = reinterpret_cast< OGRGeomFieldDefnShadow * >(argp1);
16458     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OSRSpatialReferenceShadow, 0 |  0 );
16459     if (!SWIG_IsOK(res2)) {
16460       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GeomFieldDefn_SetSpatialRef" "', argument " "2"" of type '" "OSRSpatialReferenceShadow *""'");
16461     }
16462     arg2 = reinterpret_cast< OSRSpatialReferenceShadow * >(argp2);
16463     {
16464       CPLErrorReset();
16465       OGRGeomFieldDefnShadow_SetSpatialRef(arg1,arg2);
16466       CPLErr eclass = CPLGetLastErrorType();
16467       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16468         do_confess( CPLGetLastErrorMsg(), 0 );
16469 
16470 
16471 
16472 
16473 
16474       }
16475 
16476 
16477       /*
16478           Make warnings regular Perl warnings. This duplicates the warning
16479           message if DontUseExceptions() is in effect (it is not by default).
16480           */
16481       if ( eclass == CE_Warning ) {
16482         warn( CPLGetLastErrorMsg(), "%s" );
16483       }
16484 
16485 
16486     }
16487     {
16488       /* %typemap(out) void */
16489     }
16490 
16491 
16492     XSRETURN(argvi);
16493   fail:
16494 
16495 
16496     SWIG_croak_null();
16497   }
16498 }
16499 
16500 
XS(_wrap_GeomFieldDefn_IsIgnored)16501 XS(_wrap_GeomFieldDefn_IsIgnored) {
16502   {
16503     OGRGeomFieldDefnShadow *arg1 = (OGRGeomFieldDefnShadow *) 0 ;
16504     void *argp1 = 0 ;
16505     int res1 = 0 ;
16506     int argvi = 0;
16507     int result;
16508     dXSARGS;
16509 
16510     if ((items < 1) || (items > 1)) {
16511       SWIG_croak("Usage: GeomFieldDefn_IsIgnored(self);");
16512     }
16513     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeomFieldDefnShadow, 0 |  0 );
16514     if (!SWIG_IsOK(res1)) {
16515       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GeomFieldDefn_IsIgnored" "', argument " "1"" of type '" "OGRGeomFieldDefnShadow *""'");
16516     }
16517     arg1 = reinterpret_cast< OGRGeomFieldDefnShadow * >(argp1);
16518     {
16519       CPLErrorReset();
16520       result = (int)OGRGeomFieldDefnShadow_IsIgnored(arg1);
16521       CPLErr eclass = CPLGetLastErrorType();
16522       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16523         do_confess( CPLGetLastErrorMsg(), 0 );
16524 
16525 
16526 
16527 
16528 
16529       }
16530 
16531 
16532       /*
16533           Make warnings regular Perl warnings. This duplicates the warning
16534           message if DontUseExceptions() is in effect (it is not by default).
16535           */
16536       if ( eclass == CE_Warning ) {
16537         warn( CPLGetLastErrorMsg(), "%s" );
16538       }
16539 
16540 
16541     }
16542     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
16543 
16544     XSRETURN(argvi);
16545   fail:
16546 
16547     SWIG_croak_null();
16548   }
16549 }
16550 
16551 
XS(_wrap_GeomFieldDefn_SetIgnored)16552 XS(_wrap_GeomFieldDefn_SetIgnored) {
16553   {
16554     OGRGeomFieldDefnShadow *arg1 = (OGRGeomFieldDefnShadow *) 0 ;
16555     int arg2 ;
16556     void *argp1 = 0 ;
16557     int res1 = 0 ;
16558     int val2 ;
16559     int ecode2 = 0 ;
16560     int argvi = 0;
16561     dXSARGS;
16562 
16563     if ((items < 2) || (items > 2)) {
16564       SWIG_croak("Usage: GeomFieldDefn_SetIgnored(self,bIgnored);");
16565     }
16566     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeomFieldDefnShadow, 0 |  0 );
16567     if (!SWIG_IsOK(res1)) {
16568       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GeomFieldDefn_SetIgnored" "', argument " "1"" of type '" "OGRGeomFieldDefnShadow *""'");
16569     }
16570     arg1 = reinterpret_cast< OGRGeomFieldDefnShadow * >(argp1);
16571     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
16572     if (!SWIG_IsOK(ecode2)) {
16573       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GeomFieldDefn_SetIgnored" "', argument " "2"" of type '" "int""'");
16574     }
16575     arg2 = static_cast< int >(val2);
16576     {
16577       CPLErrorReset();
16578       OGRGeomFieldDefnShadow_SetIgnored(arg1,arg2);
16579       CPLErr eclass = CPLGetLastErrorType();
16580       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16581         do_confess( CPLGetLastErrorMsg(), 0 );
16582 
16583 
16584 
16585 
16586 
16587       }
16588 
16589 
16590       /*
16591           Make warnings regular Perl warnings. This duplicates the warning
16592           message if DontUseExceptions() is in effect (it is not by default).
16593           */
16594       if ( eclass == CE_Warning ) {
16595         warn( CPLGetLastErrorMsg(), "%s" );
16596       }
16597 
16598 
16599     }
16600     {
16601       /* %typemap(out) void */
16602     }
16603 
16604 
16605     XSRETURN(argvi);
16606   fail:
16607 
16608 
16609     SWIG_croak_null();
16610   }
16611 }
16612 
16613 
XS(_wrap_GeomFieldDefn_IsNullable)16614 XS(_wrap_GeomFieldDefn_IsNullable) {
16615   {
16616     OGRGeomFieldDefnShadow *arg1 = (OGRGeomFieldDefnShadow *) 0 ;
16617     void *argp1 = 0 ;
16618     int res1 = 0 ;
16619     int argvi = 0;
16620     int result;
16621     dXSARGS;
16622 
16623     if ((items < 1) || (items > 1)) {
16624       SWIG_croak("Usage: GeomFieldDefn_IsNullable(self);");
16625     }
16626     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeomFieldDefnShadow, 0 |  0 );
16627     if (!SWIG_IsOK(res1)) {
16628       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GeomFieldDefn_IsNullable" "', argument " "1"" of type '" "OGRGeomFieldDefnShadow *""'");
16629     }
16630     arg1 = reinterpret_cast< OGRGeomFieldDefnShadow * >(argp1);
16631     {
16632       CPLErrorReset();
16633       result = (int)OGRGeomFieldDefnShadow_IsNullable(arg1);
16634       CPLErr eclass = CPLGetLastErrorType();
16635       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16636         do_confess( CPLGetLastErrorMsg(), 0 );
16637 
16638 
16639 
16640 
16641 
16642       }
16643 
16644 
16645       /*
16646           Make warnings regular Perl warnings. This duplicates the warning
16647           message if DontUseExceptions() is in effect (it is not by default).
16648           */
16649       if ( eclass == CE_Warning ) {
16650         warn( CPLGetLastErrorMsg(), "%s" );
16651       }
16652 
16653 
16654     }
16655     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
16656 
16657     XSRETURN(argvi);
16658   fail:
16659 
16660     SWIG_croak_null();
16661   }
16662 }
16663 
16664 
XS(_wrap_GeomFieldDefn_SetNullable)16665 XS(_wrap_GeomFieldDefn_SetNullable) {
16666   {
16667     OGRGeomFieldDefnShadow *arg1 = (OGRGeomFieldDefnShadow *) 0 ;
16668     int arg2 ;
16669     void *argp1 = 0 ;
16670     int res1 = 0 ;
16671     int val2 ;
16672     int ecode2 = 0 ;
16673     int argvi = 0;
16674     dXSARGS;
16675 
16676     if ((items < 2) || (items > 2)) {
16677       SWIG_croak("Usage: GeomFieldDefn_SetNullable(self,bNullable);");
16678     }
16679     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeomFieldDefnShadow, 0 |  0 );
16680     if (!SWIG_IsOK(res1)) {
16681       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GeomFieldDefn_SetNullable" "', argument " "1"" of type '" "OGRGeomFieldDefnShadow *""'");
16682     }
16683     arg1 = reinterpret_cast< OGRGeomFieldDefnShadow * >(argp1);
16684     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
16685     if (!SWIG_IsOK(ecode2)) {
16686       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GeomFieldDefn_SetNullable" "', argument " "2"" of type '" "int""'");
16687     }
16688     arg2 = static_cast< int >(val2);
16689     {
16690       CPLErrorReset();
16691       OGRGeomFieldDefnShadow_SetNullable(arg1,arg2);
16692       CPLErr eclass = CPLGetLastErrorType();
16693       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16694         do_confess( CPLGetLastErrorMsg(), 0 );
16695 
16696 
16697 
16698 
16699 
16700       }
16701 
16702 
16703       /*
16704           Make warnings regular Perl warnings. This duplicates the warning
16705           message if DontUseExceptions() is in effect (it is not by default).
16706           */
16707       if ( eclass == CE_Warning ) {
16708         warn( CPLGetLastErrorMsg(), "%s" );
16709       }
16710 
16711 
16712     }
16713     {
16714       /* %typemap(out) void */
16715     }
16716 
16717 
16718     XSRETURN(argvi);
16719   fail:
16720 
16721 
16722     SWIG_croak_null();
16723   }
16724 }
16725 
16726 
XS(_wrap_CreateGeometryFromWkb)16727 XS(_wrap_CreateGeometryFromWkb) {
16728   {
16729     size_t arg1 ;
16730     char *arg2 = (char *) 0 ;
16731     OSRSpatialReferenceShadow *arg3 = (OSRSpatialReferenceShadow *) NULL ;
16732     void *argp3 = 0 ;
16733     int res3 = 0 ;
16734     int argvi = 0;
16735     OGRGeometryShadow *result = 0 ;
16736     dXSARGS;
16737 
16738     if ((items < 1) || (items > 2)) {
16739       SWIG_croak("Usage: CreateGeometryFromWkb(len,bin_string,reference);");
16740     }
16741     {
16742       /* %typemap(in,numinputs=1) (size_t nLen, char *pBuf ) */
16743       if (SvOK(ST(0))) {
16744         SV *sv = ST(0);
16745         if (SvROK(sv) && SvTYPE(SvRV(sv)) < SVt_PVAV)
16746         sv = SvRV(sv);
16747         if (!SvPOK(sv))
16748         do_confess(NEED_BINARY_DATA, 1);
16749         STRLEN len = SvCUR(sv);
16750         arg2 = SvPV_nolen(sv);
16751         arg1 = len;
16752       } else {
16753         arg2 = NULL;
16754         arg1 = 0;
16755       }
16756     }
16757     if (items > 1) {
16758       res3 = SWIG_ConvertPtr(ST(1), &argp3,SWIGTYPE_p_OSRSpatialReferenceShadow, 0 |  0 );
16759       if (!SWIG_IsOK(res3)) {
16760         SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "CreateGeometryFromWkb" "', argument " "3"" of type '" "OSRSpatialReferenceShadow *""'");
16761       }
16762       arg3 = reinterpret_cast< OSRSpatialReferenceShadow * >(argp3);
16763     }
16764     {
16765       CPLErrorReset();
16766       result = (OGRGeometryShadow *)CreateGeometryFromWkb(arg1,arg2,arg3);
16767       CPLErr eclass = CPLGetLastErrorType();
16768       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16769         do_confess( CPLGetLastErrorMsg(), 0 );
16770 
16771 
16772 
16773 
16774 
16775       }
16776 
16777 
16778       /*
16779           Make warnings regular Perl warnings. This duplicates the warning
16780           message if DontUseExceptions() is in effect (it is not by default).
16781           */
16782       if ( eclass == CE_Warning ) {
16783         warn( CPLGetLastErrorMsg(), "%s" );
16784       }
16785 
16786 
16787     }
16788     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
16789 
16790     XSRETURN(argvi);
16791   fail:
16792 
16793     SWIG_croak_null();
16794   }
16795 }
16796 
16797 
XS(_wrap_CreateGeometryFromWkt)16798 XS(_wrap_CreateGeometryFromWkt) {
16799   {
16800     char **arg1 = (char **) 0 ;
16801     OSRSpatialReferenceShadow *arg2 = (OSRSpatialReferenceShadow *) NULL ;
16802     char *val1 ;
16803     U8 *tmpbuf1 = NULL ;
16804     void *argp2 = 0 ;
16805     int res2 = 0 ;
16806     int argvi = 0;
16807     OGRGeometryShadow *result = 0 ;
16808     dXSARGS;
16809 
16810     if ((items < 1) || (items > 2)) {
16811       SWIG_croak("Usage: CreateGeometryFromWkt(val,reference);");
16812     }
16813     {
16814       /* %typemap(in) (char **ignorechange) */
16815       val1 = sv_to_utf8_string(ST(0), &tmpbuf1);
16816       arg1 = &val1;
16817     }
16818     if (items > 1) {
16819       res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OSRSpatialReferenceShadow, 0 |  0 );
16820       if (!SWIG_IsOK(res2)) {
16821         SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "CreateGeometryFromWkt" "', argument " "2"" of type '" "OSRSpatialReferenceShadow *""'");
16822       }
16823       arg2 = reinterpret_cast< OSRSpatialReferenceShadow * >(argp2);
16824     }
16825     {
16826       CPLErrorReset();
16827       result = (OGRGeometryShadow *)CreateGeometryFromWkt(arg1,arg2);
16828       CPLErr eclass = CPLGetLastErrorType();
16829       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16830         do_confess( CPLGetLastErrorMsg(), 0 );
16831 
16832 
16833 
16834 
16835 
16836       }
16837 
16838 
16839       /*
16840           Make warnings regular Perl warnings. This duplicates the warning
16841           message if DontUseExceptions() is in effect (it is not by default).
16842           */
16843       if ( eclass == CE_Warning ) {
16844         warn( CPLGetLastErrorMsg(), "%s" );
16845       }
16846 
16847 
16848     }
16849     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
16850     {
16851       /* %typemap(freearg) (char **ignorechange) */
16852       if (tmpbuf1) Safefree(tmpbuf1);
16853     }
16854 
16855     XSRETURN(argvi);
16856   fail:
16857     {
16858       /* %typemap(freearg) (char **ignorechange) */
16859       if (tmpbuf1) Safefree(tmpbuf1);
16860     }
16861 
16862     SWIG_croak_null();
16863   }
16864 }
16865 
16866 
XS(_wrap_CreateGeometryFromGML)16867 XS(_wrap_CreateGeometryFromGML) {
16868   {
16869     char *arg1 = (char *) 0 ;
16870     int res1 ;
16871     char *buf1 = 0 ;
16872     int alloc1 = 0 ;
16873     int argvi = 0;
16874     OGRGeometryShadow *result = 0 ;
16875     dXSARGS;
16876 
16877     if ((items < 1) || (items > 1)) {
16878       SWIG_croak("Usage: CreateGeometryFromGML(input_string);");
16879     }
16880     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
16881     if (!SWIG_IsOK(res1)) {
16882       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CreateGeometryFromGML" "', argument " "1"" of type '" "char const *""'");
16883     }
16884     arg1 = reinterpret_cast< char * >(buf1);
16885     {
16886       CPLErrorReset();
16887       result = (OGRGeometryShadow *)CreateGeometryFromGML((char const *)arg1);
16888       CPLErr eclass = CPLGetLastErrorType();
16889       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16890         do_confess( CPLGetLastErrorMsg(), 0 );
16891 
16892 
16893 
16894 
16895 
16896       }
16897 
16898 
16899       /*
16900           Make warnings regular Perl warnings. This duplicates the warning
16901           message if DontUseExceptions() is in effect (it is not by default).
16902           */
16903       if ( eclass == CE_Warning ) {
16904         warn( CPLGetLastErrorMsg(), "%s" );
16905       }
16906 
16907 
16908     }
16909     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
16910     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
16911     XSRETURN(argvi);
16912   fail:
16913     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
16914     SWIG_croak_null();
16915   }
16916 }
16917 
16918 
XS(_wrap_CreateGeometryFromJson)16919 XS(_wrap_CreateGeometryFromJson) {
16920   {
16921     char *arg1 = (char *) 0 ;
16922     int res1 ;
16923     char *buf1 = 0 ;
16924     int alloc1 = 0 ;
16925     int argvi = 0;
16926     OGRGeometryShadow *result = 0 ;
16927     dXSARGS;
16928 
16929     if ((items < 1) || (items > 1)) {
16930       SWIG_croak("Usage: CreateGeometryFromJson(input_string);");
16931     }
16932     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
16933     if (!SWIG_IsOK(res1)) {
16934       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CreateGeometryFromJson" "', argument " "1"" of type '" "char const *""'");
16935     }
16936     arg1 = reinterpret_cast< char * >(buf1);
16937     {
16938       CPLErrorReset();
16939       result = (OGRGeometryShadow *)CreateGeometryFromJson((char const *)arg1);
16940       CPLErr eclass = CPLGetLastErrorType();
16941       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16942         do_confess( CPLGetLastErrorMsg(), 0 );
16943 
16944 
16945 
16946 
16947 
16948       }
16949 
16950 
16951       /*
16952           Make warnings regular Perl warnings. This duplicates the warning
16953           message if DontUseExceptions() is in effect (it is not by default).
16954           */
16955       if ( eclass == CE_Warning ) {
16956         warn( CPLGetLastErrorMsg(), "%s" );
16957       }
16958 
16959 
16960     }
16961     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
16962     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
16963     XSRETURN(argvi);
16964   fail:
16965     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
16966     SWIG_croak_null();
16967   }
16968 }
16969 
16970 
XS(_wrap_CreateGeometryFromEsriJson)16971 XS(_wrap_CreateGeometryFromEsriJson) {
16972   {
16973     char *arg1 = (char *) 0 ;
16974     int res1 ;
16975     char *buf1 = 0 ;
16976     int alloc1 = 0 ;
16977     int argvi = 0;
16978     OGRGeometryShadow *result = 0 ;
16979     dXSARGS;
16980 
16981     if ((items < 1) || (items > 1)) {
16982       SWIG_croak("Usage: CreateGeometryFromEsriJson(input_string);");
16983     }
16984     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
16985     if (!SWIG_IsOK(res1)) {
16986       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CreateGeometryFromEsriJson" "', argument " "1"" of type '" "char const *""'");
16987     }
16988     arg1 = reinterpret_cast< char * >(buf1);
16989     {
16990       CPLErrorReset();
16991       result = (OGRGeometryShadow *)CreateGeometryFromEsriJson((char const *)arg1);
16992       CPLErr eclass = CPLGetLastErrorType();
16993       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
16994         do_confess( CPLGetLastErrorMsg(), 0 );
16995 
16996 
16997 
16998 
16999 
17000       }
17001 
17002 
17003       /*
17004           Make warnings regular Perl warnings. This duplicates the warning
17005           message if DontUseExceptions() is in effect (it is not by default).
17006           */
17007       if ( eclass == CE_Warning ) {
17008         warn( CPLGetLastErrorMsg(), "%s" );
17009       }
17010 
17011 
17012     }
17013     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
17014     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
17015     XSRETURN(argvi);
17016   fail:
17017     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
17018     SWIG_croak_null();
17019   }
17020 }
17021 
17022 
XS(_wrap_BuildPolygonFromEdges)17023 XS(_wrap_BuildPolygonFromEdges) {
17024   {
17025     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
17026     int arg2 = (int) 0 ;
17027     int arg3 = (int) 0 ;
17028     double arg4 = (double) 0 ;
17029     void *argp1 = 0 ;
17030     int res1 = 0 ;
17031     int val2 ;
17032     int ecode2 = 0 ;
17033     int val3 ;
17034     int ecode3 = 0 ;
17035     double val4 ;
17036     int ecode4 = 0 ;
17037     int argvi = 0;
17038     OGRGeometryShadow *result = 0 ;
17039     dXSARGS;
17040 
17041     if ((items < 1) || (items > 4)) {
17042       SWIG_croak("Usage: BuildPolygonFromEdges(hLineCollection,bBestEffort,bAutoClose,dfTolerance);");
17043     }
17044     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
17045     if (!SWIG_IsOK(res1)) {
17046       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "BuildPolygonFromEdges" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
17047     }
17048     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
17049     if (items > 1) {
17050       ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
17051       if (!SWIG_IsOK(ecode2)) {
17052         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "BuildPolygonFromEdges" "', argument " "2"" of type '" "int""'");
17053       }
17054       arg2 = static_cast< int >(val2);
17055     }
17056     if (items > 2) {
17057       ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
17058       if (!SWIG_IsOK(ecode3)) {
17059         SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "BuildPolygonFromEdges" "', argument " "3"" of type '" "int""'");
17060       }
17061       arg3 = static_cast< int >(val3);
17062     }
17063     if (items > 3) {
17064       ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
17065       if (!SWIG_IsOK(ecode4)) {
17066         SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "BuildPolygonFromEdges" "', argument " "4"" of type '" "double""'");
17067       }
17068       arg4 = static_cast< double >(val4);
17069     }
17070     {
17071       CPLErrorReset();
17072       result = (OGRGeometryShadow *)BuildPolygonFromEdges(arg1,arg2,arg3,arg4);
17073       CPLErr eclass = CPLGetLastErrorType();
17074       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
17075         do_confess( CPLGetLastErrorMsg(), 0 );
17076 
17077 
17078 
17079 
17080 
17081       }
17082 
17083 
17084       /*
17085           Make warnings regular Perl warnings. This duplicates the warning
17086           message if DontUseExceptions() is in effect (it is not by default).
17087           */
17088       if ( eclass == CE_Warning ) {
17089         warn( CPLGetLastErrorMsg(), "%s" );
17090       }
17091 
17092 
17093     }
17094     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
17095 
17096 
17097 
17098 
17099     XSRETURN(argvi);
17100   fail:
17101 
17102 
17103 
17104 
17105     SWIG_croak_null();
17106   }
17107 }
17108 
17109 
XS(_wrap_ApproximateArcAngles)17110 XS(_wrap_ApproximateArcAngles) {
17111   {
17112     double arg1 ;
17113     double arg2 ;
17114     double arg3 ;
17115     double arg4 ;
17116     double arg5 ;
17117     double arg6 ;
17118     double arg7 ;
17119     double arg8 ;
17120     double arg9 ;
17121     double val1 ;
17122     int ecode1 = 0 ;
17123     double val2 ;
17124     int ecode2 = 0 ;
17125     double val3 ;
17126     int ecode3 = 0 ;
17127     double val4 ;
17128     int ecode4 = 0 ;
17129     double val5 ;
17130     int ecode5 = 0 ;
17131     double val6 ;
17132     int ecode6 = 0 ;
17133     double val7 ;
17134     int ecode7 = 0 ;
17135     double val8 ;
17136     int ecode8 = 0 ;
17137     double val9 ;
17138     int ecode9 = 0 ;
17139     int argvi = 0;
17140     OGRGeometryShadow *result = 0 ;
17141     dXSARGS;
17142 
17143     if ((items < 9) || (items > 9)) {
17144       SWIG_croak("Usage: ApproximateArcAngles(dfCenterX,dfCenterY,dfZ,dfPrimaryRadius,dfSecondaryAxis,dfRotation,dfStartAngle,dfEndAngle,dfMaxAngleStepSizeDegrees);");
17145     }
17146     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
17147     if (!SWIG_IsOK(ecode1)) {
17148       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "ApproximateArcAngles" "', argument " "1"" of type '" "double""'");
17149     }
17150     arg1 = static_cast< double >(val1);
17151     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
17152     if (!SWIG_IsOK(ecode2)) {
17153       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ApproximateArcAngles" "', argument " "2"" of type '" "double""'");
17154     }
17155     arg2 = static_cast< double >(val2);
17156     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
17157     if (!SWIG_IsOK(ecode3)) {
17158       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "ApproximateArcAngles" "', argument " "3"" of type '" "double""'");
17159     }
17160     arg3 = static_cast< double >(val3);
17161     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
17162     if (!SWIG_IsOK(ecode4)) {
17163       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "ApproximateArcAngles" "', argument " "4"" of type '" "double""'");
17164     }
17165     arg4 = static_cast< double >(val4);
17166     ecode5 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
17167     if (!SWIG_IsOK(ecode5)) {
17168       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "ApproximateArcAngles" "', argument " "5"" of type '" "double""'");
17169     }
17170     arg5 = static_cast< double >(val5);
17171     ecode6 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
17172     if (!SWIG_IsOK(ecode6)) {
17173       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "ApproximateArcAngles" "', argument " "6"" of type '" "double""'");
17174     }
17175     arg6 = static_cast< double >(val6);
17176     ecode7 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
17177     if (!SWIG_IsOK(ecode7)) {
17178       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "ApproximateArcAngles" "', argument " "7"" of type '" "double""'");
17179     }
17180     arg7 = static_cast< double >(val7);
17181     ecode8 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
17182     if (!SWIG_IsOK(ecode8)) {
17183       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "ApproximateArcAngles" "', argument " "8"" of type '" "double""'");
17184     }
17185     arg8 = static_cast< double >(val8);
17186     ecode9 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
17187     if (!SWIG_IsOK(ecode9)) {
17188       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "ApproximateArcAngles" "', argument " "9"" of type '" "double""'");
17189     }
17190     arg9 = static_cast< double >(val9);
17191     {
17192       CPLErrorReset();
17193       result = (OGRGeometryShadow *)ApproximateArcAngles(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9);
17194       CPLErr eclass = CPLGetLastErrorType();
17195       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
17196         do_confess( CPLGetLastErrorMsg(), 0 );
17197 
17198 
17199 
17200 
17201 
17202       }
17203 
17204 
17205       /*
17206           Make warnings regular Perl warnings. This duplicates the warning
17207           message if DontUseExceptions() is in effect (it is not by default).
17208           */
17209       if ( eclass == CE_Warning ) {
17210         warn( CPLGetLastErrorMsg(), "%s" );
17211       }
17212 
17213 
17214     }
17215     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
17216 
17217 
17218 
17219 
17220 
17221 
17222 
17223 
17224 
17225     XSRETURN(argvi);
17226   fail:
17227 
17228 
17229 
17230 
17231 
17232 
17233 
17234 
17235 
17236     SWIG_croak_null();
17237   }
17238 }
17239 
17240 
XS(_wrap_ForceToPolygon)17241 XS(_wrap_ForceToPolygon) {
17242   {
17243     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
17244     void *argp1 = 0 ;
17245     int res1 = 0 ;
17246     int argvi = 0;
17247     OGRGeometryShadow *result = 0 ;
17248     dXSARGS;
17249 
17250     if ((items < 1) || (items > 1)) {
17251       SWIG_croak("Usage: ForceToPolygon(geom_in);");
17252     }
17253     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
17254     if (!SWIG_IsOK(res1)) {
17255       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ForceToPolygon" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
17256     }
17257     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
17258     {
17259       CPLErrorReset();
17260       result = (OGRGeometryShadow *)ForceToPolygon(arg1);
17261       CPLErr eclass = CPLGetLastErrorType();
17262       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
17263         do_confess( CPLGetLastErrorMsg(), 0 );
17264 
17265 
17266 
17267 
17268 
17269       }
17270 
17271 
17272       /*
17273           Make warnings regular Perl warnings. This duplicates the warning
17274           message if DontUseExceptions() is in effect (it is not by default).
17275           */
17276       if ( eclass == CE_Warning ) {
17277         warn( CPLGetLastErrorMsg(), "%s" );
17278       }
17279 
17280 
17281     }
17282     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
17283 
17284     XSRETURN(argvi);
17285   fail:
17286 
17287     SWIG_croak_null();
17288   }
17289 }
17290 
17291 
XS(_wrap_ForceToLineString)17292 XS(_wrap_ForceToLineString) {
17293   {
17294     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
17295     void *argp1 = 0 ;
17296     int res1 = 0 ;
17297     int argvi = 0;
17298     OGRGeometryShadow *result = 0 ;
17299     dXSARGS;
17300 
17301     if ((items < 1) || (items > 1)) {
17302       SWIG_croak("Usage: ForceToLineString(geom_in);");
17303     }
17304     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
17305     if (!SWIG_IsOK(res1)) {
17306       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ForceToLineString" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
17307     }
17308     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
17309     {
17310       CPLErrorReset();
17311       result = (OGRGeometryShadow *)ForceToLineString(arg1);
17312       CPLErr eclass = CPLGetLastErrorType();
17313       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
17314         do_confess( CPLGetLastErrorMsg(), 0 );
17315 
17316 
17317 
17318 
17319 
17320       }
17321 
17322 
17323       /*
17324           Make warnings regular Perl warnings. This duplicates the warning
17325           message if DontUseExceptions() is in effect (it is not by default).
17326           */
17327       if ( eclass == CE_Warning ) {
17328         warn( CPLGetLastErrorMsg(), "%s" );
17329       }
17330 
17331 
17332     }
17333     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
17334 
17335     XSRETURN(argvi);
17336   fail:
17337 
17338     SWIG_croak_null();
17339   }
17340 }
17341 
17342 
XS(_wrap_ForceToMultiPolygon)17343 XS(_wrap_ForceToMultiPolygon) {
17344   {
17345     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
17346     void *argp1 = 0 ;
17347     int res1 = 0 ;
17348     int argvi = 0;
17349     OGRGeometryShadow *result = 0 ;
17350     dXSARGS;
17351 
17352     if ((items < 1) || (items > 1)) {
17353       SWIG_croak("Usage: ForceToMultiPolygon(geom_in);");
17354     }
17355     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
17356     if (!SWIG_IsOK(res1)) {
17357       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ForceToMultiPolygon" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
17358     }
17359     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
17360     {
17361       CPLErrorReset();
17362       result = (OGRGeometryShadow *)ForceToMultiPolygon(arg1);
17363       CPLErr eclass = CPLGetLastErrorType();
17364       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
17365         do_confess( CPLGetLastErrorMsg(), 0 );
17366 
17367 
17368 
17369 
17370 
17371       }
17372 
17373 
17374       /*
17375           Make warnings regular Perl warnings. This duplicates the warning
17376           message if DontUseExceptions() is in effect (it is not by default).
17377           */
17378       if ( eclass == CE_Warning ) {
17379         warn( CPLGetLastErrorMsg(), "%s" );
17380       }
17381 
17382 
17383     }
17384     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
17385 
17386     XSRETURN(argvi);
17387   fail:
17388 
17389     SWIG_croak_null();
17390   }
17391 }
17392 
17393 
XS(_wrap_ForceToMultiPoint)17394 XS(_wrap_ForceToMultiPoint) {
17395   {
17396     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
17397     void *argp1 = 0 ;
17398     int res1 = 0 ;
17399     int argvi = 0;
17400     OGRGeometryShadow *result = 0 ;
17401     dXSARGS;
17402 
17403     if ((items < 1) || (items > 1)) {
17404       SWIG_croak("Usage: ForceToMultiPoint(geom_in);");
17405     }
17406     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
17407     if (!SWIG_IsOK(res1)) {
17408       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ForceToMultiPoint" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
17409     }
17410     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
17411     {
17412       CPLErrorReset();
17413       result = (OGRGeometryShadow *)ForceToMultiPoint(arg1);
17414       CPLErr eclass = CPLGetLastErrorType();
17415       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
17416         do_confess( CPLGetLastErrorMsg(), 0 );
17417 
17418 
17419 
17420 
17421 
17422       }
17423 
17424 
17425       /*
17426           Make warnings regular Perl warnings. This duplicates the warning
17427           message if DontUseExceptions() is in effect (it is not by default).
17428           */
17429       if ( eclass == CE_Warning ) {
17430         warn( CPLGetLastErrorMsg(), "%s" );
17431       }
17432 
17433 
17434     }
17435     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
17436 
17437     XSRETURN(argvi);
17438   fail:
17439 
17440     SWIG_croak_null();
17441   }
17442 }
17443 
17444 
XS(_wrap_ForceToMultiLineString)17445 XS(_wrap_ForceToMultiLineString) {
17446   {
17447     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
17448     void *argp1 = 0 ;
17449     int res1 = 0 ;
17450     int argvi = 0;
17451     OGRGeometryShadow *result = 0 ;
17452     dXSARGS;
17453 
17454     if ((items < 1) || (items > 1)) {
17455       SWIG_croak("Usage: ForceToMultiLineString(geom_in);");
17456     }
17457     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
17458     if (!SWIG_IsOK(res1)) {
17459       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ForceToMultiLineString" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
17460     }
17461     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
17462     {
17463       CPLErrorReset();
17464       result = (OGRGeometryShadow *)ForceToMultiLineString(arg1);
17465       CPLErr eclass = CPLGetLastErrorType();
17466       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
17467         do_confess( CPLGetLastErrorMsg(), 0 );
17468 
17469 
17470 
17471 
17472 
17473       }
17474 
17475 
17476       /*
17477           Make warnings regular Perl warnings. This duplicates the warning
17478           message if DontUseExceptions() is in effect (it is not by default).
17479           */
17480       if ( eclass == CE_Warning ) {
17481         warn( CPLGetLastErrorMsg(), "%s" );
17482       }
17483 
17484 
17485     }
17486     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
17487 
17488     XSRETURN(argvi);
17489   fail:
17490 
17491     SWIG_croak_null();
17492   }
17493 }
17494 
17495 
XS(_wrap_ForceTo)17496 XS(_wrap_ForceTo) {
17497   {
17498     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
17499     OGRwkbGeometryType arg2 ;
17500     char **arg3 = (char **) NULL ;
17501     void *argp1 = 0 ;
17502     int res1 = 0 ;
17503     int val2 ;
17504     int ecode2 = 0 ;
17505     int argvi = 0;
17506     OGRGeometryShadow *result = 0 ;
17507     dXSARGS;
17508 
17509     if ((items < 2) || (items > 3)) {
17510       SWIG_croak("Usage: ForceTo(geom_in,eTargetType,options);");
17511     }
17512     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
17513     if (!SWIG_IsOK(res1)) {
17514       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ForceTo" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
17515     }
17516     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
17517     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
17518     if (!SWIG_IsOK(ecode2)) {
17519       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ForceTo" "', argument " "2"" of type '" "OGRwkbGeometryType""'");
17520     }
17521     arg2 = static_cast< OGRwkbGeometryType >(val2);
17522     if (items > 2) {
17523       {
17524         /* %typemap(in) char **options */
17525         if (SvOK(ST(2))) {
17526           if (SvROK(ST(2))) {
17527             if (SvTYPE(SvRV(ST(2)))==SVt_PVAV) {
17528               AV *av = (AV*)(SvRV(ST(2)));
17529               for (int i = 0; i < av_len(av)+1; i++) {
17530                 SV *sv = *(av_fetch(av, i, 0));
17531                 bool sf;
17532                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
17533                 arg3 = CSLAddString(arg3, tmp);
17534                 if (sf) Safefree(tmp); else free(tmp);
17535               }
17536             } else if (SvTYPE(SvRV(ST(2)))==SVt_PVHV) {
17537               HV *hv = (HV*)SvRV(ST(2));
17538               SV *sv;
17539               char *key;
17540               I32 klen;
17541               arg3 = NULL;
17542               hv_iterinit(hv);
17543               while(sv = hv_iternextsv(hv, &key, &klen)) {
17544                 bool sf;
17545                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
17546                 arg3 = CSLAddNameValue(arg3, key, tmp);
17547                 if (sf) Safefree(tmp); else free(tmp);
17548               }
17549             } else
17550             do_confess(NEED_REF, 1);
17551           } else
17552           do_confess(NEED_REF, 1);
17553         }
17554       }
17555     }
17556     {
17557       CPLErrorReset();
17558       result = (OGRGeometryShadow *)ForceTo(arg1,arg2,arg3);
17559       CPLErr eclass = CPLGetLastErrorType();
17560       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
17561         do_confess( CPLGetLastErrorMsg(), 0 );
17562 
17563 
17564 
17565 
17566 
17567       }
17568 
17569 
17570       /*
17571           Make warnings regular Perl warnings. This duplicates the warning
17572           message if DontUseExceptions() is in effect (it is not by default).
17573           */
17574       if ( eclass == CE_Warning ) {
17575         warn( CPLGetLastErrorMsg(), "%s" );
17576       }
17577 
17578 
17579     }
17580     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
17581 
17582 
17583     {
17584       /* %typemap(freearg) char **options */
17585       if (arg3) CSLDestroy( arg3 );
17586     }
17587     XSRETURN(argvi);
17588   fail:
17589 
17590 
17591     {
17592       /* %typemap(freearg) char **options */
17593       if (arg3) CSLDestroy( arg3 );
17594     }
17595     SWIG_croak_null();
17596   }
17597 }
17598 
17599 
XS(_wrap_delete_Geometry)17600 XS(_wrap_delete_Geometry) {
17601   {
17602     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
17603     void *argp1 = 0 ;
17604     int res1 = 0 ;
17605     int argvi = 0;
17606     dXSARGS;
17607 
17608     if ((items < 1) || (items > 1)) {
17609       SWIG_croak("Usage: delete_Geometry(self);");
17610     }
17611     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, SWIG_POINTER_DISOWN |  0 );
17612     if (!SWIG_IsOK(res1)) {
17613       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_Geometry" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
17614     }
17615     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
17616     {
17617       CPLErrorReset();
17618       delete_OGRGeometryShadow(arg1);
17619       CPLErr eclass = CPLGetLastErrorType();
17620       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
17621         do_confess( CPLGetLastErrorMsg(), 0 );
17622 
17623 
17624 
17625 
17626 
17627       }
17628 
17629 
17630       /*
17631           Make warnings regular Perl warnings. This duplicates the warning
17632           message if DontUseExceptions() is in effect (it is not by default).
17633           */
17634       if ( eclass == CE_Warning ) {
17635         warn( CPLGetLastErrorMsg(), "%s" );
17636       }
17637 
17638 
17639     }
17640     {
17641       /* %typemap(out) void */
17642     }
17643 
17644     XSRETURN(argvi);
17645   fail:
17646 
17647     SWIG_croak_null();
17648   }
17649 }
17650 
17651 
XS(_wrap_new_Geometry)17652 XS(_wrap_new_Geometry) {
17653   {
17654     OGRwkbGeometryType arg1 = (OGRwkbGeometryType) wkbUnknown ;
17655     char *arg2 = (char *) 0 ;
17656     int arg3 = (int) 0 ;
17657     char *arg4 = (char *) 0 ;
17658     char *arg5 = (char *) 0 ;
17659     int val1 ;
17660     int ecode1 = 0 ;
17661     int res2 ;
17662     char *buf2 = 0 ;
17663     int alloc2 = 0 ;
17664     int res5 ;
17665     char *buf5 = 0 ;
17666     int alloc5 = 0 ;
17667     int argvi = 0;
17668     OGRGeometryShadow *result = 0 ;
17669     dXSARGS;
17670 
17671     if ((items < 0) || (items > 4)) {
17672       SWIG_croak("Usage: new_Geometry(type,wkt,wkb,wkb_buf,gml);");
17673     }
17674     if (items > 0) {
17675       ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
17676       if (!SWIG_IsOK(ecode1)) {
17677         SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_Geometry" "', argument " "1"" of type '" "OGRwkbGeometryType""'");
17678       }
17679       arg1 = static_cast< OGRwkbGeometryType >(val1);
17680     }
17681     if (items > 1) {
17682       res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
17683       if (!SWIG_IsOK(res2)) {
17684         SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_Geometry" "', argument " "2"" of type '" "char *""'");
17685       }
17686       arg2 = reinterpret_cast< char * >(buf2);
17687     }
17688     if (items > 2) {
17689       {
17690         /* %typemap(in,numinputs=1) (int nLen, char *pBuf ) */
17691         if (SvOK(ST(2))) {
17692           SV *sv = ST(2);
17693           if (SvROK(sv) && SvTYPE(SvRV(sv)) < SVt_PVAV)
17694           sv = SvRV(sv);
17695           if (!SvPOK(sv))
17696           do_confess(NEED_BINARY_DATA, 1);
17697           STRLEN len = SvCUR(sv);
17698           arg4 = SvPV_nolen(sv);
17699           arg3 = len;
17700         } else {
17701           arg4 = NULL;
17702           arg3 = 0;
17703         }
17704       }
17705     }
17706     if (items > 3) {
17707       res5 = SWIG_AsCharPtrAndSize(ST(3), &buf5, NULL, &alloc5);
17708       if (!SWIG_IsOK(res5)) {
17709         SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "new_Geometry" "', argument " "5"" of type '" "char *""'");
17710       }
17711       arg5 = reinterpret_cast< char * >(buf5);
17712     }
17713     {
17714       CPLErrorReset();
17715       result = (OGRGeometryShadow *)new_OGRGeometryShadow(arg1,arg2,arg3,arg4,arg5);
17716       CPLErr eclass = CPLGetLastErrorType();
17717       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
17718         do_confess( CPLGetLastErrorMsg(), 0 );
17719 
17720 
17721 
17722 
17723 
17724       }
17725 
17726 
17727       /*
17728           Make warnings regular Perl warnings. This duplicates the warning
17729           message if DontUseExceptions() is in effect (it is not by default).
17730           */
17731       if ( eclass == CE_Warning ) {
17732         warn( CPLGetLastErrorMsg(), "%s" );
17733       }
17734 
17735 
17736     }
17737     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
17738 
17739     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
17740     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
17741     XSRETURN(argvi);
17742   fail:
17743 
17744     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
17745     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
17746     SWIG_croak_null();
17747   }
17748 }
17749 
17750 
XS(_wrap_Geometry_ExportToWkt)17751 XS(_wrap_Geometry_ExportToWkt) {
17752   {
17753     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
17754     char **arg2 = (char **) 0 ;
17755     void *argp1 = 0 ;
17756     int res1 = 0 ;
17757     char *argout2 = 0 ;
17758     int argvi = 0;
17759     OGRErr result;
17760     dXSARGS;
17761 
17762     {
17763       /* %typemap(in,numinputs=0) (char **argout2) */
17764       arg2 = &argout2;
17765     }
17766     if ((items < 1) || (items > 1)) {
17767       SWIG_croak("Usage: Geometry_ExportToWkt(self);");
17768     }
17769     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
17770     if (!SWIG_IsOK(res1)) {
17771       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_ExportToWkt" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
17772     }
17773     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
17774     {
17775       CPLErrorReset();
17776       result = (OGRErr)OGRGeometryShadow_ExportToWkt(arg1,arg2);
17777       CPLErr eclass = CPLGetLastErrorType();
17778       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
17779         do_confess( CPLGetLastErrorMsg(), 0 );
17780 
17781 
17782 
17783 
17784 
17785       }
17786 
17787 
17788       /*
17789           Make warnings regular Perl warnings. This duplicates the warning
17790           message if DontUseExceptions() is in effect (it is not by default).
17791           */
17792       if ( eclass == CE_Warning ) {
17793         warn( CPLGetLastErrorMsg(), "%s" );
17794       }
17795 
17796 
17797     }
17798     {
17799       /* %typemap(out) OGRErr */
17800       if ( result != 0 ) {
17801         const char *err = CPLGetLastErrorMsg();
17802         if (err and *err) do_confess(err, 0); /* this is usually better */
17803         do_confess( OGRErrMessages(result), 1 );
17804       }
17805     }
17806     {
17807       /* %typemap(argout) (char **argout) */
17808       ST(argvi) = sv_newmortal();
17809       if ( arg2 ) {
17810         sv_setpv(ST(argvi), *arg2);
17811         SvUTF8_on(ST(argvi)); /* expecting UTF-8 from GDAL */
17812       }
17813       argvi++;
17814     }
17815 
17816     {
17817       /* %typemap(freearg) (char **argout) */
17818       if ( *arg2 )
17819       CPLFree( *arg2 );
17820     }
17821     XSRETURN(argvi);
17822   fail:
17823 
17824     {
17825       /* %typemap(freearg) (char **argout) */
17826       if ( *arg2 )
17827       CPLFree( *arg2 );
17828     }
17829     SWIG_croak_null();
17830   }
17831 }
17832 
17833 
XS(_wrap_Geometry_ExportToIsoWkt)17834 XS(_wrap_Geometry_ExportToIsoWkt) {
17835   {
17836     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
17837     char **arg2 = (char **) 0 ;
17838     void *argp1 = 0 ;
17839     int res1 = 0 ;
17840     char *argout2 = 0 ;
17841     int argvi = 0;
17842     OGRErr result;
17843     dXSARGS;
17844 
17845     {
17846       /* %typemap(in,numinputs=0) (char **argout2) */
17847       arg2 = &argout2;
17848     }
17849     if ((items < 1) || (items > 1)) {
17850       SWIG_croak("Usage: Geometry_ExportToIsoWkt(self);");
17851     }
17852     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
17853     if (!SWIG_IsOK(res1)) {
17854       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_ExportToIsoWkt" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
17855     }
17856     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
17857     {
17858       CPLErrorReset();
17859       result = (OGRErr)OGRGeometryShadow_ExportToIsoWkt(arg1,arg2);
17860       CPLErr eclass = CPLGetLastErrorType();
17861       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
17862         do_confess( CPLGetLastErrorMsg(), 0 );
17863 
17864 
17865 
17866 
17867 
17868       }
17869 
17870 
17871       /*
17872           Make warnings regular Perl warnings. This duplicates the warning
17873           message if DontUseExceptions() is in effect (it is not by default).
17874           */
17875       if ( eclass == CE_Warning ) {
17876         warn( CPLGetLastErrorMsg(), "%s" );
17877       }
17878 
17879 
17880     }
17881     {
17882       /* %typemap(out) OGRErr */
17883       if ( result != 0 ) {
17884         const char *err = CPLGetLastErrorMsg();
17885         if (err and *err) do_confess(err, 0); /* this is usually better */
17886         do_confess( OGRErrMessages(result), 1 );
17887       }
17888     }
17889     {
17890       /* %typemap(argout) (char **argout) */
17891       ST(argvi) = sv_newmortal();
17892       if ( arg2 ) {
17893         sv_setpv(ST(argvi), *arg2);
17894         SvUTF8_on(ST(argvi)); /* expecting UTF-8 from GDAL */
17895       }
17896       argvi++;
17897     }
17898 
17899     {
17900       /* %typemap(freearg) (char **argout) */
17901       if ( *arg2 )
17902       CPLFree( *arg2 );
17903     }
17904     XSRETURN(argvi);
17905   fail:
17906 
17907     {
17908       /* %typemap(freearg) (char **argout) */
17909       if ( *arg2 )
17910       CPLFree( *arg2 );
17911     }
17912     SWIG_croak_null();
17913   }
17914 }
17915 
17916 
XS(_wrap_Geometry__ExportToWkb)17917 XS(_wrap_Geometry__ExportToWkb) {
17918   {
17919     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
17920     int *arg2 = (int *) 0 ;
17921     char **arg3 = (char **) 0 ;
17922     OGRwkbByteOrder arg4 = (OGRwkbByteOrder) wkbXDR ;
17923     void *argp1 = 0 ;
17924     int res1 = 0 ;
17925     int nLen2 = 0 ;
17926     char *pBuf2 = 0 ;
17927     int val4 ;
17928     int ecode4 = 0 ;
17929     int argvi = 0;
17930     OGRErr result;
17931     dXSARGS;
17932 
17933     {
17934       /* %typemap(in,numinputs=0) (int *nLen2, char **pBuf2 ) */
17935       arg2 = &nLen2;
17936       arg3 = &pBuf2;
17937     }
17938     if ((items < 1) || (items > 2)) {
17939       SWIG_croak("Usage: Geometry__ExportToWkb(self,pBuf,byte_order);");
17940     }
17941     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
17942     if (!SWIG_IsOK(res1)) {
17943       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry__ExportToWkb" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
17944     }
17945     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
17946     if (items > 1) {
17947       ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val4);
17948       if (!SWIG_IsOK(ecode4)) {
17949         SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "Geometry__ExportToWkb" "', argument " "4"" of type '" "OGRwkbByteOrder""'");
17950       }
17951       arg4 = static_cast< OGRwkbByteOrder >(val4);
17952     }
17953     {
17954       CPLErrorReset();
17955       result = (OGRErr)OGRGeometryShadow_ExportToWkb(arg1,arg2,arg3,arg4);
17956       CPLErr eclass = CPLGetLastErrorType();
17957       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
17958         do_confess( CPLGetLastErrorMsg(), 0 );
17959 
17960 
17961 
17962 
17963 
17964       }
17965 
17966 
17967       /*
17968           Make warnings regular Perl warnings. This duplicates the warning
17969           message if DontUseExceptions() is in effect (it is not by default).
17970           */
17971       if ( eclass == CE_Warning ) {
17972         warn( CPLGetLastErrorMsg(), "%s" );
17973       }
17974 
17975 
17976     }
17977     {
17978       /* %typemap(out) OGRErr */
17979       if ( result != 0 ) {
17980         const char *err = CPLGetLastErrorMsg();
17981         if (err and *err) do_confess(err, 0); /* this is usually better */
17982         do_confess( OGRErrMessages(result), 1 );
17983       }
17984     }
17985     {
17986       /* %typemap(argout) (int *nLen, char **pBuf ) */
17987       ST(argvi) = sv_2mortal(newSVpv( *arg3, *arg2 ));
17988       argvi++;
17989     }
17990 
17991     {
17992       /* %typemap(freearg) (int *nLen, char **pBuf ) */
17993       if( *arg2 ) {
17994         VSIFree( *arg3 );
17995       }
17996     }
17997 
17998     XSRETURN(argvi);
17999   fail:
18000 
18001     {
18002       /* %typemap(freearg) (int *nLen, char **pBuf ) */
18003       if( *arg2 ) {
18004         VSIFree( *arg3 );
18005       }
18006     }
18007 
18008     SWIG_croak_null();
18009   }
18010 }
18011 
18012 
XS(_wrap_Geometry_ExportToIsoWkb)18013 XS(_wrap_Geometry_ExportToIsoWkb) {
18014   {
18015     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
18016     int *arg2 = (int *) 0 ;
18017     char **arg3 = (char **) 0 ;
18018     OGRwkbByteOrder arg4 = (OGRwkbByteOrder) wkbXDR ;
18019     void *argp1 = 0 ;
18020     int res1 = 0 ;
18021     int nLen2 = 0 ;
18022     char *pBuf2 = 0 ;
18023     int val4 ;
18024     int ecode4 = 0 ;
18025     int argvi = 0;
18026     OGRErr result;
18027     dXSARGS;
18028 
18029     {
18030       /* %typemap(in,numinputs=0) (int *nLen2, char **pBuf2 ) */
18031       arg2 = &nLen2;
18032       arg3 = &pBuf2;
18033     }
18034     if ((items < 1) || (items > 2)) {
18035       SWIG_croak("Usage: Geometry_ExportToIsoWkb(self,pBuf,byte_order);");
18036     }
18037     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
18038     if (!SWIG_IsOK(res1)) {
18039       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_ExportToIsoWkb" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
18040     }
18041     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
18042     if (items > 1) {
18043       ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val4);
18044       if (!SWIG_IsOK(ecode4)) {
18045         SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "Geometry_ExportToIsoWkb" "', argument " "4"" of type '" "OGRwkbByteOrder""'");
18046       }
18047       arg4 = static_cast< OGRwkbByteOrder >(val4);
18048     }
18049     {
18050       CPLErrorReset();
18051       result = (OGRErr)OGRGeometryShadow_ExportToIsoWkb(arg1,arg2,arg3,arg4);
18052       CPLErr eclass = CPLGetLastErrorType();
18053       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
18054         do_confess( CPLGetLastErrorMsg(), 0 );
18055 
18056 
18057 
18058 
18059 
18060       }
18061 
18062 
18063       /*
18064           Make warnings regular Perl warnings. This duplicates the warning
18065           message if DontUseExceptions() is in effect (it is not by default).
18066           */
18067       if ( eclass == CE_Warning ) {
18068         warn( CPLGetLastErrorMsg(), "%s" );
18069       }
18070 
18071 
18072     }
18073     {
18074       /* %typemap(out) OGRErr */
18075       if ( result != 0 ) {
18076         const char *err = CPLGetLastErrorMsg();
18077         if (err and *err) do_confess(err, 0); /* this is usually better */
18078         do_confess( OGRErrMessages(result), 1 );
18079       }
18080     }
18081     {
18082       /* %typemap(argout) (int *nLen, char **pBuf ) */
18083       ST(argvi) = sv_2mortal(newSVpv( *arg3, *arg2 ));
18084       argvi++;
18085     }
18086 
18087     {
18088       /* %typemap(freearg) (int *nLen, char **pBuf ) */
18089       if( *arg2 ) {
18090         VSIFree( *arg3 );
18091       }
18092     }
18093 
18094     XSRETURN(argvi);
18095   fail:
18096 
18097     {
18098       /* %typemap(freearg) (int *nLen, char **pBuf ) */
18099       if( *arg2 ) {
18100         VSIFree( *arg3 );
18101       }
18102     }
18103 
18104     SWIG_croak_null();
18105   }
18106 }
18107 
18108 
XS(_wrap_Geometry_ExportToGML)18109 XS(_wrap_Geometry_ExportToGML) {
18110   {
18111     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
18112     char **arg2 = (char **) 0 ;
18113     void *argp1 = 0 ;
18114     int res1 = 0 ;
18115     int argvi = 0;
18116     retStringAndCPLFree *result = 0 ;
18117     dXSARGS;
18118 
18119     if ((items < 1) || (items > 2)) {
18120       SWIG_croak("Usage: Geometry_ExportToGML(self,options);");
18121     }
18122     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
18123     if (!SWIG_IsOK(res1)) {
18124       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_ExportToGML" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
18125     }
18126     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
18127     if (items > 1) {
18128       {
18129         /* %typemap(in) char **options */
18130         if (SvOK(ST(1))) {
18131           if (SvROK(ST(1))) {
18132             if (SvTYPE(SvRV(ST(1)))==SVt_PVAV) {
18133               AV *av = (AV*)(SvRV(ST(1)));
18134               for (int i = 0; i < av_len(av)+1; i++) {
18135                 SV *sv = *(av_fetch(av, i, 0));
18136                 bool sf;
18137                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
18138                 arg2 = CSLAddString(arg2, tmp);
18139                 if (sf) Safefree(tmp); else free(tmp);
18140               }
18141             } else if (SvTYPE(SvRV(ST(1)))==SVt_PVHV) {
18142               HV *hv = (HV*)SvRV(ST(1));
18143               SV *sv;
18144               char *key;
18145               I32 klen;
18146               arg2 = NULL;
18147               hv_iterinit(hv);
18148               while(sv = hv_iternextsv(hv, &key, &klen)) {
18149                 bool sf;
18150                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
18151                 arg2 = CSLAddNameValue(arg2, key, tmp);
18152                 if (sf) Safefree(tmp); else free(tmp);
18153               }
18154             } else
18155             do_confess(NEED_REF, 1);
18156           } else
18157           do_confess(NEED_REF, 1);
18158         }
18159       }
18160     }
18161     {
18162       CPLErrorReset();
18163       result = (retStringAndCPLFree *)OGRGeometryShadow_ExportToGML(arg1,arg2);
18164       CPLErr eclass = CPLGetLastErrorType();
18165       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
18166         do_confess( CPLGetLastErrorMsg(), 0 );
18167 
18168 
18169 
18170 
18171 
18172       }
18173 
18174 
18175       /*
18176           Make warnings regular Perl warnings. This duplicates the warning
18177           message if DontUseExceptions() is in effect (it is not by default).
18178           */
18179       if ( eclass == CE_Warning ) {
18180         warn( CPLGetLastErrorMsg(), "%s" );
18181       }
18182 
18183 
18184     }
18185 
18186     /* %typemap(out) (retStringAndCPLFree*) */
18187     if(result)
18188     {
18189       ST(argvi) = SWIG_FromCharPtr((const char *)result);
18190       CPLFree(result);
18191     }
18192     else
18193     {
18194       ST(argvi) = &PL_sv_undef;
18195     }
18196     argvi++ ;
18197 
18198 
18199     {
18200       /* %typemap(freearg) char **options */
18201       if (arg2) CSLDestroy( arg2 );
18202     }
18203     XSRETURN(argvi);
18204   fail:
18205 
18206     {
18207       /* %typemap(freearg) char **options */
18208       if (arg2) CSLDestroy( arg2 );
18209     }
18210     SWIG_croak_null();
18211   }
18212 }
18213 
18214 
XS(_wrap_Geometry_ExportToKML)18215 XS(_wrap_Geometry_ExportToKML) {
18216   {
18217     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
18218     char *arg2 = (char *) NULL ;
18219     void *argp1 = 0 ;
18220     int res1 = 0 ;
18221     int res2 ;
18222     char *buf2 = 0 ;
18223     int alloc2 = 0 ;
18224     int argvi = 0;
18225     retStringAndCPLFree *result = 0 ;
18226     dXSARGS;
18227 
18228     if ((items < 1) || (items > 2)) {
18229       SWIG_croak("Usage: Geometry_ExportToKML(self,altitude_mode);");
18230     }
18231     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
18232     if (!SWIG_IsOK(res1)) {
18233       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_ExportToKML" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
18234     }
18235     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
18236     if (items > 1) {
18237       res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
18238       if (!SWIG_IsOK(res2)) {
18239         SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_ExportToKML" "', argument " "2"" of type '" "char const *""'");
18240       }
18241       arg2 = reinterpret_cast< char * >(buf2);
18242     }
18243     {
18244       CPLErrorReset();
18245       result = (retStringAndCPLFree *)OGRGeometryShadow_ExportToKML(arg1,(char const *)arg2);
18246       CPLErr eclass = CPLGetLastErrorType();
18247       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
18248         do_confess( CPLGetLastErrorMsg(), 0 );
18249 
18250 
18251 
18252 
18253 
18254       }
18255 
18256 
18257       /*
18258           Make warnings regular Perl warnings. This duplicates the warning
18259           message if DontUseExceptions() is in effect (it is not by default).
18260           */
18261       if ( eclass == CE_Warning ) {
18262         warn( CPLGetLastErrorMsg(), "%s" );
18263       }
18264 
18265 
18266     }
18267 
18268     /* %typemap(out) (retStringAndCPLFree*) */
18269     if(result)
18270     {
18271       ST(argvi) = SWIG_FromCharPtr((const char *)result);
18272       CPLFree(result);
18273     }
18274     else
18275     {
18276       ST(argvi) = &PL_sv_undef;
18277     }
18278     argvi++ ;
18279 
18280 
18281     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
18282     XSRETURN(argvi);
18283   fail:
18284 
18285     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
18286     SWIG_croak_null();
18287   }
18288 }
18289 
18290 
XS(_wrap_Geometry_ExportToJson)18291 XS(_wrap_Geometry_ExportToJson) {
18292   {
18293     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
18294     char **arg2 = (char **) 0 ;
18295     void *argp1 = 0 ;
18296     int res1 = 0 ;
18297     int argvi = 0;
18298     retStringAndCPLFree *result = 0 ;
18299     dXSARGS;
18300 
18301     if ((items < 1) || (items > 2)) {
18302       SWIG_croak("Usage: Geometry_ExportToJson(self,options);");
18303     }
18304     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
18305     if (!SWIG_IsOK(res1)) {
18306       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_ExportToJson" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
18307     }
18308     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
18309     if (items > 1) {
18310       {
18311         /* %typemap(in) char **options */
18312         if (SvOK(ST(1))) {
18313           if (SvROK(ST(1))) {
18314             if (SvTYPE(SvRV(ST(1)))==SVt_PVAV) {
18315               AV *av = (AV*)(SvRV(ST(1)));
18316               for (int i = 0; i < av_len(av)+1; i++) {
18317                 SV *sv = *(av_fetch(av, i, 0));
18318                 bool sf;
18319                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
18320                 arg2 = CSLAddString(arg2, tmp);
18321                 if (sf) Safefree(tmp); else free(tmp);
18322               }
18323             } else if (SvTYPE(SvRV(ST(1)))==SVt_PVHV) {
18324               HV *hv = (HV*)SvRV(ST(1));
18325               SV *sv;
18326               char *key;
18327               I32 klen;
18328               arg2 = NULL;
18329               hv_iterinit(hv);
18330               while(sv = hv_iternextsv(hv, &key, &klen)) {
18331                 bool sf;
18332                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
18333                 arg2 = CSLAddNameValue(arg2, key, tmp);
18334                 if (sf) Safefree(tmp); else free(tmp);
18335               }
18336             } else
18337             do_confess(NEED_REF, 1);
18338           } else
18339           do_confess(NEED_REF, 1);
18340         }
18341       }
18342     }
18343     {
18344       CPLErrorReset();
18345       result = (retStringAndCPLFree *)OGRGeometryShadow_ExportToJson(arg1,arg2);
18346       CPLErr eclass = CPLGetLastErrorType();
18347       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
18348         do_confess( CPLGetLastErrorMsg(), 0 );
18349 
18350 
18351 
18352 
18353 
18354       }
18355 
18356 
18357       /*
18358           Make warnings regular Perl warnings. This duplicates the warning
18359           message if DontUseExceptions() is in effect (it is not by default).
18360           */
18361       if ( eclass == CE_Warning ) {
18362         warn( CPLGetLastErrorMsg(), "%s" );
18363       }
18364 
18365 
18366     }
18367 
18368     /* %typemap(out) (retStringAndCPLFree*) */
18369     if(result)
18370     {
18371       ST(argvi) = SWIG_FromCharPtr((const char *)result);
18372       CPLFree(result);
18373     }
18374     else
18375     {
18376       ST(argvi) = &PL_sv_undef;
18377     }
18378     argvi++ ;
18379 
18380 
18381     {
18382       /* %typemap(freearg) char **options */
18383       if (arg2) CSLDestroy( arg2 );
18384     }
18385     XSRETURN(argvi);
18386   fail:
18387 
18388     {
18389       /* %typemap(freearg) char **options */
18390       if (arg2) CSLDestroy( arg2 );
18391     }
18392     SWIG_croak_null();
18393   }
18394 }
18395 
18396 
XS(_wrap_Geometry_AddPoint_3D)18397 XS(_wrap_Geometry_AddPoint_3D) {
18398   {
18399     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
18400     double arg2 ;
18401     double arg3 ;
18402     double arg4 = (double) 0 ;
18403     void *argp1 = 0 ;
18404     int res1 = 0 ;
18405     double val2 ;
18406     int ecode2 = 0 ;
18407     double val3 ;
18408     int ecode3 = 0 ;
18409     double val4 ;
18410     int ecode4 = 0 ;
18411     int argvi = 0;
18412     dXSARGS;
18413 
18414     if ((items < 3) || (items > 4)) {
18415       SWIG_croak("Usage: Geometry_AddPoint_3D(self,x,y,z);");
18416     }
18417     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
18418     if (!SWIG_IsOK(res1)) {
18419       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_AddPoint_3D" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
18420     }
18421     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
18422     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
18423     if (!SWIG_IsOK(ecode2)) {
18424       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_AddPoint_3D" "', argument " "2"" of type '" "double""'");
18425     }
18426     arg2 = static_cast< double >(val2);
18427     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
18428     if (!SWIG_IsOK(ecode3)) {
18429       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Geometry_AddPoint_3D" "', argument " "3"" of type '" "double""'");
18430     }
18431     arg3 = static_cast< double >(val3);
18432     if (items > 3) {
18433       ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
18434       if (!SWIG_IsOK(ecode4)) {
18435         SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "Geometry_AddPoint_3D" "', argument " "4"" of type '" "double""'");
18436       }
18437       arg4 = static_cast< double >(val4);
18438     }
18439     {
18440       CPLErrorReset();
18441       OGRGeometryShadow_AddPoint(arg1,arg2,arg3,arg4);
18442       CPLErr eclass = CPLGetLastErrorType();
18443       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
18444         do_confess( CPLGetLastErrorMsg(), 0 );
18445 
18446 
18447 
18448 
18449 
18450       }
18451 
18452 
18453       /*
18454           Make warnings regular Perl warnings. This duplicates the warning
18455           message if DontUseExceptions() is in effect (it is not by default).
18456           */
18457       if ( eclass == CE_Warning ) {
18458         warn( CPLGetLastErrorMsg(), "%s" );
18459       }
18460 
18461 
18462     }
18463     {
18464       /* %typemap(out) void */
18465     }
18466 
18467 
18468 
18469 
18470     XSRETURN(argvi);
18471   fail:
18472 
18473 
18474 
18475 
18476     SWIG_croak_null();
18477   }
18478 }
18479 
18480 
XS(_wrap_Geometry_AddPointM)18481 XS(_wrap_Geometry_AddPointM) {
18482   {
18483     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
18484     double arg2 ;
18485     double arg3 ;
18486     double arg4 ;
18487     void *argp1 = 0 ;
18488     int res1 = 0 ;
18489     double val2 ;
18490     int ecode2 = 0 ;
18491     double val3 ;
18492     int ecode3 = 0 ;
18493     double val4 ;
18494     int ecode4 = 0 ;
18495     int argvi = 0;
18496     dXSARGS;
18497 
18498     if ((items < 4) || (items > 4)) {
18499       SWIG_croak("Usage: Geometry_AddPointM(self,x,y,m);");
18500     }
18501     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
18502     if (!SWIG_IsOK(res1)) {
18503       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_AddPointM" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
18504     }
18505     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
18506     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
18507     if (!SWIG_IsOK(ecode2)) {
18508       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_AddPointM" "', argument " "2"" of type '" "double""'");
18509     }
18510     arg2 = static_cast< double >(val2);
18511     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
18512     if (!SWIG_IsOK(ecode3)) {
18513       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Geometry_AddPointM" "', argument " "3"" of type '" "double""'");
18514     }
18515     arg3 = static_cast< double >(val3);
18516     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
18517     if (!SWIG_IsOK(ecode4)) {
18518       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "Geometry_AddPointM" "', argument " "4"" of type '" "double""'");
18519     }
18520     arg4 = static_cast< double >(val4);
18521     {
18522       CPLErrorReset();
18523       OGRGeometryShadow_AddPointM(arg1,arg2,arg3,arg4);
18524       CPLErr eclass = CPLGetLastErrorType();
18525       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
18526         do_confess( CPLGetLastErrorMsg(), 0 );
18527 
18528 
18529 
18530 
18531 
18532       }
18533 
18534 
18535       /*
18536           Make warnings regular Perl warnings. This duplicates the warning
18537           message if DontUseExceptions() is in effect (it is not by default).
18538           */
18539       if ( eclass == CE_Warning ) {
18540         warn( CPLGetLastErrorMsg(), "%s" );
18541       }
18542 
18543 
18544     }
18545     {
18546       /* %typemap(out) void */
18547     }
18548 
18549 
18550 
18551 
18552     XSRETURN(argvi);
18553   fail:
18554 
18555 
18556 
18557 
18558     SWIG_croak_null();
18559   }
18560 }
18561 
18562 
XS(_wrap_Geometry_AddPointZM)18563 XS(_wrap_Geometry_AddPointZM) {
18564   {
18565     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
18566     double arg2 ;
18567     double arg3 ;
18568     double arg4 ;
18569     double arg5 ;
18570     void *argp1 = 0 ;
18571     int res1 = 0 ;
18572     double val2 ;
18573     int ecode2 = 0 ;
18574     double val3 ;
18575     int ecode3 = 0 ;
18576     double val4 ;
18577     int ecode4 = 0 ;
18578     double val5 ;
18579     int ecode5 = 0 ;
18580     int argvi = 0;
18581     dXSARGS;
18582 
18583     if ((items < 5) || (items > 5)) {
18584       SWIG_croak("Usage: Geometry_AddPointZM(self,x,y,z,m);");
18585     }
18586     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
18587     if (!SWIG_IsOK(res1)) {
18588       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_AddPointZM" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
18589     }
18590     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
18591     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
18592     if (!SWIG_IsOK(ecode2)) {
18593       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_AddPointZM" "', argument " "2"" of type '" "double""'");
18594     }
18595     arg2 = static_cast< double >(val2);
18596     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
18597     if (!SWIG_IsOK(ecode3)) {
18598       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Geometry_AddPointZM" "', argument " "3"" of type '" "double""'");
18599     }
18600     arg3 = static_cast< double >(val3);
18601     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
18602     if (!SWIG_IsOK(ecode4)) {
18603       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "Geometry_AddPointZM" "', argument " "4"" of type '" "double""'");
18604     }
18605     arg4 = static_cast< double >(val4);
18606     ecode5 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
18607     if (!SWIG_IsOK(ecode5)) {
18608       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "Geometry_AddPointZM" "', argument " "5"" of type '" "double""'");
18609     }
18610     arg5 = static_cast< double >(val5);
18611     {
18612       CPLErrorReset();
18613       OGRGeometryShadow_AddPointZM(arg1,arg2,arg3,arg4,arg5);
18614       CPLErr eclass = CPLGetLastErrorType();
18615       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
18616         do_confess( CPLGetLastErrorMsg(), 0 );
18617 
18618 
18619 
18620 
18621 
18622       }
18623 
18624 
18625       /*
18626           Make warnings regular Perl warnings. This duplicates the warning
18627           message if DontUseExceptions() is in effect (it is not by default).
18628           */
18629       if ( eclass == CE_Warning ) {
18630         warn( CPLGetLastErrorMsg(), "%s" );
18631       }
18632 
18633 
18634     }
18635     {
18636       /* %typemap(out) void */
18637     }
18638 
18639 
18640 
18641 
18642 
18643     XSRETURN(argvi);
18644   fail:
18645 
18646 
18647 
18648 
18649 
18650     SWIG_croak_null();
18651   }
18652 }
18653 
18654 
XS(_wrap_Geometry_AddPoint_2D)18655 XS(_wrap_Geometry_AddPoint_2D) {
18656   {
18657     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
18658     double arg2 ;
18659     double arg3 ;
18660     void *argp1 = 0 ;
18661     int res1 = 0 ;
18662     double val2 ;
18663     int ecode2 = 0 ;
18664     double val3 ;
18665     int ecode3 = 0 ;
18666     int argvi = 0;
18667     dXSARGS;
18668 
18669     if ((items < 3) || (items > 3)) {
18670       SWIG_croak("Usage: Geometry_AddPoint_2D(self,x,y);");
18671     }
18672     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
18673     if (!SWIG_IsOK(res1)) {
18674       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_AddPoint_2D" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
18675     }
18676     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
18677     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
18678     if (!SWIG_IsOK(ecode2)) {
18679       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_AddPoint_2D" "', argument " "2"" of type '" "double""'");
18680     }
18681     arg2 = static_cast< double >(val2);
18682     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
18683     if (!SWIG_IsOK(ecode3)) {
18684       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Geometry_AddPoint_2D" "', argument " "3"" of type '" "double""'");
18685     }
18686     arg3 = static_cast< double >(val3);
18687     {
18688       CPLErrorReset();
18689       OGRGeometryShadow_AddPoint_2D(arg1,arg2,arg3);
18690       CPLErr eclass = CPLGetLastErrorType();
18691       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
18692         do_confess( CPLGetLastErrorMsg(), 0 );
18693 
18694 
18695 
18696 
18697 
18698       }
18699 
18700 
18701       /*
18702           Make warnings regular Perl warnings. This duplicates the warning
18703           message if DontUseExceptions() is in effect (it is not by default).
18704           */
18705       if ( eclass == CE_Warning ) {
18706         warn( CPLGetLastErrorMsg(), "%s" );
18707       }
18708 
18709 
18710     }
18711     {
18712       /* %typemap(out) void */
18713     }
18714 
18715 
18716 
18717     XSRETURN(argvi);
18718   fail:
18719 
18720 
18721 
18722     SWIG_croak_null();
18723   }
18724 }
18725 
18726 
XS(_wrap_Geometry_AddGeometryDirectly)18727 XS(_wrap_Geometry_AddGeometryDirectly) {
18728   {
18729     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
18730     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
18731     void *argp1 = 0 ;
18732     int res1 = 0 ;
18733     int res2 = 0 ;
18734     int argvi = 0;
18735     OGRErr result;
18736     dXSARGS;
18737 
18738     if ((items < 2) || (items > 2)) {
18739       SWIG_croak("Usage: Geometry_AddGeometryDirectly(self,other_disown);");
18740     }
18741     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
18742     if (!SWIG_IsOK(res1)) {
18743       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_AddGeometryDirectly" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
18744     }
18745     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
18746     res2 = SWIG_ConvertPtr(ST(1), SWIG_as_voidptrptr(&arg2), SWIGTYPE_p_OGRGeometryShadow, SWIG_POINTER_DISOWN |  0 );
18747     if (!SWIG_IsOK(res2)) {
18748       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_AddGeometryDirectly" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
18749     }
18750     {
18751       if (!arg2) {
18752         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
18753       }
18754     }
18755     {
18756       CPLErrorReset();
18757       result = (OGRErr)OGRGeometryShadow_AddGeometryDirectly(arg1,arg2);
18758       CPLErr eclass = CPLGetLastErrorType();
18759       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
18760         do_confess( CPLGetLastErrorMsg(), 0 );
18761 
18762 
18763 
18764 
18765 
18766       }
18767 
18768 
18769       /*
18770           Make warnings regular Perl warnings. This duplicates the warning
18771           message if DontUseExceptions() is in effect (it is not by default).
18772           */
18773       if ( eclass == CE_Warning ) {
18774         warn( CPLGetLastErrorMsg(), "%s" );
18775       }
18776 
18777 
18778     }
18779     {
18780       /* %typemap(out) OGRErr */
18781       if ( result != 0 ) {
18782         const char *err = CPLGetLastErrorMsg();
18783         if (err and *err) do_confess(err, 0); /* this is usually better */
18784         do_confess( OGRErrMessages(result), 1 );
18785       }
18786     }
18787 
18788 
18789     XSRETURN(argvi);
18790   fail:
18791 
18792 
18793     SWIG_croak_null();
18794   }
18795 }
18796 
18797 
XS(_wrap_Geometry_AddGeometry)18798 XS(_wrap_Geometry_AddGeometry) {
18799   {
18800     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
18801     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
18802     void *argp1 = 0 ;
18803     int res1 = 0 ;
18804     void *argp2 = 0 ;
18805     int res2 = 0 ;
18806     int argvi = 0;
18807     OGRErr result;
18808     dXSARGS;
18809 
18810     if ((items < 2) || (items > 2)) {
18811       SWIG_croak("Usage: Geometry_AddGeometry(self,other);");
18812     }
18813     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
18814     if (!SWIG_IsOK(res1)) {
18815       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_AddGeometry" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
18816     }
18817     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
18818     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
18819     if (!SWIG_IsOK(res2)) {
18820       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_AddGeometry" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
18821     }
18822     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
18823     {
18824       if (!arg2) {
18825         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
18826       }
18827     }
18828     {
18829       CPLErrorReset();
18830       result = (OGRErr)OGRGeometryShadow_AddGeometry(arg1,arg2);
18831       CPLErr eclass = CPLGetLastErrorType();
18832       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
18833         do_confess( CPLGetLastErrorMsg(), 0 );
18834 
18835 
18836 
18837 
18838 
18839       }
18840 
18841 
18842       /*
18843           Make warnings regular Perl warnings. This duplicates the warning
18844           message if DontUseExceptions() is in effect (it is not by default).
18845           */
18846       if ( eclass == CE_Warning ) {
18847         warn( CPLGetLastErrorMsg(), "%s" );
18848       }
18849 
18850 
18851     }
18852     {
18853       /* %typemap(out) OGRErr */
18854       if ( result != 0 ) {
18855         const char *err = CPLGetLastErrorMsg();
18856         if (err and *err) do_confess(err, 0); /* this is usually better */
18857         do_confess( OGRErrMessages(result), 1 );
18858       }
18859     }
18860 
18861 
18862     XSRETURN(argvi);
18863   fail:
18864 
18865 
18866     SWIG_croak_null();
18867   }
18868 }
18869 
18870 
XS(_wrap_Geometry_RemoveGeometry)18871 XS(_wrap_Geometry_RemoveGeometry) {
18872   {
18873     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
18874     int arg2 ;
18875     void *argp1 = 0 ;
18876     int res1 = 0 ;
18877     int val2 ;
18878     int ecode2 = 0 ;
18879     int argvi = 0;
18880     OGRErr result;
18881     dXSARGS;
18882 
18883     if ((items < 2) || (items > 2)) {
18884       SWIG_croak("Usage: Geometry_RemoveGeometry(self,iSubGeom);");
18885     }
18886     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
18887     if (!SWIG_IsOK(res1)) {
18888       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_RemoveGeometry" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
18889     }
18890     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
18891     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
18892     if (!SWIG_IsOK(ecode2)) {
18893       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_RemoveGeometry" "', argument " "2"" of type '" "int""'");
18894     }
18895     arg2 = static_cast< int >(val2);
18896     {
18897       CPLErrorReset();
18898       result = (OGRErr)OGRGeometryShadow_RemoveGeometry(arg1,arg2);
18899       CPLErr eclass = CPLGetLastErrorType();
18900       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
18901         do_confess( CPLGetLastErrorMsg(), 0 );
18902 
18903 
18904 
18905 
18906 
18907       }
18908 
18909 
18910       /*
18911           Make warnings regular Perl warnings. This duplicates the warning
18912           message if DontUseExceptions() is in effect (it is not by default).
18913           */
18914       if ( eclass == CE_Warning ) {
18915         warn( CPLGetLastErrorMsg(), "%s" );
18916       }
18917 
18918 
18919     }
18920     {
18921       /* %typemap(out) OGRErr */
18922       if ( result != 0 ) {
18923         const char *err = CPLGetLastErrorMsg();
18924         if (err and *err) do_confess(err, 0); /* this is usually better */
18925         do_confess( OGRErrMessages(result), 1 );
18926       }
18927     }
18928 
18929 
18930     XSRETURN(argvi);
18931   fail:
18932 
18933 
18934     SWIG_croak_null();
18935   }
18936 }
18937 
18938 
XS(_wrap_Geometry_Clone)18939 XS(_wrap_Geometry_Clone) {
18940   {
18941     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
18942     void *argp1 = 0 ;
18943     int res1 = 0 ;
18944     int argvi = 0;
18945     OGRGeometryShadow *result = 0 ;
18946     dXSARGS;
18947 
18948     if ((items < 1) || (items > 1)) {
18949       SWIG_croak("Usage: Geometry_Clone(self);");
18950     }
18951     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
18952     if (!SWIG_IsOK(res1)) {
18953       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Clone" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
18954     }
18955     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
18956     {
18957       CPLErrorReset();
18958       result = (OGRGeometryShadow *)OGRGeometryShadow_Clone(arg1);
18959       CPLErr eclass = CPLGetLastErrorType();
18960       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
18961         do_confess( CPLGetLastErrorMsg(), 0 );
18962 
18963 
18964 
18965 
18966 
18967       }
18968 
18969 
18970       /*
18971           Make warnings regular Perl warnings. This duplicates the warning
18972           message if DontUseExceptions() is in effect (it is not by default).
18973           */
18974       if ( eclass == CE_Warning ) {
18975         warn( CPLGetLastErrorMsg(), "%s" );
18976       }
18977 
18978 
18979     }
18980     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
18981 
18982     XSRETURN(argvi);
18983   fail:
18984 
18985     SWIG_croak_null();
18986   }
18987 }
18988 
18989 
XS(_wrap_Geometry_GetGeometryType)18990 XS(_wrap_Geometry_GetGeometryType) {
18991   {
18992     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
18993     void *argp1 = 0 ;
18994     int res1 = 0 ;
18995     int argvi = 0;
18996     OGRwkbGeometryType result;
18997     dXSARGS;
18998 
18999     if ((items < 1) || (items > 1)) {
19000       SWIG_croak("Usage: Geometry_GetGeometryType(self);");
19001     }
19002     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
19003     if (!SWIG_IsOK(res1)) {
19004       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetGeometryType" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
19005     }
19006     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
19007     {
19008       CPLErrorReset();
19009       result = (OGRwkbGeometryType)OGRGeometryShadow_GetGeometryType(arg1);
19010       CPLErr eclass = CPLGetLastErrorType();
19011       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
19012         do_confess( CPLGetLastErrorMsg(), 0 );
19013 
19014 
19015 
19016 
19017 
19018       }
19019 
19020 
19021       /*
19022           Make warnings regular Perl warnings. This duplicates the warning
19023           message if DontUseExceptions() is in effect (it is not by default).
19024           */
19025       if ( eclass == CE_Warning ) {
19026         warn( CPLGetLastErrorMsg(), "%s" );
19027       }
19028 
19029 
19030     }
19031     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
19032 
19033     XSRETURN(argvi);
19034   fail:
19035 
19036     SWIG_croak_null();
19037   }
19038 }
19039 
19040 
XS(_wrap_Geometry_GetGeometryName)19041 XS(_wrap_Geometry_GetGeometryName) {
19042   {
19043     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
19044     void *argp1 = 0 ;
19045     int res1 = 0 ;
19046     int argvi = 0;
19047     char *result = 0 ;
19048     dXSARGS;
19049 
19050     if ((items < 1) || (items > 1)) {
19051       SWIG_croak("Usage: Geometry_GetGeometryName(self);");
19052     }
19053     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
19054     if (!SWIG_IsOK(res1)) {
19055       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetGeometryName" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
19056     }
19057     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
19058     {
19059       CPLErrorReset();
19060       result = (char *)OGRGeometryShadow_GetGeometryName(arg1);
19061       CPLErr eclass = CPLGetLastErrorType();
19062       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
19063         do_confess( CPLGetLastErrorMsg(), 0 );
19064 
19065 
19066 
19067 
19068 
19069       }
19070 
19071 
19072       /*
19073           Make warnings regular Perl warnings. This duplicates the warning
19074           message if DontUseExceptions() is in effect (it is not by default).
19075           */
19076       if ( eclass == CE_Warning ) {
19077         warn( CPLGetLastErrorMsg(), "%s" );
19078       }
19079 
19080 
19081     }
19082     {
19083       /* %typemap(out) const char * */
19084       ST(argvi) = newSVpv(result, 0);
19085       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
19086       sv_2mortal(ST(argvi));
19087       argvi++;
19088     }
19089 
19090     XSRETURN(argvi);
19091   fail:
19092 
19093     SWIG_croak_null();
19094   }
19095 }
19096 
19097 
XS(_wrap_Geometry_Length)19098 XS(_wrap_Geometry_Length) {
19099   {
19100     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
19101     void *argp1 = 0 ;
19102     int res1 = 0 ;
19103     int argvi = 0;
19104     double result;
19105     dXSARGS;
19106 
19107     if ((items < 1) || (items > 1)) {
19108       SWIG_croak("Usage: Geometry_Length(self);");
19109     }
19110     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
19111     if (!SWIG_IsOK(res1)) {
19112       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Length" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
19113     }
19114     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
19115     {
19116       CPLErrorReset();
19117       result = (double)OGRGeometryShadow_Length(arg1);
19118       CPLErr eclass = CPLGetLastErrorType();
19119       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
19120         do_confess( CPLGetLastErrorMsg(), 0 );
19121 
19122 
19123 
19124 
19125 
19126       }
19127 
19128 
19129       /*
19130           Make warnings regular Perl warnings. This duplicates the warning
19131           message if DontUseExceptions() is in effect (it is not by default).
19132           */
19133       if ( eclass == CE_Warning ) {
19134         warn( CPLGetLastErrorMsg(), "%s" );
19135       }
19136 
19137 
19138     }
19139     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
19140 
19141     XSRETURN(argvi);
19142   fail:
19143 
19144     SWIG_croak_null();
19145   }
19146 }
19147 
19148 
XS(_wrap_Geometry_Area)19149 XS(_wrap_Geometry_Area) {
19150   {
19151     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
19152     void *argp1 = 0 ;
19153     int res1 = 0 ;
19154     int argvi = 0;
19155     double result;
19156     dXSARGS;
19157 
19158     if ((items < 1) || (items > 1)) {
19159       SWIG_croak("Usage: Geometry_Area(self);");
19160     }
19161     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
19162     if (!SWIG_IsOK(res1)) {
19163       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Area" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
19164     }
19165     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
19166     {
19167       CPLErrorReset();
19168       result = (double)OGRGeometryShadow_Area(arg1);
19169       CPLErr eclass = CPLGetLastErrorType();
19170       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
19171         do_confess( CPLGetLastErrorMsg(), 0 );
19172 
19173 
19174 
19175 
19176 
19177       }
19178 
19179 
19180       /*
19181           Make warnings regular Perl warnings. This duplicates the warning
19182           message if DontUseExceptions() is in effect (it is not by default).
19183           */
19184       if ( eclass == CE_Warning ) {
19185         warn( CPLGetLastErrorMsg(), "%s" );
19186       }
19187 
19188 
19189     }
19190     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
19191 
19192     XSRETURN(argvi);
19193   fail:
19194 
19195     SWIG_croak_null();
19196   }
19197 }
19198 
19199 
XS(_wrap_Geometry_GetArea)19200 XS(_wrap_Geometry_GetArea) {
19201   {
19202     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
19203     void *argp1 = 0 ;
19204     int res1 = 0 ;
19205     int argvi = 0;
19206     double result;
19207     dXSARGS;
19208 
19209     if ((items < 1) || (items > 1)) {
19210       SWIG_croak("Usage: Geometry_GetArea(self);");
19211     }
19212     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
19213     if (!SWIG_IsOK(res1)) {
19214       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetArea" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
19215     }
19216     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
19217     {
19218       CPLErrorReset();
19219       result = (double)OGRGeometryShadow_GetArea(arg1);
19220       CPLErr eclass = CPLGetLastErrorType();
19221       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
19222         do_confess( CPLGetLastErrorMsg(), 0 );
19223 
19224 
19225 
19226 
19227 
19228       }
19229 
19230 
19231       /*
19232           Make warnings regular Perl warnings. This duplicates the warning
19233           message if DontUseExceptions() is in effect (it is not by default).
19234           */
19235       if ( eclass == CE_Warning ) {
19236         warn( CPLGetLastErrorMsg(), "%s" );
19237       }
19238 
19239 
19240     }
19241     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
19242 
19243     XSRETURN(argvi);
19244   fail:
19245 
19246     SWIG_croak_null();
19247   }
19248 }
19249 
19250 
XS(_wrap_Geometry_GetPointCount)19251 XS(_wrap_Geometry_GetPointCount) {
19252   {
19253     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
19254     void *argp1 = 0 ;
19255     int res1 = 0 ;
19256     int argvi = 0;
19257     int result;
19258     dXSARGS;
19259 
19260     if ((items < 1) || (items > 1)) {
19261       SWIG_croak("Usage: Geometry_GetPointCount(self);");
19262     }
19263     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
19264     if (!SWIG_IsOK(res1)) {
19265       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetPointCount" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
19266     }
19267     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
19268     {
19269       CPLErrorReset();
19270       result = (int)OGRGeometryShadow_GetPointCount(arg1);
19271       CPLErr eclass = CPLGetLastErrorType();
19272       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
19273         do_confess( CPLGetLastErrorMsg(), 0 );
19274 
19275 
19276 
19277 
19278 
19279       }
19280 
19281 
19282       /*
19283           Make warnings regular Perl warnings. This duplicates the warning
19284           message if DontUseExceptions() is in effect (it is not by default).
19285           */
19286       if ( eclass == CE_Warning ) {
19287         warn( CPLGetLastErrorMsg(), "%s" );
19288       }
19289 
19290 
19291     }
19292     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
19293 
19294     XSRETURN(argvi);
19295   fail:
19296 
19297     SWIG_croak_null();
19298   }
19299 }
19300 
19301 
XS(_wrap_Geometry_GetX)19302 XS(_wrap_Geometry_GetX) {
19303   {
19304     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
19305     int arg2 = (int) 0 ;
19306     void *argp1 = 0 ;
19307     int res1 = 0 ;
19308     int val2 ;
19309     int ecode2 = 0 ;
19310     int argvi = 0;
19311     double result;
19312     dXSARGS;
19313 
19314     if ((items < 1) || (items > 2)) {
19315       SWIG_croak("Usage: Geometry_GetX(self,point);");
19316     }
19317     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
19318     if (!SWIG_IsOK(res1)) {
19319       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetX" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
19320     }
19321     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
19322     if (items > 1) {
19323       ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
19324       if (!SWIG_IsOK(ecode2)) {
19325         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_GetX" "', argument " "2"" of type '" "int""'");
19326       }
19327       arg2 = static_cast< int >(val2);
19328     }
19329     {
19330       CPLErrorReset();
19331       result = (double)OGRGeometryShadow_GetX(arg1,arg2);
19332       CPLErr eclass = CPLGetLastErrorType();
19333       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
19334         do_confess( CPLGetLastErrorMsg(), 0 );
19335 
19336 
19337 
19338 
19339 
19340       }
19341 
19342 
19343       /*
19344           Make warnings regular Perl warnings. This duplicates the warning
19345           message if DontUseExceptions() is in effect (it is not by default).
19346           */
19347       if ( eclass == CE_Warning ) {
19348         warn( CPLGetLastErrorMsg(), "%s" );
19349       }
19350 
19351 
19352     }
19353     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
19354 
19355 
19356     XSRETURN(argvi);
19357   fail:
19358 
19359 
19360     SWIG_croak_null();
19361   }
19362 }
19363 
19364 
XS(_wrap_Geometry_GetY)19365 XS(_wrap_Geometry_GetY) {
19366   {
19367     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
19368     int arg2 = (int) 0 ;
19369     void *argp1 = 0 ;
19370     int res1 = 0 ;
19371     int val2 ;
19372     int ecode2 = 0 ;
19373     int argvi = 0;
19374     double result;
19375     dXSARGS;
19376 
19377     if ((items < 1) || (items > 2)) {
19378       SWIG_croak("Usage: Geometry_GetY(self,point);");
19379     }
19380     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
19381     if (!SWIG_IsOK(res1)) {
19382       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetY" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
19383     }
19384     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
19385     if (items > 1) {
19386       ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
19387       if (!SWIG_IsOK(ecode2)) {
19388         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_GetY" "', argument " "2"" of type '" "int""'");
19389       }
19390       arg2 = static_cast< int >(val2);
19391     }
19392     {
19393       CPLErrorReset();
19394       result = (double)OGRGeometryShadow_GetY(arg1,arg2);
19395       CPLErr eclass = CPLGetLastErrorType();
19396       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
19397         do_confess( CPLGetLastErrorMsg(), 0 );
19398 
19399 
19400 
19401 
19402 
19403       }
19404 
19405 
19406       /*
19407           Make warnings regular Perl warnings. This duplicates the warning
19408           message if DontUseExceptions() is in effect (it is not by default).
19409           */
19410       if ( eclass == CE_Warning ) {
19411         warn( CPLGetLastErrorMsg(), "%s" );
19412       }
19413 
19414 
19415     }
19416     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
19417 
19418 
19419     XSRETURN(argvi);
19420   fail:
19421 
19422 
19423     SWIG_croak_null();
19424   }
19425 }
19426 
19427 
XS(_wrap_Geometry_GetZ)19428 XS(_wrap_Geometry_GetZ) {
19429   {
19430     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
19431     int arg2 = (int) 0 ;
19432     void *argp1 = 0 ;
19433     int res1 = 0 ;
19434     int val2 ;
19435     int ecode2 = 0 ;
19436     int argvi = 0;
19437     double result;
19438     dXSARGS;
19439 
19440     if ((items < 1) || (items > 2)) {
19441       SWIG_croak("Usage: Geometry_GetZ(self,point);");
19442     }
19443     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
19444     if (!SWIG_IsOK(res1)) {
19445       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetZ" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
19446     }
19447     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
19448     if (items > 1) {
19449       ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
19450       if (!SWIG_IsOK(ecode2)) {
19451         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_GetZ" "', argument " "2"" of type '" "int""'");
19452       }
19453       arg2 = static_cast< int >(val2);
19454     }
19455     {
19456       CPLErrorReset();
19457       result = (double)OGRGeometryShadow_GetZ(arg1,arg2);
19458       CPLErr eclass = CPLGetLastErrorType();
19459       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
19460         do_confess( CPLGetLastErrorMsg(), 0 );
19461 
19462 
19463 
19464 
19465 
19466       }
19467 
19468 
19469       /*
19470           Make warnings regular Perl warnings. This duplicates the warning
19471           message if DontUseExceptions() is in effect (it is not by default).
19472           */
19473       if ( eclass == CE_Warning ) {
19474         warn( CPLGetLastErrorMsg(), "%s" );
19475       }
19476 
19477 
19478     }
19479     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
19480 
19481 
19482     XSRETURN(argvi);
19483   fail:
19484 
19485 
19486     SWIG_croak_null();
19487   }
19488 }
19489 
19490 
XS(_wrap_Geometry_GetM)19491 XS(_wrap_Geometry_GetM) {
19492   {
19493     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
19494     int arg2 = (int) 0 ;
19495     void *argp1 = 0 ;
19496     int res1 = 0 ;
19497     int val2 ;
19498     int ecode2 = 0 ;
19499     int argvi = 0;
19500     double result;
19501     dXSARGS;
19502 
19503     if ((items < 1) || (items > 2)) {
19504       SWIG_croak("Usage: Geometry_GetM(self,point);");
19505     }
19506     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
19507     if (!SWIG_IsOK(res1)) {
19508       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetM" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
19509     }
19510     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
19511     if (items > 1) {
19512       ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
19513       if (!SWIG_IsOK(ecode2)) {
19514         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_GetM" "', argument " "2"" of type '" "int""'");
19515       }
19516       arg2 = static_cast< int >(val2);
19517     }
19518     {
19519       CPLErrorReset();
19520       result = (double)OGRGeometryShadow_GetM(arg1,arg2);
19521       CPLErr eclass = CPLGetLastErrorType();
19522       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
19523         do_confess( CPLGetLastErrorMsg(), 0 );
19524 
19525 
19526 
19527 
19528 
19529       }
19530 
19531 
19532       /*
19533           Make warnings regular Perl warnings. This duplicates the warning
19534           message if DontUseExceptions() is in effect (it is not by default).
19535           */
19536       if ( eclass == CE_Warning ) {
19537         warn( CPLGetLastErrorMsg(), "%s" );
19538       }
19539 
19540 
19541     }
19542     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
19543 
19544 
19545     XSRETURN(argvi);
19546   fail:
19547 
19548 
19549     SWIG_croak_null();
19550   }
19551 }
19552 
19553 
XS(_wrap_Geometry_GetPoint_3D)19554 XS(_wrap_Geometry_GetPoint_3D) {
19555   {
19556     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
19557     int arg2 = (int) 0 ;
19558     double *arg3 = (double *) (double *)NULL ;
19559     void *argp1 = 0 ;
19560     int res1 = 0 ;
19561     int val2 ;
19562     int ecode2 = 0 ;
19563     double argout3[3] ;
19564     int argvi = 0;
19565     dXSARGS;
19566 
19567     {
19568       /* %typemap(in,numinputs=0) (double argout3[ANY]) */
19569       arg3 = argout3;
19570     }
19571     if ((items < 1) || (items > 2)) {
19572       SWIG_croak("Usage: Geometry_GetPoint_3D(self,iPoint);");
19573     }
19574     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
19575     if (!SWIG_IsOK(res1)) {
19576       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetPoint_3D" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
19577     }
19578     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
19579     if (items > 1) {
19580       ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
19581       if (!SWIG_IsOK(ecode2)) {
19582         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_GetPoint_3D" "', argument " "2"" of type '" "int""'");
19583       }
19584       arg2 = static_cast< int >(val2);
19585     }
19586     {
19587       CPLErrorReset();
19588       OGRGeometryShadow_GetPoint(arg1,arg2,arg3);
19589       CPLErr eclass = CPLGetLastErrorType();
19590       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
19591         do_confess( CPLGetLastErrorMsg(), 0 );
19592 
19593 
19594 
19595 
19596 
19597       }
19598 
19599 
19600       /*
19601           Make warnings regular Perl warnings. This duplicates the warning
19602           message if DontUseExceptions() is in effect (it is not by default).
19603           */
19604       if ( eclass == CE_Warning ) {
19605         warn( CPLGetLastErrorMsg(), "%s" );
19606       }
19607 
19608 
19609     }
19610     {
19611       /* %typemap(out) void */
19612     }
19613     {
19614       /* %typemap(argout) (double argout[ANY]) */
19615       if (GIMME_V == G_ARRAY) {
19616         /* return a list */
19617         int i;
19618         EXTEND(SP, argvi+3-items+1);
19619         for (i = 0; i < 3; i++)
19620         ST(argvi++) = sv_2mortal(newSVnv(arg3[i]));
19621       } else {
19622         ST(argvi) = CreateArrayFromDoubleArray( arg3, 3 );
19623         argvi++;
19624       }
19625     }
19626 
19627 
19628 
19629     XSRETURN(argvi);
19630   fail:
19631 
19632 
19633 
19634     SWIG_croak_null();
19635   }
19636 }
19637 
19638 
XS(_wrap_Geometry_GetPointZM)19639 XS(_wrap_Geometry_GetPointZM) {
19640   {
19641     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
19642     int arg2 = (int) 0 ;
19643     double *arg3 = (double *) (double *)NULL ;
19644     void *argp1 = 0 ;
19645     int res1 = 0 ;
19646     int val2 ;
19647     int ecode2 = 0 ;
19648     double argout3[4] ;
19649     int argvi = 0;
19650     dXSARGS;
19651 
19652     {
19653       /* %typemap(in,numinputs=0) (double argout3[ANY]) */
19654       arg3 = argout3;
19655     }
19656     if ((items < 1) || (items > 2)) {
19657       SWIG_croak("Usage: Geometry_GetPointZM(self,iPoint);");
19658     }
19659     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
19660     if (!SWIG_IsOK(res1)) {
19661       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetPointZM" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
19662     }
19663     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
19664     if (items > 1) {
19665       ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
19666       if (!SWIG_IsOK(ecode2)) {
19667         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_GetPointZM" "', argument " "2"" of type '" "int""'");
19668       }
19669       arg2 = static_cast< int >(val2);
19670     }
19671     {
19672       CPLErrorReset();
19673       OGRGeometryShadow_GetPointZM(arg1,arg2,arg3);
19674       CPLErr eclass = CPLGetLastErrorType();
19675       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
19676         do_confess( CPLGetLastErrorMsg(), 0 );
19677 
19678 
19679 
19680 
19681 
19682       }
19683 
19684 
19685       /*
19686           Make warnings regular Perl warnings. This duplicates the warning
19687           message if DontUseExceptions() is in effect (it is not by default).
19688           */
19689       if ( eclass == CE_Warning ) {
19690         warn( CPLGetLastErrorMsg(), "%s" );
19691       }
19692 
19693 
19694     }
19695     {
19696       /* %typemap(out) void */
19697     }
19698     {
19699       /* %typemap(argout) (double argout[ANY]) */
19700       if (GIMME_V == G_ARRAY) {
19701         /* return a list */
19702         int i;
19703         EXTEND(SP, argvi+4-items+1);
19704         for (i = 0; i < 4; i++)
19705         ST(argvi++) = sv_2mortal(newSVnv(arg3[i]));
19706       } else {
19707         ST(argvi) = CreateArrayFromDoubleArray( arg3, 4 );
19708         argvi++;
19709       }
19710     }
19711 
19712 
19713 
19714     XSRETURN(argvi);
19715   fail:
19716 
19717 
19718 
19719     SWIG_croak_null();
19720   }
19721 }
19722 
19723 
XS(_wrap_Geometry_GetPoint_2D)19724 XS(_wrap_Geometry_GetPoint_2D) {
19725   {
19726     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
19727     int arg2 = (int) 0 ;
19728     double *arg3 = (double *) (double *)NULL ;
19729     void *argp1 = 0 ;
19730     int res1 = 0 ;
19731     int val2 ;
19732     int ecode2 = 0 ;
19733     double argout3[2] ;
19734     int argvi = 0;
19735     dXSARGS;
19736 
19737     {
19738       /* %typemap(in,numinputs=0) (double argout3[ANY]) */
19739       arg3 = argout3;
19740     }
19741     if ((items < 1) || (items > 2)) {
19742       SWIG_croak("Usage: Geometry_GetPoint_2D(self,iPoint);");
19743     }
19744     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
19745     if (!SWIG_IsOK(res1)) {
19746       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetPoint_2D" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
19747     }
19748     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
19749     if (items > 1) {
19750       ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
19751       if (!SWIG_IsOK(ecode2)) {
19752         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_GetPoint_2D" "', argument " "2"" of type '" "int""'");
19753       }
19754       arg2 = static_cast< int >(val2);
19755     }
19756     {
19757       CPLErrorReset();
19758       OGRGeometryShadow_GetPoint_2D(arg1,arg2,arg3);
19759       CPLErr eclass = CPLGetLastErrorType();
19760       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
19761         do_confess( CPLGetLastErrorMsg(), 0 );
19762 
19763 
19764 
19765 
19766 
19767       }
19768 
19769 
19770       /*
19771           Make warnings regular Perl warnings. This duplicates the warning
19772           message if DontUseExceptions() is in effect (it is not by default).
19773           */
19774       if ( eclass == CE_Warning ) {
19775         warn( CPLGetLastErrorMsg(), "%s" );
19776       }
19777 
19778 
19779     }
19780     {
19781       /* %typemap(out) void */
19782     }
19783     {
19784       /* %typemap(argout) (double argout[ANY]) */
19785       if (GIMME_V == G_ARRAY) {
19786         /* return a list */
19787         int i;
19788         EXTEND(SP, argvi+2-items+1);
19789         for (i = 0; i < 2; i++)
19790         ST(argvi++) = sv_2mortal(newSVnv(arg3[i]));
19791       } else {
19792         ST(argvi) = CreateArrayFromDoubleArray( arg3, 2 );
19793         argvi++;
19794       }
19795     }
19796 
19797 
19798 
19799     XSRETURN(argvi);
19800   fail:
19801 
19802 
19803 
19804     SWIG_croak_null();
19805   }
19806 }
19807 
19808 
XS(_wrap_Geometry_GetGeometryCount)19809 XS(_wrap_Geometry_GetGeometryCount) {
19810   {
19811     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
19812     void *argp1 = 0 ;
19813     int res1 = 0 ;
19814     int argvi = 0;
19815     int result;
19816     dXSARGS;
19817 
19818     if ((items < 1) || (items > 1)) {
19819       SWIG_croak("Usage: Geometry_GetGeometryCount(self);");
19820     }
19821     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
19822     if (!SWIG_IsOK(res1)) {
19823       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetGeometryCount" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
19824     }
19825     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
19826     {
19827       CPLErrorReset();
19828       result = (int)OGRGeometryShadow_GetGeometryCount(arg1);
19829       CPLErr eclass = CPLGetLastErrorType();
19830       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
19831         do_confess( CPLGetLastErrorMsg(), 0 );
19832 
19833 
19834 
19835 
19836 
19837       }
19838 
19839 
19840       /*
19841           Make warnings regular Perl warnings. This duplicates the warning
19842           message if DontUseExceptions() is in effect (it is not by default).
19843           */
19844       if ( eclass == CE_Warning ) {
19845         warn( CPLGetLastErrorMsg(), "%s" );
19846       }
19847 
19848 
19849     }
19850     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
19851 
19852     XSRETURN(argvi);
19853   fail:
19854 
19855     SWIG_croak_null();
19856   }
19857 }
19858 
19859 
XS(_wrap_Geometry_SetPoint_3D)19860 XS(_wrap_Geometry_SetPoint_3D) {
19861   {
19862     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
19863     int arg2 ;
19864     double arg3 ;
19865     double arg4 ;
19866     double arg5 = (double) 0 ;
19867     void *argp1 = 0 ;
19868     int res1 = 0 ;
19869     int val2 ;
19870     int ecode2 = 0 ;
19871     double val3 ;
19872     int ecode3 = 0 ;
19873     double val4 ;
19874     int ecode4 = 0 ;
19875     double val5 ;
19876     int ecode5 = 0 ;
19877     int argvi = 0;
19878     dXSARGS;
19879 
19880     if ((items < 4) || (items > 5)) {
19881       SWIG_croak("Usage: Geometry_SetPoint_3D(self,point,x,y,z);");
19882     }
19883     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
19884     if (!SWIG_IsOK(res1)) {
19885       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_SetPoint_3D" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
19886     }
19887     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
19888     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
19889     if (!SWIG_IsOK(ecode2)) {
19890       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_SetPoint_3D" "', argument " "2"" of type '" "int""'");
19891     }
19892     arg2 = static_cast< int >(val2);
19893     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
19894     if (!SWIG_IsOK(ecode3)) {
19895       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Geometry_SetPoint_3D" "', argument " "3"" of type '" "double""'");
19896     }
19897     arg3 = static_cast< double >(val3);
19898     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
19899     if (!SWIG_IsOK(ecode4)) {
19900       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "Geometry_SetPoint_3D" "', argument " "4"" of type '" "double""'");
19901     }
19902     arg4 = static_cast< double >(val4);
19903     if (items > 4) {
19904       ecode5 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
19905       if (!SWIG_IsOK(ecode5)) {
19906         SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "Geometry_SetPoint_3D" "', argument " "5"" of type '" "double""'");
19907       }
19908       arg5 = static_cast< double >(val5);
19909     }
19910     {
19911       CPLErrorReset();
19912       OGRGeometryShadow_SetPoint(arg1,arg2,arg3,arg4,arg5);
19913       CPLErr eclass = CPLGetLastErrorType();
19914       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
19915         do_confess( CPLGetLastErrorMsg(), 0 );
19916 
19917 
19918 
19919 
19920 
19921       }
19922 
19923 
19924       /*
19925           Make warnings regular Perl warnings. This duplicates the warning
19926           message if DontUseExceptions() is in effect (it is not by default).
19927           */
19928       if ( eclass == CE_Warning ) {
19929         warn( CPLGetLastErrorMsg(), "%s" );
19930       }
19931 
19932 
19933     }
19934     {
19935       /* %typemap(out) void */
19936     }
19937 
19938 
19939 
19940 
19941 
19942     XSRETURN(argvi);
19943   fail:
19944 
19945 
19946 
19947 
19948 
19949     SWIG_croak_null();
19950   }
19951 }
19952 
19953 
XS(_wrap_Geometry_SetPointM)19954 XS(_wrap_Geometry_SetPointM) {
19955   {
19956     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
19957     int arg2 ;
19958     double arg3 ;
19959     double arg4 ;
19960     double arg5 ;
19961     void *argp1 = 0 ;
19962     int res1 = 0 ;
19963     int val2 ;
19964     int ecode2 = 0 ;
19965     double val3 ;
19966     int ecode3 = 0 ;
19967     double val4 ;
19968     int ecode4 = 0 ;
19969     double val5 ;
19970     int ecode5 = 0 ;
19971     int argvi = 0;
19972     dXSARGS;
19973 
19974     if ((items < 5) || (items > 5)) {
19975       SWIG_croak("Usage: Geometry_SetPointM(self,point,x,y,m);");
19976     }
19977     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
19978     if (!SWIG_IsOK(res1)) {
19979       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_SetPointM" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
19980     }
19981     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
19982     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
19983     if (!SWIG_IsOK(ecode2)) {
19984       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_SetPointM" "', argument " "2"" of type '" "int""'");
19985     }
19986     arg2 = static_cast< int >(val2);
19987     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
19988     if (!SWIG_IsOK(ecode3)) {
19989       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Geometry_SetPointM" "', argument " "3"" of type '" "double""'");
19990     }
19991     arg3 = static_cast< double >(val3);
19992     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
19993     if (!SWIG_IsOK(ecode4)) {
19994       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "Geometry_SetPointM" "', argument " "4"" of type '" "double""'");
19995     }
19996     arg4 = static_cast< double >(val4);
19997     ecode5 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
19998     if (!SWIG_IsOK(ecode5)) {
19999       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "Geometry_SetPointM" "', argument " "5"" of type '" "double""'");
20000     }
20001     arg5 = static_cast< double >(val5);
20002     {
20003       CPLErrorReset();
20004       OGRGeometryShadow_SetPointM(arg1,arg2,arg3,arg4,arg5);
20005       CPLErr eclass = CPLGetLastErrorType();
20006       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
20007         do_confess( CPLGetLastErrorMsg(), 0 );
20008 
20009 
20010 
20011 
20012 
20013       }
20014 
20015 
20016       /*
20017           Make warnings regular Perl warnings. This duplicates the warning
20018           message if DontUseExceptions() is in effect (it is not by default).
20019           */
20020       if ( eclass == CE_Warning ) {
20021         warn( CPLGetLastErrorMsg(), "%s" );
20022       }
20023 
20024 
20025     }
20026     {
20027       /* %typemap(out) void */
20028     }
20029 
20030 
20031 
20032 
20033 
20034     XSRETURN(argvi);
20035   fail:
20036 
20037 
20038 
20039 
20040 
20041     SWIG_croak_null();
20042   }
20043 }
20044 
20045 
XS(_wrap_Geometry_SetPointZM)20046 XS(_wrap_Geometry_SetPointZM) {
20047   {
20048     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
20049     int arg2 ;
20050     double arg3 ;
20051     double arg4 ;
20052     double arg5 ;
20053     double arg6 ;
20054     void *argp1 = 0 ;
20055     int res1 = 0 ;
20056     int val2 ;
20057     int ecode2 = 0 ;
20058     double val3 ;
20059     int ecode3 = 0 ;
20060     double val4 ;
20061     int ecode4 = 0 ;
20062     double val5 ;
20063     int ecode5 = 0 ;
20064     double val6 ;
20065     int ecode6 = 0 ;
20066     int argvi = 0;
20067     dXSARGS;
20068 
20069     if ((items < 6) || (items > 6)) {
20070       SWIG_croak("Usage: Geometry_SetPointZM(self,point,x,y,z,m);");
20071     }
20072     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20073     if (!SWIG_IsOK(res1)) {
20074       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_SetPointZM" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
20075     }
20076     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
20077     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
20078     if (!SWIG_IsOK(ecode2)) {
20079       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_SetPointZM" "', argument " "2"" of type '" "int""'");
20080     }
20081     arg2 = static_cast< int >(val2);
20082     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
20083     if (!SWIG_IsOK(ecode3)) {
20084       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Geometry_SetPointZM" "', argument " "3"" of type '" "double""'");
20085     }
20086     arg3 = static_cast< double >(val3);
20087     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
20088     if (!SWIG_IsOK(ecode4)) {
20089       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "Geometry_SetPointZM" "', argument " "4"" of type '" "double""'");
20090     }
20091     arg4 = static_cast< double >(val4);
20092     ecode5 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
20093     if (!SWIG_IsOK(ecode5)) {
20094       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "Geometry_SetPointZM" "', argument " "5"" of type '" "double""'");
20095     }
20096     arg5 = static_cast< double >(val5);
20097     ecode6 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
20098     if (!SWIG_IsOK(ecode6)) {
20099       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "Geometry_SetPointZM" "', argument " "6"" of type '" "double""'");
20100     }
20101     arg6 = static_cast< double >(val6);
20102     {
20103       CPLErrorReset();
20104       OGRGeometryShadow_SetPointZM(arg1,arg2,arg3,arg4,arg5,arg6);
20105       CPLErr eclass = CPLGetLastErrorType();
20106       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
20107         do_confess( CPLGetLastErrorMsg(), 0 );
20108 
20109 
20110 
20111 
20112 
20113       }
20114 
20115 
20116       /*
20117           Make warnings regular Perl warnings. This duplicates the warning
20118           message if DontUseExceptions() is in effect (it is not by default).
20119           */
20120       if ( eclass == CE_Warning ) {
20121         warn( CPLGetLastErrorMsg(), "%s" );
20122       }
20123 
20124 
20125     }
20126     {
20127       /* %typemap(out) void */
20128     }
20129 
20130 
20131 
20132 
20133 
20134 
20135     XSRETURN(argvi);
20136   fail:
20137 
20138 
20139 
20140 
20141 
20142 
20143     SWIG_croak_null();
20144   }
20145 }
20146 
20147 
XS(_wrap_Geometry_SetPoint_2D)20148 XS(_wrap_Geometry_SetPoint_2D) {
20149   {
20150     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
20151     int arg2 ;
20152     double arg3 ;
20153     double arg4 ;
20154     void *argp1 = 0 ;
20155     int res1 = 0 ;
20156     int val2 ;
20157     int ecode2 = 0 ;
20158     double val3 ;
20159     int ecode3 = 0 ;
20160     double val4 ;
20161     int ecode4 = 0 ;
20162     int argvi = 0;
20163     dXSARGS;
20164 
20165     if ((items < 4) || (items > 4)) {
20166       SWIG_croak("Usage: Geometry_SetPoint_2D(self,point,x,y);");
20167     }
20168     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20169     if (!SWIG_IsOK(res1)) {
20170       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_SetPoint_2D" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
20171     }
20172     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
20173     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
20174     if (!SWIG_IsOK(ecode2)) {
20175       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_SetPoint_2D" "', argument " "2"" of type '" "int""'");
20176     }
20177     arg2 = static_cast< int >(val2);
20178     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
20179     if (!SWIG_IsOK(ecode3)) {
20180       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Geometry_SetPoint_2D" "', argument " "3"" of type '" "double""'");
20181     }
20182     arg3 = static_cast< double >(val3);
20183     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
20184     if (!SWIG_IsOK(ecode4)) {
20185       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "Geometry_SetPoint_2D" "', argument " "4"" of type '" "double""'");
20186     }
20187     arg4 = static_cast< double >(val4);
20188     {
20189       CPLErrorReset();
20190       OGRGeometryShadow_SetPoint_2D(arg1,arg2,arg3,arg4);
20191       CPLErr eclass = CPLGetLastErrorType();
20192       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
20193         do_confess( CPLGetLastErrorMsg(), 0 );
20194 
20195 
20196 
20197 
20198 
20199       }
20200 
20201 
20202       /*
20203           Make warnings regular Perl warnings. This duplicates the warning
20204           message if DontUseExceptions() is in effect (it is not by default).
20205           */
20206       if ( eclass == CE_Warning ) {
20207         warn( CPLGetLastErrorMsg(), "%s" );
20208       }
20209 
20210 
20211     }
20212     {
20213       /* %typemap(out) void */
20214     }
20215 
20216 
20217 
20218 
20219     XSRETURN(argvi);
20220   fail:
20221 
20222 
20223 
20224 
20225     SWIG_croak_null();
20226   }
20227 }
20228 
20229 
XS(_wrap_Geometry_SwapXY)20230 XS(_wrap_Geometry_SwapXY) {
20231   {
20232     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
20233     void *argp1 = 0 ;
20234     int res1 = 0 ;
20235     int argvi = 0;
20236     dXSARGS;
20237 
20238     if ((items < 1) || (items > 1)) {
20239       SWIG_croak("Usage: Geometry_SwapXY(self);");
20240     }
20241     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20242     if (!SWIG_IsOK(res1)) {
20243       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_SwapXY" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
20244     }
20245     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
20246     {
20247       CPLErrorReset();
20248       OGRGeometryShadow_SwapXY(arg1);
20249       CPLErr eclass = CPLGetLastErrorType();
20250       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
20251         do_confess( CPLGetLastErrorMsg(), 0 );
20252 
20253 
20254 
20255 
20256 
20257       }
20258 
20259 
20260       /*
20261           Make warnings regular Perl warnings. This duplicates the warning
20262           message if DontUseExceptions() is in effect (it is not by default).
20263           */
20264       if ( eclass == CE_Warning ) {
20265         warn( CPLGetLastErrorMsg(), "%s" );
20266       }
20267 
20268 
20269     }
20270     {
20271       /* %typemap(out) void */
20272     }
20273 
20274     XSRETURN(argvi);
20275   fail:
20276 
20277     SWIG_croak_null();
20278   }
20279 }
20280 
20281 
XS(_wrap_Geometry__GetGeometryRef)20282 XS(_wrap_Geometry__GetGeometryRef) {
20283   {
20284     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
20285     int arg2 ;
20286     void *argp1 = 0 ;
20287     int res1 = 0 ;
20288     int val2 ;
20289     int ecode2 = 0 ;
20290     int argvi = 0;
20291     OGRGeometryShadow *result = 0 ;
20292     dXSARGS;
20293 
20294     if ((items < 2) || (items > 2)) {
20295       SWIG_croak("Usage: Geometry__GetGeometryRef(self,geom);");
20296     }
20297     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20298     if (!SWIG_IsOK(res1)) {
20299       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry__GetGeometryRef" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
20300     }
20301     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
20302     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
20303     if (!SWIG_IsOK(ecode2)) {
20304       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry__GetGeometryRef" "', argument " "2"" of type '" "int""'");
20305     }
20306     arg2 = static_cast< int >(val2);
20307     {
20308       CPLErrorReset();
20309       result = (OGRGeometryShadow *)OGRGeometryShadow_GetGeometryRef(arg1,arg2);
20310       CPLErr eclass = CPLGetLastErrorType();
20311       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
20312         do_confess( CPLGetLastErrorMsg(), 0 );
20313 
20314 
20315 
20316 
20317 
20318       }
20319 
20320 
20321       /*
20322           Make warnings regular Perl warnings. This duplicates the warning
20323           message if DontUseExceptions() is in effect (it is not by default).
20324           */
20325       if ( eclass == CE_Warning ) {
20326         warn( CPLGetLastErrorMsg(), "%s" );
20327       }
20328 
20329 
20330     }
20331     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, 0 | SWIG_SHADOW); argvi++ ;
20332 
20333 
20334     XSRETURN(argvi);
20335   fail:
20336 
20337 
20338     SWIG_croak_null();
20339   }
20340 }
20341 
20342 
XS(_wrap_Geometry_Simplify)20343 XS(_wrap_Geometry_Simplify) {
20344   {
20345     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
20346     double arg2 ;
20347     void *argp1 = 0 ;
20348     int res1 = 0 ;
20349     double val2 ;
20350     int ecode2 = 0 ;
20351     int argvi = 0;
20352     OGRGeometryShadow *result = 0 ;
20353     dXSARGS;
20354 
20355     if ((items < 2) || (items > 2)) {
20356       SWIG_croak("Usage: Geometry_Simplify(self,tolerance);");
20357     }
20358     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20359     if (!SWIG_IsOK(res1)) {
20360       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Simplify" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
20361     }
20362     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
20363     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
20364     if (!SWIG_IsOK(ecode2)) {
20365       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_Simplify" "', argument " "2"" of type '" "double""'");
20366     }
20367     arg2 = static_cast< double >(val2);
20368     {
20369       CPLErrorReset();
20370       result = (OGRGeometryShadow *)OGRGeometryShadow_Simplify(arg1,arg2);
20371       CPLErr eclass = CPLGetLastErrorType();
20372       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
20373         do_confess( CPLGetLastErrorMsg(), 0 );
20374 
20375 
20376 
20377 
20378 
20379       }
20380 
20381 
20382       /*
20383           Make warnings regular Perl warnings. This duplicates the warning
20384           message if DontUseExceptions() is in effect (it is not by default).
20385           */
20386       if ( eclass == CE_Warning ) {
20387         warn( CPLGetLastErrorMsg(), "%s" );
20388       }
20389 
20390 
20391     }
20392     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
20393 
20394 
20395     XSRETURN(argvi);
20396   fail:
20397 
20398 
20399     SWIG_croak_null();
20400   }
20401 }
20402 
20403 
XS(_wrap_Geometry_SimplifyPreserveTopology)20404 XS(_wrap_Geometry_SimplifyPreserveTopology) {
20405   {
20406     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
20407     double arg2 ;
20408     void *argp1 = 0 ;
20409     int res1 = 0 ;
20410     double val2 ;
20411     int ecode2 = 0 ;
20412     int argvi = 0;
20413     OGRGeometryShadow *result = 0 ;
20414     dXSARGS;
20415 
20416     if ((items < 2) || (items > 2)) {
20417       SWIG_croak("Usage: Geometry_SimplifyPreserveTopology(self,tolerance);");
20418     }
20419     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20420     if (!SWIG_IsOK(res1)) {
20421       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_SimplifyPreserveTopology" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
20422     }
20423     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
20424     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
20425     if (!SWIG_IsOK(ecode2)) {
20426       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_SimplifyPreserveTopology" "', argument " "2"" of type '" "double""'");
20427     }
20428     arg2 = static_cast< double >(val2);
20429     {
20430       CPLErrorReset();
20431       result = (OGRGeometryShadow *)OGRGeometryShadow_SimplifyPreserveTopology(arg1,arg2);
20432       CPLErr eclass = CPLGetLastErrorType();
20433       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
20434         do_confess( CPLGetLastErrorMsg(), 0 );
20435 
20436 
20437 
20438 
20439 
20440       }
20441 
20442 
20443       /*
20444           Make warnings regular Perl warnings. This duplicates the warning
20445           message if DontUseExceptions() is in effect (it is not by default).
20446           */
20447       if ( eclass == CE_Warning ) {
20448         warn( CPLGetLastErrorMsg(), "%s" );
20449       }
20450 
20451 
20452     }
20453     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
20454 
20455 
20456     XSRETURN(argvi);
20457   fail:
20458 
20459 
20460     SWIG_croak_null();
20461   }
20462 }
20463 
20464 
XS(_wrap_Geometry_DelaunayTriangulation)20465 XS(_wrap_Geometry_DelaunayTriangulation) {
20466   {
20467     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
20468     double arg2 = (double) 0.0 ;
20469     int arg3 = (int) FALSE ;
20470     void *argp1 = 0 ;
20471     int res1 = 0 ;
20472     double val2 ;
20473     int ecode2 = 0 ;
20474     int val3 ;
20475     int ecode3 = 0 ;
20476     int argvi = 0;
20477     OGRGeometryShadow *result = 0 ;
20478     dXSARGS;
20479 
20480     if ((items < 1) || (items > 3)) {
20481       SWIG_croak("Usage: Geometry_DelaunayTriangulation(self,dfTolerance,bOnlyEdges);");
20482     }
20483     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20484     if (!SWIG_IsOK(res1)) {
20485       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_DelaunayTriangulation" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
20486     }
20487     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
20488     if (items > 1) {
20489       ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
20490       if (!SWIG_IsOK(ecode2)) {
20491         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_DelaunayTriangulation" "', argument " "2"" of type '" "double""'");
20492       }
20493       arg2 = static_cast< double >(val2);
20494     }
20495     if (items > 2) {
20496       ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
20497       if (!SWIG_IsOK(ecode3)) {
20498         SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Geometry_DelaunayTriangulation" "', argument " "3"" of type '" "int""'");
20499       }
20500       arg3 = static_cast< int >(val3);
20501     }
20502     {
20503       CPLErrorReset();
20504       result = (OGRGeometryShadow *)OGRGeometryShadow_DelaunayTriangulation(arg1,arg2,arg3);
20505       CPLErr eclass = CPLGetLastErrorType();
20506       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
20507         do_confess( CPLGetLastErrorMsg(), 0 );
20508 
20509 
20510 
20511 
20512 
20513       }
20514 
20515 
20516       /*
20517           Make warnings regular Perl warnings. This duplicates the warning
20518           message if DontUseExceptions() is in effect (it is not by default).
20519           */
20520       if ( eclass == CE_Warning ) {
20521         warn( CPLGetLastErrorMsg(), "%s" );
20522       }
20523 
20524 
20525     }
20526     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
20527 
20528 
20529 
20530     XSRETURN(argvi);
20531   fail:
20532 
20533 
20534 
20535     SWIG_croak_null();
20536   }
20537 }
20538 
20539 
XS(_wrap_Geometry_Polygonize)20540 XS(_wrap_Geometry_Polygonize) {
20541   {
20542     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
20543     void *argp1 = 0 ;
20544     int res1 = 0 ;
20545     int argvi = 0;
20546     OGRGeometryShadow *result = 0 ;
20547     dXSARGS;
20548 
20549     if ((items < 1) || (items > 1)) {
20550       SWIG_croak("Usage: Geometry_Polygonize(self);");
20551     }
20552     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20553     if (!SWIG_IsOK(res1)) {
20554       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Polygonize" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
20555     }
20556     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
20557     {
20558       CPLErrorReset();
20559       result = (OGRGeometryShadow *)OGRGeometryShadow_Polygonize(arg1);
20560       CPLErr eclass = CPLGetLastErrorType();
20561       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
20562         do_confess( CPLGetLastErrorMsg(), 0 );
20563 
20564 
20565 
20566 
20567 
20568       }
20569 
20570 
20571       /*
20572           Make warnings regular Perl warnings. This duplicates the warning
20573           message if DontUseExceptions() is in effect (it is not by default).
20574           */
20575       if ( eclass == CE_Warning ) {
20576         warn( CPLGetLastErrorMsg(), "%s" );
20577       }
20578 
20579 
20580     }
20581     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
20582 
20583     XSRETURN(argvi);
20584   fail:
20585 
20586     SWIG_croak_null();
20587   }
20588 }
20589 
20590 
XS(_wrap_Geometry_Boundary)20591 XS(_wrap_Geometry_Boundary) {
20592   {
20593     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
20594     void *argp1 = 0 ;
20595     int res1 = 0 ;
20596     int argvi = 0;
20597     OGRGeometryShadow *result = 0 ;
20598     dXSARGS;
20599 
20600     if ((items < 1) || (items > 1)) {
20601       SWIG_croak("Usage: Geometry_Boundary(self);");
20602     }
20603     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20604     if (!SWIG_IsOK(res1)) {
20605       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Boundary" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
20606     }
20607     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
20608     {
20609       CPLErrorReset();
20610       result = (OGRGeometryShadow *)OGRGeometryShadow_Boundary(arg1);
20611       CPLErr eclass = CPLGetLastErrorType();
20612       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
20613         do_confess( CPLGetLastErrorMsg(), 0 );
20614 
20615 
20616 
20617 
20618 
20619       }
20620 
20621 
20622       /*
20623           Make warnings regular Perl warnings. This duplicates the warning
20624           message if DontUseExceptions() is in effect (it is not by default).
20625           */
20626       if ( eclass == CE_Warning ) {
20627         warn( CPLGetLastErrorMsg(), "%s" );
20628       }
20629 
20630 
20631     }
20632     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
20633 
20634     XSRETURN(argvi);
20635   fail:
20636 
20637     SWIG_croak_null();
20638   }
20639 }
20640 
20641 
XS(_wrap_Geometry_GetBoundary)20642 XS(_wrap_Geometry_GetBoundary) {
20643   {
20644     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
20645     void *argp1 = 0 ;
20646     int res1 = 0 ;
20647     int argvi = 0;
20648     OGRGeometryShadow *result = 0 ;
20649     dXSARGS;
20650 
20651     if ((items < 1) || (items > 1)) {
20652       SWIG_croak("Usage: Geometry_GetBoundary(self);");
20653     }
20654     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20655     if (!SWIG_IsOK(res1)) {
20656       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetBoundary" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
20657     }
20658     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
20659     {
20660       CPLErrorReset();
20661       result = (OGRGeometryShadow *)OGRGeometryShadow_GetBoundary(arg1);
20662       CPLErr eclass = CPLGetLastErrorType();
20663       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
20664         do_confess( CPLGetLastErrorMsg(), 0 );
20665 
20666 
20667 
20668 
20669 
20670       }
20671 
20672 
20673       /*
20674           Make warnings regular Perl warnings. This duplicates the warning
20675           message if DontUseExceptions() is in effect (it is not by default).
20676           */
20677       if ( eclass == CE_Warning ) {
20678         warn( CPLGetLastErrorMsg(), "%s" );
20679       }
20680 
20681 
20682     }
20683     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
20684 
20685     XSRETURN(argvi);
20686   fail:
20687 
20688     SWIG_croak_null();
20689   }
20690 }
20691 
20692 
XS(_wrap_Geometry_ConvexHull)20693 XS(_wrap_Geometry_ConvexHull) {
20694   {
20695     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
20696     void *argp1 = 0 ;
20697     int res1 = 0 ;
20698     int argvi = 0;
20699     OGRGeometryShadow *result = 0 ;
20700     dXSARGS;
20701 
20702     if ((items < 1) || (items > 1)) {
20703       SWIG_croak("Usage: Geometry_ConvexHull(self);");
20704     }
20705     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20706     if (!SWIG_IsOK(res1)) {
20707       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_ConvexHull" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
20708     }
20709     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
20710     {
20711       CPLErrorReset();
20712       result = (OGRGeometryShadow *)OGRGeometryShadow_ConvexHull(arg1);
20713       CPLErr eclass = CPLGetLastErrorType();
20714       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
20715         do_confess( CPLGetLastErrorMsg(), 0 );
20716 
20717 
20718 
20719 
20720 
20721       }
20722 
20723 
20724       /*
20725           Make warnings regular Perl warnings. This duplicates the warning
20726           message if DontUseExceptions() is in effect (it is not by default).
20727           */
20728       if ( eclass == CE_Warning ) {
20729         warn( CPLGetLastErrorMsg(), "%s" );
20730       }
20731 
20732 
20733     }
20734     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
20735 
20736     XSRETURN(argvi);
20737   fail:
20738 
20739     SWIG_croak_null();
20740   }
20741 }
20742 
20743 
XS(_wrap_Geometry_MakeValid)20744 XS(_wrap_Geometry_MakeValid) {
20745   {
20746     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
20747     void *argp1 = 0 ;
20748     int res1 = 0 ;
20749     int argvi = 0;
20750     OGRGeometryShadow *result = 0 ;
20751     dXSARGS;
20752 
20753     if ((items < 1) || (items > 1)) {
20754       SWIG_croak("Usage: Geometry_MakeValid(self);");
20755     }
20756     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20757     if (!SWIG_IsOK(res1)) {
20758       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_MakeValid" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
20759     }
20760     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
20761     {
20762       CPLErrorReset();
20763       result = (OGRGeometryShadow *)OGRGeometryShadow_MakeValid(arg1);
20764       CPLErr eclass = CPLGetLastErrorType();
20765       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
20766         do_confess( CPLGetLastErrorMsg(), 0 );
20767 
20768 
20769 
20770 
20771 
20772       }
20773 
20774 
20775       /*
20776           Make warnings regular Perl warnings. This duplicates the warning
20777           message if DontUseExceptions() is in effect (it is not by default).
20778           */
20779       if ( eclass == CE_Warning ) {
20780         warn( CPLGetLastErrorMsg(), "%s" );
20781       }
20782 
20783 
20784     }
20785     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
20786 
20787     XSRETURN(argvi);
20788   fail:
20789 
20790     SWIG_croak_null();
20791   }
20792 }
20793 
20794 
XS(_wrap_Geometry_Normalize)20795 XS(_wrap_Geometry_Normalize) {
20796   {
20797     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
20798     void *argp1 = 0 ;
20799     int res1 = 0 ;
20800     int argvi = 0;
20801     OGRGeometryShadow *result = 0 ;
20802     dXSARGS;
20803 
20804     if ((items < 1) || (items > 1)) {
20805       SWIG_croak("Usage: Geometry_Normalize(self);");
20806     }
20807     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20808     if (!SWIG_IsOK(res1)) {
20809       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Normalize" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
20810     }
20811     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
20812     {
20813       CPLErrorReset();
20814       result = (OGRGeometryShadow *)OGRGeometryShadow_Normalize(arg1);
20815       CPLErr eclass = CPLGetLastErrorType();
20816       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
20817         do_confess( CPLGetLastErrorMsg(), 0 );
20818 
20819 
20820 
20821 
20822 
20823       }
20824 
20825 
20826       /*
20827           Make warnings regular Perl warnings. This duplicates the warning
20828           message if DontUseExceptions() is in effect (it is not by default).
20829           */
20830       if ( eclass == CE_Warning ) {
20831         warn( CPLGetLastErrorMsg(), "%s" );
20832       }
20833 
20834 
20835     }
20836     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
20837 
20838     XSRETURN(argvi);
20839   fail:
20840 
20841     SWIG_croak_null();
20842   }
20843 }
20844 
20845 
XS(_wrap_Geometry_RemoveLowerDimensionSubGeoms)20846 XS(_wrap_Geometry_RemoveLowerDimensionSubGeoms) {
20847   {
20848     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
20849     void *argp1 = 0 ;
20850     int res1 = 0 ;
20851     int argvi = 0;
20852     OGRGeometryShadow *result = 0 ;
20853     dXSARGS;
20854 
20855     if ((items < 1) || (items > 1)) {
20856       SWIG_croak("Usage: Geometry_RemoveLowerDimensionSubGeoms(self);");
20857     }
20858     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20859     if (!SWIG_IsOK(res1)) {
20860       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_RemoveLowerDimensionSubGeoms" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
20861     }
20862     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
20863     {
20864       CPLErrorReset();
20865       result = (OGRGeometryShadow *)OGRGeometryShadow_RemoveLowerDimensionSubGeoms(arg1);
20866       CPLErr eclass = CPLGetLastErrorType();
20867       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
20868         do_confess( CPLGetLastErrorMsg(), 0 );
20869 
20870 
20871 
20872 
20873 
20874       }
20875 
20876 
20877       /*
20878           Make warnings regular Perl warnings. This duplicates the warning
20879           message if DontUseExceptions() is in effect (it is not by default).
20880           */
20881       if ( eclass == CE_Warning ) {
20882         warn( CPLGetLastErrorMsg(), "%s" );
20883       }
20884 
20885 
20886     }
20887     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
20888 
20889     XSRETURN(argvi);
20890   fail:
20891 
20892     SWIG_croak_null();
20893   }
20894 }
20895 
20896 
XS(_wrap_Geometry_Buffer)20897 XS(_wrap_Geometry_Buffer) {
20898   {
20899     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
20900     double arg2 ;
20901     int arg3 = (int) 30 ;
20902     void *argp1 = 0 ;
20903     int res1 = 0 ;
20904     double val2 ;
20905     int ecode2 = 0 ;
20906     int val3 ;
20907     int ecode3 = 0 ;
20908     int argvi = 0;
20909     OGRGeometryShadow *result = 0 ;
20910     dXSARGS;
20911 
20912     if ((items < 2) || (items > 3)) {
20913       SWIG_croak("Usage: Geometry_Buffer(self,distance,quadsecs);");
20914     }
20915     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20916     if (!SWIG_IsOK(res1)) {
20917       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Buffer" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
20918     }
20919     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
20920     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
20921     if (!SWIG_IsOK(ecode2)) {
20922       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_Buffer" "', argument " "2"" of type '" "double""'");
20923     }
20924     arg2 = static_cast< double >(val2);
20925     if (items > 2) {
20926       ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
20927       if (!SWIG_IsOK(ecode3)) {
20928         SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Geometry_Buffer" "', argument " "3"" of type '" "int""'");
20929       }
20930       arg3 = static_cast< int >(val3);
20931     }
20932     {
20933       CPLErrorReset();
20934       result = (OGRGeometryShadow *)OGRGeometryShadow_Buffer(arg1,arg2,arg3);
20935       CPLErr eclass = CPLGetLastErrorType();
20936       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
20937         do_confess( CPLGetLastErrorMsg(), 0 );
20938 
20939 
20940 
20941 
20942 
20943       }
20944 
20945 
20946       /*
20947           Make warnings regular Perl warnings. This duplicates the warning
20948           message if DontUseExceptions() is in effect (it is not by default).
20949           */
20950       if ( eclass == CE_Warning ) {
20951         warn( CPLGetLastErrorMsg(), "%s" );
20952       }
20953 
20954 
20955     }
20956     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
20957 
20958 
20959 
20960     XSRETURN(argvi);
20961   fail:
20962 
20963 
20964 
20965     SWIG_croak_null();
20966   }
20967 }
20968 
20969 
XS(_wrap_Geometry_Intersection)20970 XS(_wrap_Geometry_Intersection) {
20971   {
20972     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
20973     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
20974     void *argp1 = 0 ;
20975     int res1 = 0 ;
20976     void *argp2 = 0 ;
20977     int res2 = 0 ;
20978     int argvi = 0;
20979     OGRGeometryShadow *result = 0 ;
20980     dXSARGS;
20981 
20982     if ((items < 2) || (items > 2)) {
20983       SWIG_croak("Usage: Geometry_Intersection(self,other);");
20984     }
20985     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20986     if (!SWIG_IsOK(res1)) {
20987       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Intersection" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
20988     }
20989     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
20990     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
20991     if (!SWIG_IsOK(res2)) {
20992       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Intersection" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
20993     }
20994     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
20995     {
20996       if (!arg2) {
20997         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
20998       }
20999     }
21000     {
21001       CPLErrorReset();
21002       result = (OGRGeometryShadow *)OGRGeometryShadow_Intersection(arg1,arg2);
21003       CPLErr eclass = CPLGetLastErrorType();
21004       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21005         do_confess( CPLGetLastErrorMsg(), 0 );
21006 
21007 
21008 
21009 
21010 
21011       }
21012 
21013 
21014       /*
21015           Make warnings regular Perl warnings. This duplicates the warning
21016           message if DontUseExceptions() is in effect (it is not by default).
21017           */
21018       if ( eclass == CE_Warning ) {
21019         warn( CPLGetLastErrorMsg(), "%s" );
21020       }
21021 
21022 
21023     }
21024     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
21025 
21026 
21027     XSRETURN(argvi);
21028   fail:
21029 
21030 
21031     SWIG_croak_null();
21032   }
21033 }
21034 
21035 
XS(_wrap_Geometry_Union)21036 XS(_wrap_Geometry_Union) {
21037   {
21038     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
21039     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
21040     void *argp1 = 0 ;
21041     int res1 = 0 ;
21042     void *argp2 = 0 ;
21043     int res2 = 0 ;
21044     int argvi = 0;
21045     OGRGeometryShadow *result = 0 ;
21046     dXSARGS;
21047 
21048     if ((items < 2) || (items > 2)) {
21049       SWIG_croak("Usage: Geometry_Union(self,other);");
21050     }
21051     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21052     if (!SWIG_IsOK(res1)) {
21053       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Union" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
21054     }
21055     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
21056     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21057     if (!SWIG_IsOK(res2)) {
21058       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Union" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
21059     }
21060     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
21061     {
21062       if (!arg2) {
21063         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
21064       }
21065     }
21066     {
21067       CPLErrorReset();
21068       result = (OGRGeometryShadow *)OGRGeometryShadow_Union(arg1,arg2);
21069       CPLErr eclass = CPLGetLastErrorType();
21070       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21071         do_confess( CPLGetLastErrorMsg(), 0 );
21072 
21073 
21074 
21075 
21076 
21077       }
21078 
21079 
21080       /*
21081           Make warnings regular Perl warnings. This duplicates the warning
21082           message if DontUseExceptions() is in effect (it is not by default).
21083           */
21084       if ( eclass == CE_Warning ) {
21085         warn( CPLGetLastErrorMsg(), "%s" );
21086       }
21087 
21088 
21089     }
21090     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
21091 
21092 
21093     XSRETURN(argvi);
21094   fail:
21095 
21096 
21097     SWIG_croak_null();
21098   }
21099 }
21100 
21101 
XS(_wrap_Geometry_UnionCascaded)21102 XS(_wrap_Geometry_UnionCascaded) {
21103   {
21104     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
21105     void *argp1 = 0 ;
21106     int res1 = 0 ;
21107     int argvi = 0;
21108     OGRGeometryShadow *result = 0 ;
21109     dXSARGS;
21110 
21111     if ((items < 1) || (items > 1)) {
21112       SWIG_croak("Usage: Geometry_UnionCascaded(self);");
21113     }
21114     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21115     if (!SWIG_IsOK(res1)) {
21116       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_UnionCascaded" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
21117     }
21118     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
21119     {
21120       CPLErrorReset();
21121       result = (OGRGeometryShadow *)OGRGeometryShadow_UnionCascaded(arg1);
21122       CPLErr eclass = CPLGetLastErrorType();
21123       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21124         do_confess( CPLGetLastErrorMsg(), 0 );
21125 
21126 
21127 
21128 
21129 
21130       }
21131 
21132 
21133       /*
21134           Make warnings regular Perl warnings. This duplicates the warning
21135           message if DontUseExceptions() is in effect (it is not by default).
21136           */
21137       if ( eclass == CE_Warning ) {
21138         warn( CPLGetLastErrorMsg(), "%s" );
21139       }
21140 
21141 
21142     }
21143     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
21144 
21145     XSRETURN(argvi);
21146   fail:
21147 
21148     SWIG_croak_null();
21149   }
21150 }
21151 
21152 
XS(_wrap_Geometry_Difference)21153 XS(_wrap_Geometry_Difference) {
21154   {
21155     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
21156     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
21157     void *argp1 = 0 ;
21158     int res1 = 0 ;
21159     void *argp2 = 0 ;
21160     int res2 = 0 ;
21161     int argvi = 0;
21162     OGRGeometryShadow *result = 0 ;
21163     dXSARGS;
21164 
21165     if ((items < 2) || (items > 2)) {
21166       SWIG_croak("Usage: Geometry_Difference(self,other);");
21167     }
21168     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21169     if (!SWIG_IsOK(res1)) {
21170       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Difference" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
21171     }
21172     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
21173     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21174     if (!SWIG_IsOK(res2)) {
21175       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Difference" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
21176     }
21177     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
21178     {
21179       if (!arg2) {
21180         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
21181       }
21182     }
21183     {
21184       CPLErrorReset();
21185       result = (OGRGeometryShadow *)OGRGeometryShadow_Difference(arg1,arg2);
21186       CPLErr eclass = CPLGetLastErrorType();
21187       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21188         do_confess( CPLGetLastErrorMsg(), 0 );
21189 
21190 
21191 
21192 
21193 
21194       }
21195 
21196 
21197       /*
21198           Make warnings regular Perl warnings. This duplicates the warning
21199           message if DontUseExceptions() is in effect (it is not by default).
21200           */
21201       if ( eclass == CE_Warning ) {
21202         warn( CPLGetLastErrorMsg(), "%s" );
21203       }
21204 
21205 
21206     }
21207     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
21208 
21209 
21210     XSRETURN(argvi);
21211   fail:
21212 
21213 
21214     SWIG_croak_null();
21215   }
21216 }
21217 
21218 
XS(_wrap_Geometry_SymDifference)21219 XS(_wrap_Geometry_SymDifference) {
21220   {
21221     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
21222     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
21223     void *argp1 = 0 ;
21224     int res1 = 0 ;
21225     void *argp2 = 0 ;
21226     int res2 = 0 ;
21227     int argvi = 0;
21228     OGRGeometryShadow *result = 0 ;
21229     dXSARGS;
21230 
21231     if ((items < 2) || (items > 2)) {
21232       SWIG_croak("Usage: Geometry_SymDifference(self,other);");
21233     }
21234     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21235     if (!SWIG_IsOK(res1)) {
21236       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_SymDifference" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
21237     }
21238     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
21239     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21240     if (!SWIG_IsOK(res2)) {
21241       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_SymDifference" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
21242     }
21243     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
21244     {
21245       if (!arg2) {
21246         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
21247       }
21248     }
21249     {
21250       CPLErrorReset();
21251       result = (OGRGeometryShadow *)OGRGeometryShadow_SymDifference(arg1,arg2);
21252       CPLErr eclass = CPLGetLastErrorType();
21253       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21254         do_confess( CPLGetLastErrorMsg(), 0 );
21255 
21256 
21257 
21258 
21259 
21260       }
21261 
21262 
21263       /*
21264           Make warnings regular Perl warnings. This duplicates the warning
21265           message if DontUseExceptions() is in effect (it is not by default).
21266           */
21267       if ( eclass == CE_Warning ) {
21268         warn( CPLGetLastErrorMsg(), "%s" );
21269       }
21270 
21271 
21272     }
21273     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
21274 
21275 
21276     XSRETURN(argvi);
21277   fail:
21278 
21279 
21280     SWIG_croak_null();
21281   }
21282 }
21283 
21284 
XS(_wrap_Geometry_SymmetricDifference)21285 XS(_wrap_Geometry_SymmetricDifference) {
21286   {
21287     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
21288     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
21289     void *argp1 = 0 ;
21290     int res1 = 0 ;
21291     void *argp2 = 0 ;
21292     int res2 = 0 ;
21293     int argvi = 0;
21294     OGRGeometryShadow *result = 0 ;
21295     dXSARGS;
21296 
21297     if ((items < 2) || (items > 2)) {
21298       SWIG_croak("Usage: Geometry_SymmetricDifference(self,other);");
21299     }
21300     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21301     if (!SWIG_IsOK(res1)) {
21302       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_SymmetricDifference" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
21303     }
21304     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
21305     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21306     if (!SWIG_IsOK(res2)) {
21307       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_SymmetricDifference" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
21308     }
21309     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
21310     {
21311       if (!arg2) {
21312         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
21313       }
21314     }
21315     {
21316       CPLErrorReset();
21317       result = (OGRGeometryShadow *)OGRGeometryShadow_SymmetricDifference(arg1,arg2);
21318       CPLErr eclass = CPLGetLastErrorType();
21319       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21320         do_confess( CPLGetLastErrorMsg(), 0 );
21321 
21322 
21323 
21324 
21325 
21326       }
21327 
21328 
21329       /*
21330           Make warnings regular Perl warnings. This duplicates the warning
21331           message if DontUseExceptions() is in effect (it is not by default).
21332           */
21333       if ( eclass == CE_Warning ) {
21334         warn( CPLGetLastErrorMsg(), "%s" );
21335       }
21336 
21337 
21338     }
21339     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
21340 
21341 
21342     XSRETURN(argvi);
21343   fail:
21344 
21345 
21346     SWIG_croak_null();
21347   }
21348 }
21349 
21350 
XS(_wrap_Geometry_Distance)21351 XS(_wrap_Geometry_Distance) {
21352   {
21353     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
21354     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
21355     void *argp1 = 0 ;
21356     int res1 = 0 ;
21357     void *argp2 = 0 ;
21358     int res2 = 0 ;
21359     int argvi = 0;
21360     double result;
21361     dXSARGS;
21362 
21363     if ((items < 2) || (items > 2)) {
21364       SWIG_croak("Usage: Geometry_Distance(self,other);");
21365     }
21366     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21367     if (!SWIG_IsOK(res1)) {
21368       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Distance" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
21369     }
21370     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
21371     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21372     if (!SWIG_IsOK(res2)) {
21373       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Distance" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
21374     }
21375     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
21376     {
21377       if (!arg2) {
21378         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
21379       }
21380     }
21381     {
21382       CPLErrorReset();
21383       result = (double)OGRGeometryShadow_Distance(arg1,arg2);
21384       CPLErr eclass = CPLGetLastErrorType();
21385       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21386         do_confess( CPLGetLastErrorMsg(), 0 );
21387 
21388 
21389 
21390 
21391 
21392       }
21393 
21394 
21395       /*
21396           Make warnings regular Perl warnings. This duplicates the warning
21397           message if DontUseExceptions() is in effect (it is not by default).
21398           */
21399       if ( eclass == CE_Warning ) {
21400         warn( CPLGetLastErrorMsg(), "%s" );
21401       }
21402 
21403 
21404     }
21405     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
21406 
21407 
21408     XSRETURN(argvi);
21409   fail:
21410 
21411 
21412     SWIG_croak_null();
21413   }
21414 }
21415 
21416 
XS(_wrap_Geometry_Distance3D)21417 XS(_wrap_Geometry_Distance3D) {
21418   {
21419     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
21420     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
21421     void *argp1 = 0 ;
21422     int res1 = 0 ;
21423     void *argp2 = 0 ;
21424     int res2 = 0 ;
21425     int argvi = 0;
21426     double result;
21427     dXSARGS;
21428 
21429     if ((items < 2) || (items > 2)) {
21430       SWIG_croak("Usage: Geometry_Distance3D(self,other);");
21431     }
21432     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21433     if (!SWIG_IsOK(res1)) {
21434       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Distance3D" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
21435     }
21436     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
21437     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21438     if (!SWIG_IsOK(res2)) {
21439       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Distance3D" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
21440     }
21441     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
21442     {
21443       if (!arg2) {
21444         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
21445       }
21446     }
21447     {
21448       CPLErrorReset();
21449       result = (double)OGRGeometryShadow_Distance3D(arg1,arg2);
21450       CPLErr eclass = CPLGetLastErrorType();
21451       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21452         do_confess( CPLGetLastErrorMsg(), 0 );
21453 
21454 
21455 
21456 
21457 
21458       }
21459 
21460 
21461       /*
21462           Make warnings regular Perl warnings. This duplicates the warning
21463           message if DontUseExceptions() is in effect (it is not by default).
21464           */
21465       if ( eclass == CE_Warning ) {
21466         warn( CPLGetLastErrorMsg(), "%s" );
21467       }
21468 
21469 
21470     }
21471     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
21472 
21473 
21474     XSRETURN(argvi);
21475   fail:
21476 
21477 
21478     SWIG_croak_null();
21479   }
21480 }
21481 
21482 
XS(_wrap_Geometry_Empty)21483 XS(_wrap_Geometry_Empty) {
21484   {
21485     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
21486     void *argp1 = 0 ;
21487     int res1 = 0 ;
21488     int argvi = 0;
21489     dXSARGS;
21490 
21491     if ((items < 1) || (items > 1)) {
21492       SWIG_croak("Usage: Geometry_Empty(self);");
21493     }
21494     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21495     if (!SWIG_IsOK(res1)) {
21496       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Empty" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
21497     }
21498     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
21499     {
21500       CPLErrorReset();
21501       OGRGeometryShadow_Empty(arg1);
21502       CPLErr eclass = CPLGetLastErrorType();
21503       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21504         do_confess( CPLGetLastErrorMsg(), 0 );
21505 
21506 
21507 
21508 
21509 
21510       }
21511 
21512 
21513       /*
21514           Make warnings regular Perl warnings. This duplicates the warning
21515           message if DontUseExceptions() is in effect (it is not by default).
21516           */
21517       if ( eclass == CE_Warning ) {
21518         warn( CPLGetLastErrorMsg(), "%s" );
21519       }
21520 
21521 
21522     }
21523     {
21524       /* %typemap(out) void */
21525     }
21526 
21527     XSRETURN(argvi);
21528   fail:
21529 
21530     SWIG_croak_null();
21531   }
21532 }
21533 
21534 
XS(_wrap_Geometry_IsEmpty)21535 XS(_wrap_Geometry_IsEmpty) {
21536   {
21537     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
21538     void *argp1 = 0 ;
21539     int res1 = 0 ;
21540     int argvi = 0;
21541     bool result;
21542     dXSARGS;
21543 
21544     if ((items < 1) || (items > 1)) {
21545       SWIG_croak("Usage: Geometry_IsEmpty(self);");
21546     }
21547     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21548     if (!SWIG_IsOK(res1)) {
21549       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_IsEmpty" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
21550     }
21551     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
21552     {
21553       CPLErrorReset();
21554       result = (bool)OGRGeometryShadow_IsEmpty(arg1);
21555       CPLErr eclass = CPLGetLastErrorType();
21556       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21557         do_confess( CPLGetLastErrorMsg(), 0 );
21558 
21559 
21560 
21561 
21562 
21563       }
21564 
21565 
21566       /*
21567           Make warnings regular Perl warnings. This duplicates the warning
21568           message if DontUseExceptions() is in effect (it is not by default).
21569           */
21570       if ( eclass == CE_Warning ) {
21571         warn( CPLGetLastErrorMsg(), "%s" );
21572       }
21573 
21574 
21575     }
21576     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
21577 
21578     XSRETURN(argvi);
21579   fail:
21580 
21581     SWIG_croak_null();
21582   }
21583 }
21584 
21585 
XS(_wrap_Geometry_IsValid)21586 XS(_wrap_Geometry_IsValid) {
21587   {
21588     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
21589     void *argp1 = 0 ;
21590     int res1 = 0 ;
21591     int argvi = 0;
21592     bool result;
21593     dXSARGS;
21594 
21595     if ((items < 1) || (items > 1)) {
21596       SWIG_croak("Usage: Geometry_IsValid(self);");
21597     }
21598     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21599     if (!SWIG_IsOK(res1)) {
21600       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_IsValid" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
21601     }
21602     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
21603     {
21604       CPLErrorReset();
21605       result = (bool)OGRGeometryShadow_IsValid(arg1);
21606       CPLErr eclass = CPLGetLastErrorType();
21607       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21608         do_confess( CPLGetLastErrorMsg(), 0 );
21609 
21610 
21611 
21612 
21613 
21614       }
21615 
21616 
21617       /*
21618           Make warnings regular Perl warnings. This duplicates the warning
21619           message if DontUseExceptions() is in effect (it is not by default).
21620           */
21621       if ( eclass == CE_Warning ) {
21622         warn( CPLGetLastErrorMsg(), "%s" );
21623       }
21624 
21625 
21626     }
21627     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
21628 
21629     XSRETURN(argvi);
21630   fail:
21631 
21632     SWIG_croak_null();
21633   }
21634 }
21635 
21636 
XS(_wrap_Geometry_IsSimple)21637 XS(_wrap_Geometry_IsSimple) {
21638   {
21639     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
21640     void *argp1 = 0 ;
21641     int res1 = 0 ;
21642     int argvi = 0;
21643     bool result;
21644     dXSARGS;
21645 
21646     if ((items < 1) || (items > 1)) {
21647       SWIG_croak("Usage: Geometry_IsSimple(self);");
21648     }
21649     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21650     if (!SWIG_IsOK(res1)) {
21651       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_IsSimple" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
21652     }
21653     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
21654     {
21655       CPLErrorReset();
21656       result = (bool)OGRGeometryShadow_IsSimple(arg1);
21657       CPLErr eclass = CPLGetLastErrorType();
21658       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21659         do_confess( CPLGetLastErrorMsg(), 0 );
21660 
21661 
21662 
21663 
21664 
21665       }
21666 
21667 
21668       /*
21669           Make warnings regular Perl warnings. This duplicates the warning
21670           message if DontUseExceptions() is in effect (it is not by default).
21671           */
21672       if ( eclass == CE_Warning ) {
21673         warn( CPLGetLastErrorMsg(), "%s" );
21674       }
21675 
21676 
21677     }
21678     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
21679 
21680     XSRETURN(argvi);
21681   fail:
21682 
21683     SWIG_croak_null();
21684   }
21685 }
21686 
21687 
XS(_wrap_Geometry_IsRing)21688 XS(_wrap_Geometry_IsRing) {
21689   {
21690     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
21691     void *argp1 = 0 ;
21692     int res1 = 0 ;
21693     int argvi = 0;
21694     bool result;
21695     dXSARGS;
21696 
21697     if ((items < 1) || (items > 1)) {
21698       SWIG_croak("Usage: Geometry_IsRing(self);");
21699     }
21700     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21701     if (!SWIG_IsOK(res1)) {
21702       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_IsRing" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
21703     }
21704     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
21705     {
21706       CPLErrorReset();
21707       result = (bool)OGRGeometryShadow_IsRing(arg1);
21708       CPLErr eclass = CPLGetLastErrorType();
21709       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21710         do_confess( CPLGetLastErrorMsg(), 0 );
21711 
21712 
21713 
21714 
21715 
21716       }
21717 
21718 
21719       /*
21720           Make warnings regular Perl warnings. This duplicates the warning
21721           message if DontUseExceptions() is in effect (it is not by default).
21722           */
21723       if ( eclass == CE_Warning ) {
21724         warn( CPLGetLastErrorMsg(), "%s" );
21725       }
21726 
21727 
21728     }
21729     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
21730 
21731     XSRETURN(argvi);
21732   fail:
21733 
21734     SWIG_croak_null();
21735   }
21736 }
21737 
21738 
XS(_wrap_Geometry_Intersects)21739 XS(_wrap_Geometry_Intersects) {
21740   {
21741     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
21742     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
21743     void *argp1 = 0 ;
21744     int res1 = 0 ;
21745     void *argp2 = 0 ;
21746     int res2 = 0 ;
21747     int argvi = 0;
21748     bool result;
21749     dXSARGS;
21750 
21751     if ((items < 2) || (items > 2)) {
21752       SWIG_croak("Usage: Geometry_Intersects(self,other);");
21753     }
21754     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21755     if (!SWIG_IsOK(res1)) {
21756       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Intersects" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
21757     }
21758     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
21759     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21760     if (!SWIG_IsOK(res2)) {
21761       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Intersects" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
21762     }
21763     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
21764     {
21765       if (!arg2) {
21766         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
21767       }
21768     }
21769     {
21770       CPLErrorReset();
21771       result = (bool)OGRGeometryShadow_Intersects(arg1,arg2);
21772       CPLErr eclass = CPLGetLastErrorType();
21773       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21774         do_confess( CPLGetLastErrorMsg(), 0 );
21775 
21776 
21777 
21778 
21779 
21780       }
21781 
21782 
21783       /*
21784           Make warnings regular Perl warnings. This duplicates the warning
21785           message if DontUseExceptions() is in effect (it is not by default).
21786           */
21787       if ( eclass == CE_Warning ) {
21788         warn( CPLGetLastErrorMsg(), "%s" );
21789       }
21790 
21791 
21792     }
21793     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
21794 
21795 
21796     XSRETURN(argvi);
21797   fail:
21798 
21799 
21800     SWIG_croak_null();
21801   }
21802 }
21803 
21804 
XS(_wrap_Geometry_Intersect)21805 XS(_wrap_Geometry_Intersect) {
21806   {
21807     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
21808     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
21809     void *argp1 = 0 ;
21810     int res1 = 0 ;
21811     void *argp2 = 0 ;
21812     int res2 = 0 ;
21813     int argvi = 0;
21814     bool result;
21815     dXSARGS;
21816 
21817     if ((items < 2) || (items > 2)) {
21818       SWIG_croak("Usage: Geometry_Intersect(self,other);");
21819     }
21820     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21821     if (!SWIG_IsOK(res1)) {
21822       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Intersect" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
21823     }
21824     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
21825     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21826     if (!SWIG_IsOK(res2)) {
21827       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Intersect" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
21828     }
21829     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
21830     {
21831       if (!arg2) {
21832         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
21833       }
21834     }
21835     {
21836       CPLErrorReset();
21837       result = (bool)OGRGeometryShadow_Intersect(arg1,arg2);
21838       CPLErr eclass = CPLGetLastErrorType();
21839       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21840         do_confess( CPLGetLastErrorMsg(), 0 );
21841 
21842 
21843 
21844 
21845 
21846       }
21847 
21848 
21849       /*
21850           Make warnings regular Perl warnings. This duplicates the warning
21851           message if DontUseExceptions() is in effect (it is not by default).
21852           */
21853       if ( eclass == CE_Warning ) {
21854         warn( CPLGetLastErrorMsg(), "%s" );
21855       }
21856 
21857 
21858     }
21859     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
21860 
21861 
21862     XSRETURN(argvi);
21863   fail:
21864 
21865 
21866     SWIG_croak_null();
21867   }
21868 }
21869 
21870 
XS(_wrap_Geometry_Equals)21871 XS(_wrap_Geometry_Equals) {
21872   {
21873     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
21874     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
21875     void *argp1 = 0 ;
21876     int res1 = 0 ;
21877     void *argp2 = 0 ;
21878     int res2 = 0 ;
21879     int argvi = 0;
21880     bool result;
21881     dXSARGS;
21882 
21883     if ((items < 2) || (items > 2)) {
21884       SWIG_croak("Usage: Geometry_Equals(self,other);");
21885     }
21886     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21887     if (!SWIG_IsOK(res1)) {
21888       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Equals" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
21889     }
21890     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
21891     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21892     if (!SWIG_IsOK(res2)) {
21893       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Equals" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
21894     }
21895     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
21896     {
21897       if (!arg2) {
21898         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
21899       }
21900     }
21901     {
21902       CPLErrorReset();
21903       result = (bool)OGRGeometryShadow_Equals(arg1,arg2);
21904       CPLErr eclass = CPLGetLastErrorType();
21905       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21906         do_confess( CPLGetLastErrorMsg(), 0 );
21907 
21908 
21909 
21910 
21911 
21912       }
21913 
21914 
21915       /*
21916           Make warnings regular Perl warnings. This duplicates the warning
21917           message if DontUseExceptions() is in effect (it is not by default).
21918           */
21919       if ( eclass == CE_Warning ) {
21920         warn( CPLGetLastErrorMsg(), "%s" );
21921       }
21922 
21923 
21924     }
21925     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
21926 
21927 
21928     XSRETURN(argvi);
21929   fail:
21930 
21931 
21932     SWIG_croak_null();
21933   }
21934 }
21935 
21936 
XS(_wrap_Geometry_Equal)21937 XS(_wrap_Geometry_Equal) {
21938   {
21939     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
21940     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
21941     void *argp1 = 0 ;
21942     int res1 = 0 ;
21943     void *argp2 = 0 ;
21944     int res2 = 0 ;
21945     int argvi = 0;
21946     bool result;
21947     dXSARGS;
21948 
21949     if ((items < 2) || (items > 2)) {
21950       SWIG_croak("Usage: Geometry_Equal(self,other);");
21951     }
21952     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21953     if (!SWIG_IsOK(res1)) {
21954       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Equal" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
21955     }
21956     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
21957     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
21958     if (!SWIG_IsOK(res2)) {
21959       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Equal" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
21960     }
21961     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
21962     {
21963       if (!arg2) {
21964         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
21965       }
21966     }
21967     {
21968       CPLErrorReset();
21969       result = (bool)OGRGeometryShadow_Equal(arg1,arg2);
21970       CPLErr eclass = CPLGetLastErrorType();
21971       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
21972         do_confess( CPLGetLastErrorMsg(), 0 );
21973 
21974 
21975 
21976 
21977 
21978       }
21979 
21980 
21981       /*
21982           Make warnings regular Perl warnings. This duplicates the warning
21983           message if DontUseExceptions() is in effect (it is not by default).
21984           */
21985       if ( eclass == CE_Warning ) {
21986         warn( CPLGetLastErrorMsg(), "%s" );
21987       }
21988 
21989 
21990     }
21991     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
21992 
21993 
21994     XSRETURN(argvi);
21995   fail:
21996 
21997 
21998     SWIG_croak_null();
21999   }
22000 }
22001 
22002 
XS(_wrap_Geometry_Disjoint)22003 XS(_wrap_Geometry_Disjoint) {
22004   {
22005     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
22006     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
22007     void *argp1 = 0 ;
22008     int res1 = 0 ;
22009     void *argp2 = 0 ;
22010     int res2 = 0 ;
22011     int argvi = 0;
22012     bool result;
22013     dXSARGS;
22014 
22015     if ((items < 2) || (items > 2)) {
22016       SWIG_croak("Usage: Geometry_Disjoint(self,other);");
22017     }
22018     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22019     if (!SWIG_IsOK(res1)) {
22020       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Disjoint" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
22021     }
22022     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
22023     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22024     if (!SWIG_IsOK(res2)) {
22025       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Disjoint" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
22026     }
22027     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
22028     {
22029       if (!arg2) {
22030         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
22031       }
22032     }
22033     {
22034       CPLErrorReset();
22035       result = (bool)OGRGeometryShadow_Disjoint(arg1,arg2);
22036       CPLErr eclass = CPLGetLastErrorType();
22037       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
22038         do_confess( CPLGetLastErrorMsg(), 0 );
22039 
22040 
22041 
22042 
22043 
22044       }
22045 
22046 
22047       /*
22048           Make warnings regular Perl warnings. This duplicates the warning
22049           message if DontUseExceptions() is in effect (it is not by default).
22050           */
22051       if ( eclass == CE_Warning ) {
22052         warn( CPLGetLastErrorMsg(), "%s" );
22053       }
22054 
22055 
22056     }
22057     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
22058 
22059 
22060     XSRETURN(argvi);
22061   fail:
22062 
22063 
22064     SWIG_croak_null();
22065   }
22066 }
22067 
22068 
XS(_wrap_Geometry_Touches)22069 XS(_wrap_Geometry_Touches) {
22070   {
22071     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
22072     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
22073     void *argp1 = 0 ;
22074     int res1 = 0 ;
22075     void *argp2 = 0 ;
22076     int res2 = 0 ;
22077     int argvi = 0;
22078     bool result;
22079     dXSARGS;
22080 
22081     if ((items < 2) || (items > 2)) {
22082       SWIG_croak("Usage: Geometry_Touches(self,other);");
22083     }
22084     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22085     if (!SWIG_IsOK(res1)) {
22086       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Touches" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
22087     }
22088     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
22089     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22090     if (!SWIG_IsOK(res2)) {
22091       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Touches" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
22092     }
22093     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
22094     {
22095       if (!arg2) {
22096         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
22097       }
22098     }
22099     {
22100       CPLErrorReset();
22101       result = (bool)OGRGeometryShadow_Touches(arg1,arg2);
22102       CPLErr eclass = CPLGetLastErrorType();
22103       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
22104         do_confess( CPLGetLastErrorMsg(), 0 );
22105 
22106 
22107 
22108 
22109 
22110       }
22111 
22112 
22113       /*
22114           Make warnings regular Perl warnings. This duplicates the warning
22115           message if DontUseExceptions() is in effect (it is not by default).
22116           */
22117       if ( eclass == CE_Warning ) {
22118         warn( CPLGetLastErrorMsg(), "%s" );
22119       }
22120 
22121 
22122     }
22123     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
22124 
22125 
22126     XSRETURN(argvi);
22127   fail:
22128 
22129 
22130     SWIG_croak_null();
22131   }
22132 }
22133 
22134 
XS(_wrap_Geometry_Crosses)22135 XS(_wrap_Geometry_Crosses) {
22136   {
22137     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
22138     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
22139     void *argp1 = 0 ;
22140     int res1 = 0 ;
22141     void *argp2 = 0 ;
22142     int res2 = 0 ;
22143     int argvi = 0;
22144     bool result;
22145     dXSARGS;
22146 
22147     if ((items < 2) || (items > 2)) {
22148       SWIG_croak("Usage: Geometry_Crosses(self,other);");
22149     }
22150     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22151     if (!SWIG_IsOK(res1)) {
22152       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Crosses" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
22153     }
22154     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
22155     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22156     if (!SWIG_IsOK(res2)) {
22157       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Crosses" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
22158     }
22159     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
22160     {
22161       if (!arg2) {
22162         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
22163       }
22164     }
22165     {
22166       CPLErrorReset();
22167       result = (bool)OGRGeometryShadow_Crosses(arg1,arg2);
22168       CPLErr eclass = CPLGetLastErrorType();
22169       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
22170         do_confess( CPLGetLastErrorMsg(), 0 );
22171 
22172 
22173 
22174 
22175 
22176       }
22177 
22178 
22179       /*
22180           Make warnings regular Perl warnings. This duplicates the warning
22181           message if DontUseExceptions() is in effect (it is not by default).
22182           */
22183       if ( eclass == CE_Warning ) {
22184         warn( CPLGetLastErrorMsg(), "%s" );
22185       }
22186 
22187 
22188     }
22189     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
22190 
22191 
22192     XSRETURN(argvi);
22193   fail:
22194 
22195 
22196     SWIG_croak_null();
22197   }
22198 }
22199 
22200 
XS(_wrap_Geometry_Within)22201 XS(_wrap_Geometry_Within) {
22202   {
22203     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
22204     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
22205     void *argp1 = 0 ;
22206     int res1 = 0 ;
22207     void *argp2 = 0 ;
22208     int res2 = 0 ;
22209     int argvi = 0;
22210     bool result;
22211     dXSARGS;
22212 
22213     if ((items < 2) || (items > 2)) {
22214       SWIG_croak("Usage: Geometry_Within(self,other);");
22215     }
22216     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22217     if (!SWIG_IsOK(res1)) {
22218       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Within" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
22219     }
22220     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
22221     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22222     if (!SWIG_IsOK(res2)) {
22223       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Within" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
22224     }
22225     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
22226     {
22227       if (!arg2) {
22228         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
22229       }
22230     }
22231     {
22232       CPLErrorReset();
22233       result = (bool)OGRGeometryShadow_Within(arg1,arg2);
22234       CPLErr eclass = CPLGetLastErrorType();
22235       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
22236         do_confess( CPLGetLastErrorMsg(), 0 );
22237 
22238 
22239 
22240 
22241 
22242       }
22243 
22244 
22245       /*
22246           Make warnings regular Perl warnings. This duplicates the warning
22247           message if DontUseExceptions() is in effect (it is not by default).
22248           */
22249       if ( eclass == CE_Warning ) {
22250         warn( CPLGetLastErrorMsg(), "%s" );
22251       }
22252 
22253 
22254     }
22255     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
22256 
22257 
22258     XSRETURN(argvi);
22259   fail:
22260 
22261 
22262     SWIG_croak_null();
22263   }
22264 }
22265 
22266 
XS(_wrap_Geometry_Contains)22267 XS(_wrap_Geometry_Contains) {
22268   {
22269     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
22270     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
22271     void *argp1 = 0 ;
22272     int res1 = 0 ;
22273     void *argp2 = 0 ;
22274     int res2 = 0 ;
22275     int argvi = 0;
22276     bool result;
22277     dXSARGS;
22278 
22279     if ((items < 2) || (items > 2)) {
22280       SWIG_croak("Usage: Geometry_Contains(self,other);");
22281     }
22282     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22283     if (!SWIG_IsOK(res1)) {
22284       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Contains" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
22285     }
22286     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
22287     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22288     if (!SWIG_IsOK(res2)) {
22289       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Contains" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
22290     }
22291     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
22292     {
22293       if (!arg2) {
22294         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
22295       }
22296     }
22297     {
22298       CPLErrorReset();
22299       result = (bool)OGRGeometryShadow_Contains(arg1,arg2);
22300       CPLErr eclass = CPLGetLastErrorType();
22301       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
22302         do_confess( CPLGetLastErrorMsg(), 0 );
22303 
22304 
22305 
22306 
22307 
22308       }
22309 
22310 
22311       /*
22312           Make warnings regular Perl warnings. This duplicates the warning
22313           message if DontUseExceptions() is in effect (it is not by default).
22314           */
22315       if ( eclass == CE_Warning ) {
22316         warn( CPLGetLastErrorMsg(), "%s" );
22317       }
22318 
22319 
22320     }
22321     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
22322 
22323 
22324     XSRETURN(argvi);
22325   fail:
22326 
22327 
22328     SWIG_croak_null();
22329   }
22330 }
22331 
22332 
XS(_wrap_Geometry_Overlaps)22333 XS(_wrap_Geometry_Overlaps) {
22334   {
22335     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
22336     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
22337     void *argp1 = 0 ;
22338     int res1 = 0 ;
22339     void *argp2 = 0 ;
22340     int res2 = 0 ;
22341     int argvi = 0;
22342     bool result;
22343     dXSARGS;
22344 
22345     if ((items < 2) || (items > 2)) {
22346       SWIG_croak("Usage: Geometry_Overlaps(self,other);");
22347     }
22348     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22349     if (!SWIG_IsOK(res1)) {
22350       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Overlaps" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
22351     }
22352     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
22353     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22354     if (!SWIG_IsOK(res2)) {
22355       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Overlaps" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
22356     }
22357     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
22358     {
22359       if (!arg2) {
22360         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
22361       }
22362     }
22363     {
22364       CPLErrorReset();
22365       result = (bool)OGRGeometryShadow_Overlaps(arg1,arg2);
22366       CPLErr eclass = CPLGetLastErrorType();
22367       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
22368         do_confess( CPLGetLastErrorMsg(), 0 );
22369 
22370 
22371 
22372 
22373 
22374       }
22375 
22376 
22377       /*
22378           Make warnings regular Perl warnings. This duplicates the warning
22379           message if DontUseExceptions() is in effect (it is not by default).
22380           */
22381       if ( eclass == CE_Warning ) {
22382         warn( CPLGetLastErrorMsg(), "%s" );
22383       }
22384 
22385 
22386     }
22387     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
22388 
22389 
22390     XSRETURN(argvi);
22391   fail:
22392 
22393 
22394     SWIG_croak_null();
22395   }
22396 }
22397 
22398 
XS(_wrap_Geometry_TransformTo)22399 XS(_wrap_Geometry_TransformTo) {
22400   {
22401     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
22402     OSRSpatialReferenceShadow *arg2 = (OSRSpatialReferenceShadow *) 0 ;
22403     void *argp1 = 0 ;
22404     int res1 = 0 ;
22405     void *argp2 = 0 ;
22406     int res2 = 0 ;
22407     int argvi = 0;
22408     OGRErr result;
22409     dXSARGS;
22410 
22411     if ((items < 2) || (items > 2)) {
22412       SWIG_croak("Usage: Geometry_TransformTo(self,reference);");
22413     }
22414     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22415     if (!SWIG_IsOK(res1)) {
22416       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_TransformTo" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
22417     }
22418     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
22419     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OSRSpatialReferenceShadow, 0 |  0 );
22420     if (!SWIG_IsOK(res2)) {
22421       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_TransformTo" "', argument " "2"" of type '" "OSRSpatialReferenceShadow *""'");
22422     }
22423     arg2 = reinterpret_cast< OSRSpatialReferenceShadow * >(argp2);
22424     {
22425       if (!arg2) {
22426         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
22427       }
22428     }
22429     {
22430       CPLErrorReset();
22431       result = (OGRErr)OGRGeometryShadow_TransformTo(arg1,arg2);
22432       CPLErr eclass = CPLGetLastErrorType();
22433       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
22434         do_confess( CPLGetLastErrorMsg(), 0 );
22435 
22436 
22437 
22438 
22439 
22440       }
22441 
22442 
22443       /*
22444           Make warnings regular Perl warnings. This duplicates the warning
22445           message if DontUseExceptions() is in effect (it is not by default).
22446           */
22447       if ( eclass == CE_Warning ) {
22448         warn( CPLGetLastErrorMsg(), "%s" );
22449       }
22450 
22451 
22452     }
22453     {
22454       /* %typemap(out) OGRErr */
22455       if ( result != 0 ) {
22456         const char *err = CPLGetLastErrorMsg();
22457         if (err and *err) do_confess(err, 0); /* this is usually better */
22458         do_confess( OGRErrMessages(result), 1 );
22459       }
22460     }
22461 
22462 
22463     XSRETURN(argvi);
22464   fail:
22465 
22466 
22467     SWIG_croak_null();
22468   }
22469 }
22470 
22471 
XS(_wrap_Geometry_Transform__SWIG_0)22472 XS(_wrap_Geometry_Transform__SWIG_0) {
22473   {
22474     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
22475     OSRCoordinateTransformationShadow *arg2 = (OSRCoordinateTransformationShadow *) 0 ;
22476     void *argp1 = 0 ;
22477     int res1 = 0 ;
22478     void *argp2 = 0 ;
22479     int res2 = 0 ;
22480     int argvi = 0;
22481     OGRErr result;
22482     dXSARGS;
22483 
22484     if ((items < 2) || (items > 2)) {
22485       SWIG_croak("Usage: Geometry_Transform(self,trans);");
22486     }
22487     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22488     if (!SWIG_IsOK(res1)) {
22489       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Transform" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
22490     }
22491     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
22492     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OSRCoordinateTransformationShadow, 0 |  0 );
22493     if (!SWIG_IsOK(res2)) {
22494       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Transform" "', argument " "2"" of type '" "OSRCoordinateTransformationShadow *""'");
22495     }
22496     arg2 = reinterpret_cast< OSRCoordinateTransformationShadow * >(argp2);
22497     {
22498       if (!arg2) {
22499         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
22500       }
22501     }
22502     {
22503       CPLErrorReset();
22504       result = (OGRErr)OGRGeometryShadow_Transform__SWIG_0(arg1,arg2);
22505       CPLErr eclass = CPLGetLastErrorType();
22506       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
22507         do_confess( CPLGetLastErrorMsg(), 0 );
22508 
22509 
22510 
22511 
22512 
22513       }
22514 
22515 
22516       /*
22517           Make warnings regular Perl warnings. This duplicates the warning
22518           message if DontUseExceptions() is in effect (it is not by default).
22519           */
22520       if ( eclass == CE_Warning ) {
22521         warn( CPLGetLastErrorMsg(), "%s" );
22522       }
22523 
22524 
22525     }
22526     {
22527       /* %typemap(out) OGRErr */
22528       if ( result != 0 ) {
22529         const char *err = CPLGetLastErrorMsg();
22530         if (err and *err) do_confess(err, 0); /* this is usually better */
22531         do_confess( OGRErrMessages(result), 1 );
22532       }
22533     }
22534 
22535 
22536     XSRETURN(argvi);
22537   fail:
22538 
22539 
22540     SWIG_croak_null();
22541   }
22542 }
22543 
22544 
XS(_wrap_Geometry_GetSpatialReference)22545 XS(_wrap_Geometry_GetSpatialReference) {
22546   {
22547     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
22548     void *argp1 = 0 ;
22549     int res1 = 0 ;
22550     int argvi = 0;
22551     OSRSpatialReferenceShadow *result = 0 ;
22552     dXSARGS;
22553 
22554     if ((items < 1) || (items > 1)) {
22555       SWIG_croak("Usage: Geometry_GetSpatialReference(self);");
22556     }
22557     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22558     if (!SWIG_IsOK(res1)) {
22559       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetSpatialReference" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
22560     }
22561     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
22562     {
22563       CPLErrorReset();
22564       result = (OSRSpatialReferenceShadow *)OGRGeometryShadow_GetSpatialReference(arg1);
22565       CPLErr eclass = CPLGetLastErrorType();
22566       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
22567         do_confess( CPLGetLastErrorMsg(), 0 );
22568 
22569 
22570 
22571 
22572 
22573       }
22574 
22575 
22576       /*
22577           Make warnings regular Perl warnings. This duplicates the warning
22578           message if DontUseExceptions() is in effect (it is not by default).
22579           */
22580       if ( eclass == CE_Warning ) {
22581         warn( CPLGetLastErrorMsg(), "%s" );
22582       }
22583 
22584 
22585     }
22586     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OSRSpatialReferenceShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
22587 
22588     XSRETURN(argvi);
22589   fail:
22590 
22591     SWIG_croak_null();
22592   }
22593 }
22594 
22595 
XS(_wrap_Geometry_AssignSpatialReference)22596 XS(_wrap_Geometry_AssignSpatialReference) {
22597   {
22598     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
22599     OSRSpatialReferenceShadow *arg2 = (OSRSpatialReferenceShadow *) 0 ;
22600     void *argp1 = 0 ;
22601     int res1 = 0 ;
22602     void *argp2 = 0 ;
22603     int res2 = 0 ;
22604     int argvi = 0;
22605     dXSARGS;
22606 
22607     if ((items < 2) || (items > 2)) {
22608       SWIG_croak("Usage: Geometry_AssignSpatialReference(self,reference);");
22609     }
22610     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22611     if (!SWIG_IsOK(res1)) {
22612       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_AssignSpatialReference" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
22613     }
22614     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
22615     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OSRSpatialReferenceShadow, 0 |  0 );
22616     if (!SWIG_IsOK(res2)) {
22617       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_AssignSpatialReference" "', argument " "2"" of type '" "OSRSpatialReferenceShadow *""'");
22618     }
22619     arg2 = reinterpret_cast< OSRSpatialReferenceShadow * >(argp2);
22620     {
22621       CPLErrorReset();
22622       OGRGeometryShadow_AssignSpatialReference(arg1,arg2);
22623       CPLErr eclass = CPLGetLastErrorType();
22624       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
22625         do_confess( CPLGetLastErrorMsg(), 0 );
22626 
22627 
22628 
22629 
22630 
22631       }
22632 
22633 
22634       /*
22635           Make warnings regular Perl warnings. This duplicates the warning
22636           message if DontUseExceptions() is in effect (it is not by default).
22637           */
22638       if ( eclass == CE_Warning ) {
22639         warn( CPLGetLastErrorMsg(), "%s" );
22640       }
22641 
22642 
22643     }
22644     {
22645       /* %typemap(out) void */
22646     }
22647 
22648 
22649     XSRETURN(argvi);
22650   fail:
22651 
22652 
22653     SWIG_croak_null();
22654   }
22655 }
22656 
22657 
XS(_wrap_Geometry_CloseRings)22658 XS(_wrap_Geometry_CloseRings) {
22659   {
22660     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
22661     void *argp1 = 0 ;
22662     int res1 = 0 ;
22663     int argvi = 0;
22664     dXSARGS;
22665 
22666     if ((items < 1) || (items > 1)) {
22667       SWIG_croak("Usage: Geometry_CloseRings(self);");
22668     }
22669     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22670     if (!SWIG_IsOK(res1)) {
22671       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_CloseRings" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
22672     }
22673     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
22674     {
22675       CPLErrorReset();
22676       OGRGeometryShadow_CloseRings(arg1);
22677       CPLErr eclass = CPLGetLastErrorType();
22678       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
22679         do_confess( CPLGetLastErrorMsg(), 0 );
22680 
22681 
22682 
22683 
22684 
22685       }
22686 
22687 
22688       /*
22689           Make warnings regular Perl warnings. This duplicates the warning
22690           message if DontUseExceptions() is in effect (it is not by default).
22691           */
22692       if ( eclass == CE_Warning ) {
22693         warn( CPLGetLastErrorMsg(), "%s" );
22694       }
22695 
22696 
22697     }
22698     {
22699       /* %typemap(out) void */
22700     }
22701 
22702     XSRETURN(argvi);
22703   fail:
22704 
22705     SWIG_croak_null();
22706   }
22707 }
22708 
22709 
XS(_wrap_Geometry_FlattenTo2D)22710 XS(_wrap_Geometry_FlattenTo2D) {
22711   {
22712     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
22713     void *argp1 = 0 ;
22714     int res1 = 0 ;
22715     int argvi = 0;
22716     dXSARGS;
22717 
22718     if ((items < 1) || (items > 1)) {
22719       SWIG_croak("Usage: Geometry_FlattenTo2D(self);");
22720     }
22721     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22722     if (!SWIG_IsOK(res1)) {
22723       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_FlattenTo2D" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
22724     }
22725     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
22726     {
22727       CPLErrorReset();
22728       OGRGeometryShadow_FlattenTo2D(arg1);
22729       CPLErr eclass = CPLGetLastErrorType();
22730       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
22731         do_confess( CPLGetLastErrorMsg(), 0 );
22732 
22733 
22734 
22735 
22736 
22737       }
22738 
22739 
22740       /*
22741           Make warnings regular Perl warnings. This duplicates the warning
22742           message if DontUseExceptions() is in effect (it is not by default).
22743           */
22744       if ( eclass == CE_Warning ) {
22745         warn( CPLGetLastErrorMsg(), "%s" );
22746       }
22747 
22748 
22749     }
22750     {
22751       /* %typemap(out) void */
22752     }
22753 
22754     XSRETURN(argvi);
22755   fail:
22756 
22757     SWIG_croak_null();
22758   }
22759 }
22760 
22761 
XS(_wrap_Geometry_Segmentize)22762 XS(_wrap_Geometry_Segmentize) {
22763   {
22764     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
22765     double arg2 ;
22766     void *argp1 = 0 ;
22767     int res1 = 0 ;
22768     double val2 ;
22769     int ecode2 = 0 ;
22770     int argvi = 0;
22771     dXSARGS;
22772 
22773     if ((items < 2) || (items > 2)) {
22774       SWIG_croak("Usage: Geometry_Segmentize(self,dfMaxLength);");
22775     }
22776     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22777     if (!SWIG_IsOK(res1)) {
22778       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Segmentize" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
22779     }
22780     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
22781     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
22782     if (!SWIG_IsOK(ecode2)) {
22783       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_Segmentize" "', argument " "2"" of type '" "double""'");
22784     }
22785     arg2 = static_cast< double >(val2);
22786     {
22787       CPLErrorReset();
22788       OGRGeometryShadow_Segmentize(arg1,arg2);
22789       CPLErr eclass = CPLGetLastErrorType();
22790       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
22791         do_confess( CPLGetLastErrorMsg(), 0 );
22792 
22793 
22794 
22795 
22796 
22797       }
22798 
22799 
22800       /*
22801           Make warnings regular Perl warnings. This duplicates the warning
22802           message if DontUseExceptions() is in effect (it is not by default).
22803           */
22804       if ( eclass == CE_Warning ) {
22805         warn( CPLGetLastErrorMsg(), "%s" );
22806       }
22807 
22808 
22809     }
22810     {
22811       /* %typemap(out) void */
22812     }
22813 
22814 
22815     XSRETURN(argvi);
22816   fail:
22817 
22818 
22819     SWIG_croak_null();
22820   }
22821 }
22822 
22823 
XS(_wrap_Geometry_GetEnvelope)22824 XS(_wrap_Geometry_GetEnvelope) {
22825   {
22826     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
22827     double *arg2 ;
22828     void *argp1 = 0 ;
22829     int res1 = 0 ;
22830     double argout2[4] ;
22831     int argvi = 0;
22832     dXSARGS;
22833 
22834     {
22835       /* %typemap(in,numinputs=0) (double argout2[ANY]) */
22836       arg2 = argout2;
22837     }
22838     if ((items < 1) || (items > 1)) {
22839       SWIG_croak("Usage: Geometry_GetEnvelope(self);");
22840     }
22841     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22842     if (!SWIG_IsOK(res1)) {
22843       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetEnvelope" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
22844     }
22845     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
22846     {
22847       CPLErrorReset();
22848       OGRGeometryShadow_GetEnvelope(arg1,arg2);
22849       CPLErr eclass = CPLGetLastErrorType();
22850       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
22851         do_confess( CPLGetLastErrorMsg(), 0 );
22852 
22853 
22854 
22855 
22856 
22857       }
22858 
22859 
22860       /*
22861           Make warnings regular Perl warnings. This duplicates the warning
22862           message if DontUseExceptions() is in effect (it is not by default).
22863           */
22864       if ( eclass == CE_Warning ) {
22865         warn( CPLGetLastErrorMsg(), "%s" );
22866       }
22867 
22868 
22869     }
22870     {
22871       /* %typemap(out) void */
22872     }
22873     {
22874       /* %typemap(argout) (double argout[ANY]) */
22875       if (GIMME_V == G_ARRAY) {
22876         /* return a list */
22877         int i;
22878         EXTEND(SP, argvi+4-items+1);
22879         for (i = 0; i < 4; i++)
22880         ST(argvi++) = sv_2mortal(newSVnv(arg2[i]));
22881       } else {
22882         ST(argvi) = CreateArrayFromDoubleArray( arg2, 4 );
22883         argvi++;
22884       }
22885     }
22886 
22887 
22888     XSRETURN(argvi);
22889   fail:
22890 
22891 
22892     SWIG_croak_null();
22893   }
22894 }
22895 
22896 
XS(_wrap_Geometry_GetEnvelope3D)22897 XS(_wrap_Geometry_GetEnvelope3D) {
22898   {
22899     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
22900     double *arg2 ;
22901     void *argp1 = 0 ;
22902     int res1 = 0 ;
22903     double argout2[6] ;
22904     int argvi = 0;
22905     dXSARGS;
22906 
22907     {
22908       /* %typemap(in,numinputs=0) (double argout2[ANY]) */
22909       arg2 = argout2;
22910     }
22911     if ((items < 1) || (items > 1)) {
22912       SWIG_croak("Usage: Geometry_GetEnvelope3D(self);");
22913     }
22914     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22915     if (!SWIG_IsOK(res1)) {
22916       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetEnvelope3D" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
22917     }
22918     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
22919     {
22920       CPLErrorReset();
22921       OGRGeometryShadow_GetEnvelope3D(arg1,arg2);
22922       CPLErr eclass = CPLGetLastErrorType();
22923       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
22924         do_confess( CPLGetLastErrorMsg(), 0 );
22925 
22926 
22927 
22928 
22929 
22930       }
22931 
22932 
22933       /*
22934           Make warnings regular Perl warnings. This duplicates the warning
22935           message if DontUseExceptions() is in effect (it is not by default).
22936           */
22937       if ( eclass == CE_Warning ) {
22938         warn( CPLGetLastErrorMsg(), "%s" );
22939       }
22940 
22941 
22942     }
22943     {
22944       /* %typemap(out) void */
22945     }
22946     {
22947       /* %typemap(argout) (double argout[ANY]) */
22948       if (GIMME_V == G_ARRAY) {
22949         /* return a list */
22950         int i;
22951         EXTEND(SP, argvi+6-items+1);
22952         for (i = 0; i < 6; i++)
22953         ST(argvi++) = sv_2mortal(newSVnv(arg2[i]));
22954       } else {
22955         ST(argvi) = CreateArrayFromDoubleArray( arg2, 6 );
22956         argvi++;
22957       }
22958     }
22959 
22960 
22961     XSRETURN(argvi);
22962   fail:
22963 
22964 
22965     SWIG_croak_null();
22966   }
22967 }
22968 
22969 
XS(_wrap_Geometry_Centroid)22970 XS(_wrap_Geometry_Centroid) {
22971   {
22972     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
22973     void *argp1 = 0 ;
22974     int res1 = 0 ;
22975     int argvi = 0;
22976     OGRGeometryShadow *result = 0 ;
22977     dXSARGS;
22978 
22979     if ((items < 1) || (items > 1)) {
22980       SWIG_croak("Usage: Geometry_Centroid(self);");
22981     }
22982     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
22983     if (!SWIG_IsOK(res1)) {
22984       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Centroid" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
22985     }
22986     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
22987     {
22988       CPLErrorReset();
22989       result = (OGRGeometryShadow *)OGRGeometryShadow_Centroid(arg1);
22990       CPLErr eclass = CPLGetLastErrorType();
22991       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
22992         do_confess( CPLGetLastErrorMsg(), 0 );
22993 
22994 
22995 
22996 
22997 
22998       }
22999 
23000 
23001       /*
23002           Make warnings regular Perl warnings. This duplicates the warning
23003           message if DontUseExceptions() is in effect (it is not by default).
23004           */
23005       if ( eclass == CE_Warning ) {
23006         warn( CPLGetLastErrorMsg(), "%s" );
23007       }
23008 
23009 
23010     }
23011     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
23012 
23013     XSRETURN(argvi);
23014   fail:
23015 
23016     SWIG_croak_null();
23017   }
23018 }
23019 
23020 
XS(_wrap_Geometry_PointOnSurface)23021 XS(_wrap_Geometry_PointOnSurface) {
23022   {
23023     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
23024     void *argp1 = 0 ;
23025     int res1 = 0 ;
23026     int argvi = 0;
23027     OGRGeometryShadow *result = 0 ;
23028     dXSARGS;
23029 
23030     if ((items < 1) || (items > 1)) {
23031       SWIG_croak("Usage: Geometry_PointOnSurface(self);");
23032     }
23033     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
23034     if (!SWIG_IsOK(res1)) {
23035       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_PointOnSurface" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
23036     }
23037     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
23038     {
23039       CPLErrorReset();
23040       result = (OGRGeometryShadow *)OGRGeometryShadow_PointOnSurface(arg1);
23041       CPLErr eclass = CPLGetLastErrorType();
23042       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
23043         do_confess( CPLGetLastErrorMsg(), 0 );
23044 
23045 
23046 
23047 
23048 
23049       }
23050 
23051 
23052       /*
23053           Make warnings regular Perl warnings. This duplicates the warning
23054           message if DontUseExceptions() is in effect (it is not by default).
23055           */
23056       if ( eclass == CE_Warning ) {
23057         warn( CPLGetLastErrorMsg(), "%s" );
23058       }
23059 
23060 
23061     }
23062     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
23063 
23064     XSRETURN(argvi);
23065   fail:
23066 
23067     SWIG_croak_null();
23068   }
23069 }
23070 
23071 
XS(_wrap_Geometry_WkbSize)23072 XS(_wrap_Geometry_WkbSize) {
23073   {
23074     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
23075     void *argp1 = 0 ;
23076     int res1 = 0 ;
23077     int argvi = 0;
23078     size_t result;
23079     dXSARGS;
23080 
23081     if ((items < 1) || (items > 1)) {
23082       SWIG_croak("Usage: Geometry_WkbSize(self);");
23083     }
23084     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
23085     if (!SWIG_IsOK(res1)) {
23086       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_WkbSize" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
23087     }
23088     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
23089     {
23090       CPLErrorReset();
23091       result = OGRGeometryShadow_WkbSize(arg1);
23092       CPLErr eclass = CPLGetLastErrorType();
23093       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
23094         do_confess( CPLGetLastErrorMsg(), 0 );
23095 
23096 
23097 
23098 
23099 
23100       }
23101 
23102 
23103       /*
23104           Make warnings regular Perl warnings. This duplicates the warning
23105           message if DontUseExceptions() is in effect (it is not by default).
23106           */
23107       if ( eclass == CE_Warning ) {
23108         warn( CPLGetLastErrorMsg(), "%s" );
23109       }
23110 
23111 
23112     }
23113     ST(argvi) = SWIG_From_size_t  SWIG_PERL_CALL_ARGS_1(static_cast< size_t >(result)); argvi++ ;
23114 
23115     XSRETURN(argvi);
23116   fail:
23117 
23118     SWIG_croak_null();
23119   }
23120 }
23121 
23122 
XS(_wrap_Geometry_GetCoordinateDimension)23123 XS(_wrap_Geometry_GetCoordinateDimension) {
23124   {
23125     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
23126     void *argp1 = 0 ;
23127     int res1 = 0 ;
23128     int argvi = 0;
23129     int result;
23130     dXSARGS;
23131 
23132     if ((items < 1) || (items > 1)) {
23133       SWIG_croak("Usage: Geometry_GetCoordinateDimension(self);");
23134     }
23135     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
23136     if (!SWIG_IsOK(res1)) {
23137       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetCoordinateDimension" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
23138     }
23139     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
23140     {
23141       CPLErrorReset();
23142       result = (int)OGRGeometryShadow_GetCoordinateDimension(arg1);
23143       CPLErr eclass = CPLGetLastErrorType();
23144       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
23145         do_confess( CPLGetLastErrorMsg(), 0 );
23146 
23147 
23148 
23149 
23150 
23151       }
23152 
23153 
23154       /*
23155           Make warnings regular Perl warnings. This duplicates the warning
23156           message if DontUseExceptions() is in effect (it is not by default).
23157           */
23158       if ( eclass == CE_Warning ) {
23159         warn( CPLGetLastErrorMsg(), "%s" );
23160       }
23161 
23162 
23163     }
23164     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23165 
23166     XSRETURN(argvi);
23167   fail:
23168 
23169     SWIG_croak_null();
23170   }
23171 }
23172 
23173 
XS(_wrap_Geometry_CoordinateDimension)23174 XS(_wrap_Geometry_CoordinateDimension) {
23175   {
23176     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
23177     void *argp1 = 0 ;
23178     int res1 = 0 ;
23179     int argvi = 0;
23180     int result;
23181     dXSARGS;
23182 
23183     if ((items < 1) || (items > 1)) {
23184       SWIG_croak("Usage: Geometry_CoordinateDimension(self);");
23185     }
23186     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
23187     if (!SWIG_IsOK(res1)) {
23188       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_CoordinateDimension" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
23189     }
23190     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
23191     {
23192       CPLErrorReset();
23193       result = (int)OGRGeometryShadow_CoordinateDimension(arg1);
23194       CPLErr eclass = CPLGetLastErrorType();
23195       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
23196         do_confess( CPLGetLastErrorMsg(), 0 );
23197 
23198 
23199 
23200 
23201 
23202       }
23203 
23204 
23205       /*
23206           Make warnings regular Perl warnings. This duplicates the warning
23207           message if DontUseExceptions() is in effect (it is not by default).
23208           */
23209       if ( eclass == CE_Warning ) {
23210         warn( CPLGetLastErrorMsg(), "%s" );
23211       }
23212 
23213 
23214     }
23215     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23216 
23217     XSRETURN(argvi);
23218   fail:
23219 
23220     SWIG_croak_null();
23221   }
23222 }
23223 
23224 
XS(_wrap_Geometry_Is3D)23225 XS(_wrap_Geometry_Is3D) {
23226   {
23227     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
23228     void *argp1 = 0 ;
23229     int res1 = 0 ;
23230     int argvi = 0;
23231     int result;
23232     dXSARGS;
23233 
23234     if ((items < 1) || (items > 1)) {
23235       SWIG_croak("Usage: Geometry_Is3D(self);");
23236     }
23237     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
23238     if (!SWIG_IsOK(res1)) {
23239       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Is3D" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
23240     }
23241     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
23242     {
23243       CPLErrorReset();
23244       result = (int)OGRGeometryShadow_Is3D(arg1);
23245       CPLErr eclass = CPLGetLastErrorType();
23246       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
23247         do_confess( CPLGetLastErrorMsg(), 0 );
23248 
23249 
23250 
23251 
23252 
23253       }
23254 
23255 
23256       /*
23257           Make warnings regular Perl warnings. This duplicates the warning
23258           message if DontUseExceptions() is in effect (it is not by default).
23259           */
23260       if ( eclass == CE_Warning ) {
23261         warn( CPLGetLastErrorMsg(), "%s" );
23262       }
23263 
23264 
23265     }
23266     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23267 
23268     XSRETURN(argvi);
23269   fail:
23270 
23271     SWIG_croak_null();
23272   }
23273 }
23274 
23275 
XS(_wrap_Geometry_IsMeasured)23276 XS(_wrap_Geometry_IsMeasured) {
23277   {
23278     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
23279     void *argp1 = 0 ;
23280     int res1 = 0 ;
23281     int argvi = 0;
23282     int result;
23283     dXSARGS;
23284 
23285     if ((items < 1) || (items > 1)) {
23286       SWIG_croak("Usage: Geometry_IsMeasured(self);");
23287     }
23288     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
23289     if (!SWIG_IsOK(res1)) {
23290       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_IsMeasured" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
23291     }
23292     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
23293     {
23294       CPLErrorReset();
23295       result = (int)OGRGeometryShadow_IsMeasured(arg1);
23296       CPLErr eclass = CPLGetLastErrorType();
23297       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
23298         do_confess( CPLGetLastErrorMsg(), 0 );
23299 
23300 
23301 
23302 
23303 
23304       }
23305 
23306 
23307       /*
23308           Make warnings regular Perl warnings. This duplicates the warning
23309           message if DontUseExceptions() is in effect (it is not by default).
23310           */
23311       if ( eclass == CE_Warning ) {
23312         warn( CPLGetLastErrorMsg(), "%s" );
23313       }
23314 
23315 
23316     }
23317     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23318 
23319     XSRETURN(argvi);
23320   fail:
23321 
23322     SWIG_croak_null();
23323   }
23324 }
23325 
23326 
XS(_wrap_Geometry_SetCoordinateDimension)23327 XS(_wrap_Geometry_SetCoordinateDimension) {
23328   {
23329     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
23330     int arg2 ;
23331     void *argp1 = 0 ;
23332     int res1 = 0 ;
23333     int val2 ;
23334     int ecode2 = 0 ;
23335     int argvi = 0;
23336     dXSARGS;
23337 
23338     if ((items < 2) || (items > 2)) {
23339       SWIG_croak("Usage: Geometry_SetCoordinateDimension(self,dimension);");
23340     }
23341     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
23342     if (!SWIG_IsOK(res1)) {
23343       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_SetCoordinateDimension" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
23344     }
23345     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
23346     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
23347     if (!SWIG_IsOK(ecode2)) {
23348       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_SetCoordinateDimension" "', argument " "2"" of type '" "int""'");
23349     }
23350     arg2 = static_cast< int >(val2);
23351     {
23352       CPLErrorReset();
23353       OGRGeometryShadow_SetCoordinateDimension(arg1,arg2);
23354       CPLErr eclass = CPLGetLastErrorType();
23355       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
23356         do_confess( CPLGetLastErrorMsg(), 0 );
23357 
23358 
23359 
23360 
23361 
23362       }
23363 
23364 
23365       /*
23366           Make warnings regular Perl warnings. This duplicates the warning
23367           message if DontUseExceptions() is in effect (it is not by default).
23368           */
23369       if ( eclass == CE_Warning ) {
23370         warn( CPLGetLastErrorMsg(), "%s" );
23371       }
23372 
23373 
23374     }
23375     {
23376       /* %typemap(out) void */
23377     }
23378 
23379 
23380     XSRETURN(argvi);
23381   fail:
23382 
23383 
23384     SWIG_croak_null();
23385   }
23386 }
23387 
23388 
XS(_wrap_Geometry_Set3D)23389 XS(_wrap_Geometry_Set3D) {
23390   {
23391     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
23392     int arg2 ;
23393     void *argp1 = 0 ;
23394     int res1 = 0 ;
23395     int val2 ;
23396     int ecode2 = 0 ;
23397     int argvi = 0;
23398     dXSARGS;
23399 
23400     if ((items < 2) || (items > 2)) {
23401       SWIG_croak("Usage: Geometry_Set3D(self,b3D);");
23402     }
23403     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
23404     if (!SWIG_IsOK(res1)) {
23405       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Set3D" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
23406     }
23407     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
23408     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
23409     if (!SWIG_IsOK(ecode2)) {
23410       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_Set3D" "', argument " "2"" of type '" "int""'");
23411     }
23412     arg2 = static_cast< int >(val2);
23413     {
23414       CPLErrorReset();
23415       OGRGeometryShadow_Set3D(arg1,arg2);
23416       CPLErr eclass = CPLGetLastErrorType();
23417       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
23418         do_confess( CPLGetLastErrorMsg(), 0 );
23419 
23420 
23421 
23422 
23423 
23424       }
23425 
23426 
23427       /*
23428           Make warnings regular Perl warnings. This duplicates the warning
23429           message if DontUseExceptions() is in effect (it is not by default).
23430           */
23431       if ( eclass == CE_Warning ) {
23432         warn( CPLGetLastErrorMsg(), "%s" );
23433       }
23434 
23435 
23436     }
23437     {
23438       /* %typemap(out) void */
23439     }
23440 
23441 
23442     XSRETURN(argvi);
23443   fail:
23444 
23445 
23446     SWIG_croak_null();
23447   }
23448 }
23449 
23450 
XS(_wrap_Geometry_SetMeasured)23451 XS(_wrap_Geometry_SetMeasured) {
23452   {
23453     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
23454     int arg2 ;
23455     void *argp1 = 0 ;
23456     int res1 = 0 ;
23457     int val2 ;
23458     int ecode2 = 0 ;
23459     int argvi = 0;
23460     dXSARGS;
23461 
23462     if ((items < 2) || (items > 2)) {
23463       SWIG_croak("Usage: Geometry_SetMeasured(self,bMeasured);");
23464     }
23465     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
23466     if (!SWIG_IsOK(res1)) {
23467       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_SetMeasured" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
23468     }
23469     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
23470     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
23471     if (!SWIG_IsOK(ecode2)) {
23472       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_SetMeasured" "', argument " "2"" of type '" "int""'");
23473     }
23474     arg2 = static_cast< int >(val2);
23475     {
23476       CPLErrorReset();
23477       OGRGeometryShadow_SetMeasured(arg1,arg2);
23478       CPLErr eclass = CPLGetLastErrorType();
23479       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
23480         do_confess( CPLGetLastErrorMsg(), 0 );
23481 
23482 
23483 
23484 
23485 
23486       }
23487 
23488 
23489       /*
23490           Make warnings regular Perl warnings. This duplicates the warning
23491           message if DontUseExceptions() is in effect (it is not by default).
23492           */
23493       if ( eclass == CE_Warning ) {
23494         warn( CPLGetLastErrorMsg(), "%s" );
23495       }
23496 
23497 
23498     }
23499     {
23500       /* %typemap(out) void */
23501     }
23502 
23503 
23504     XSRETURN(argvi);
23505   fail:
23506 
23507 
23508     SWIG_croak_null();
23509   }
23510 }
23511 
23512 
XS(_wrap_Geometry_GetDimension)23513 XS(_wrap_Geometry_GetDimension) {
23514   {
23515     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
23516     void *argp1 = 0 ;
23517     int res1 = 0 ;
23518     int argvi = 0;
23519     int result;
23520     dXSARGS;
23521 
23522     if ((items < 1) || (items > 1)) {
23523       SWIG_croak("Usage: Geometry_GetDimension(self);");
23524     }
23525     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
23526     if (!SWIG_IsOK(res1)) {
23527       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetDimension" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
23528     }
23529     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
23530     {
23531       CPLErrorReset();
23532       result = (int)OGRGeometryShadow_GetDimension(arg1);
23533       CPLErr eclass = CPLGetLastErrorType();
23534       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
23535         do_confess( CPLGetLastErrorMsg(), 0 );
23536 
23537 
23538 
23539 
23540 
23541       }
23542 
23543 
23544       /*
23545           Make warnings regular Perl warnings. This duplicates the warning
23546           message if DontUseExceptions() is in effect (it is not by default).
23547           */
23548       if ( eclass == CE_Warning ) {
23549         warn( CPLGetLastErrorMsg(), "%s" );
23550       }
23551 
23552 
23553     }
23554     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23555 
23556     XSRETURN(argvi);
23557   fail:
23558 
23559     SWIG_croak_null();
23560   }
23561 }
23562 
23563 
XS(_wrap_Geometry_HasCurveGeometry)23564 XS(_wrap_Geometry_HasCurveGeometry) {
23565   {
23566     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
23567     int arg2 = (int) FALSE ;
23568     void *argp1 = 0 ;
23569     int res1 = 0 ;
23570     int val2 ;
23571     int ecode2 = 0 ;
23572     int argvi = 0;
23573     int result;
23574     dXSARGS;
23575 
23576     if ((items < 1) || (items > 2)) {
23577       SWIG_croak("Usage: Geometry_HasCurveGeometry(self,bLookForCircular);");
23578     }
23579     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
23580     if (!SWIG_IsOK(res1)) {
23581       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_HasCurveGeometry" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
23582     }
23583     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
23584     if (items > 1) {
23585       ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
23586       if (!SWIG_IsOK(ecode2)) {
23587         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_HasCurveGeometry" "', argument " "2"" of type '" "int""'");
23588       }
23589       arg2 = static_cast< int >(val2);
23590     }
23591     {
23592       CPLErrorReset();
23593       result = (int)OGRGeometryShadow_HasCurveGeometry(arg1,arg2);
23594       CPLErr eclass = CPLGetLastErrorType();
23595       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
23596         do_confess( CPLGetLastErrorMsg(), 0 );
23597 
23598 
23599 
23600 
23601 
23602       }
23603 
23604 
23605       /*
23606           Make warnings regular Perl warnings. This duplicates the warning
23607           message if DontUseExceptions() is in effect (it is not by default).
23608           */
23609       if ( eclass == CE_Warning ) {
23610         warn( CPLGetLastErrorMsg(), "%s" );
23611       }
23612 
23613 
23614     }
23615     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23616 
23617 
23618     XSRETURN(argvi);
23619   fail:
23620 
23621 
23622     SWIG_croak_null();
23623   }
23624 }
23625 
23626 
XS(_wrap_Geometry_GetLinearGeometry)23627 XS(_wrap_Geometry_GetLinearGeometry) {
23628   {
23629     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
23630     double arg2 = (double) 0.0 ;
23631     char **arg3 = (char **) NULL ;
23632     void *argp1 = 0 ;
23633     int res1 = 0 ;
23634     double val2 ;
23635     int ecode2 = 0 ;
23636     int argvi = 0;
23637     OGRGeometryShadow *result = 0 ;
23638     dXSARGS;
23639 
23640     if ((items < 1) || (items > 3)) {
23641       SWIG_croak("Usage: Geometry_GetLinearGeometry(self,dfMaxAngleStepSizeDegrees,options);");
23642     }
23643     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
23644     if (!SWIG_IsOK(res1)) {
23645       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetLinearGeometry" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
23646     }
23647     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
23648     if (items > 1) {
23649       ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
23650       if (!SWIG_IsOK(ecode2)) {
23651         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_GetLinearGeometry" "', argument " "2"" of type '" "double""'");
23652       }
23653       arg2 = static_cast< double >(val2);
23654     }
23655     if (items > 2) {
23656       {
23657         /* %typemap(in) char **options */
23658         if (SvOK(ST(2))) {
23659           if (SvROK(ST(2))) {
23660             if (SvTYPE(SvRV(ST(2)))==SVt_PVAV) {
23661               AV *av = (AV*)(SvRV(ST(2)));
23662               for (int i = 0; i < av_len(av)+1; i++) {
23663                 SV *sv = *(av_fetch(av, i, 0));
23664                 bool sf;
23665                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
23666                 arg3 = CSLAddString(arg3, tmp);
23667                 if (sf) Safefree(tmp); else free(tmp);
23668               }
23669             } else if (SvTYPE(SvRV(ST(2)))==SVt_PVHV) {
23670               HV *hv = (HV*)SvRV(ST(2));
23671               SV *sv;
23672               char *key;
23673               I32 klen;
23674               arg3 = NULL;
23675               hv_iterinit(hv);
23676               while(sv = hv_iternextsv(hv, &key, &klen)) {
23677                 bool sf;
23678                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
23679                 arg3 = CSLAddNameValue(arg3, key, tmp);
23680                 if (sf) Safefree(tmp); else free(tmp);
23681               }
23682             } else
23683             do_confess(NEED_REF, 1);
23684           } else
23685           do_confess(NEED_REF, 1);
23686         }
23687       }
23688     }
23689     {
23690       CPLErrorReset();
23691       result = (OGRGeometryShadow *)OGRGeometryShadow_GetLinearGeometry(arg1,arg2,arg3);
23692       CPLErr eclass = CPLGetLastErrorType();
23693       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
23694         do_confess( CPLGetLastErrorMsg(), 0 );
23695 
23696 
23697 
23698 
23699 
23700       }
23701 
23702 
23703       /*
23704           Make warnings regular Perl warnings. This duplicates the warning
23705           message if DontUseExceptions() is in effect (it is not by default).
23706           */
23707       if ( eclass == CE_Warning ) {
23708         warn( CPLGetLastErrorMsg(), "%s" );
23709       }
23710 
23711 
23712     }
23713     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
23714 
23715 
23716     {
23717       /* %typemap(freearg) char **options */
23718       if (arg3) CSLDestroy( arg3 );
23719     }
23720     XSRETURN(argvi);
23721   fail:
23722 
23723 
23724     {
23725       /* %typemap(freearg) char **options */
23726       if (arg3) CSLDestroy( arg3 );
23727     }
23728     SWIG_croak_null();
23729   }
23730 }
23731 
23732 
XS(_wrap_Geometry_GetCurveGeometry)23733 XS(_wrap_Geometry_GetCurveGeometry) {
23734   {
23735     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
23736     char **arg2 = (char **) NULL ;
23737     void *argp1 = 0 ;
23738     int res1 = 0 ;
23739     int argvi = 0;
23740     OGRGeometryShadow *result = 0 ;
23741     dXSARGS;
23742 
23743     if ((items < 1) || (items > 2)) {
23744       SWIG_croak("Usage: Geometry_GetCurveGeometry(self,options);");
23745     }
23746     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
23747     if (!SWIG_IsOK(res1)) {
23748       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_GetCurveGeometry" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
23749     }
23750     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
23751     if (items > 1) {
23752       {
23753         /* %typemap(in) char **options */
23754         if (SvOK(ST(1))) {
23755           if (SvROK(ST(1))) {
23756             if (SvTYPE(SvRV(ST(1)))==SVt_PVAV) {
23757               AV *av = (AV*)(SvRV(ST(1)));
23758               for (int i = 0; i < av_len(av)+1; i++) {
23759                 SV *sv = *(av_fetch(av, i, 0));
23760                 bool sf;
23761                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
23762                 arg2 = CSLAddString(arg2, tmp);
23763                 if (sf) Safefree(tmp); else free(tmp);
23764               }
23765             } else if (SvTYPE(SvRV(ST(1)))==SVt_PVHV) {
23766               HV *hv = (HV*)SvRV(ST(1));
23767               SV *sv;
23768               char *key;
23769               I32 klen;
23770               arg2 = NULL;
23771               hv_iterinit(hv);
23772               while(sv = hv_iternextsv(hv, &key, &klen)) {
23773                 bool sf;
23774                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
23775                 arg2 = CSLAddNameValue(arg2, key, tmp);
23776                 if (sf) Safefree(tmp); else free(tmp);
23777               }
23778             } else
23779             do_confess(NEED_REF, 1);
23780           } else
23781           do_confess(NEED_REF, 1);
23782         }
23783       }
23784     }
23785     {
23786       CPLErrorReset();
23787       result = (OGRGeometryShadow *)OGRGeometryShadow_GetCurveGeometry(arg1,arg2);
23788       CPLErr eclass = CPLGetLastErrorType();
23789       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
23790         do_confess( CPLGetLastErrorMsg(), 0 );
23791 
23792 
23793 
23794 
23795 
23796       }
23797 
23798 
23799       /*
23800           Make warnings regular Perl warnings. This duplicates the warning
23801           message if DontUseExceptions() is in effect (it is not by default).
23802           */
23803       if ( eclass == CE_Warning ) {
23804         warn( CPLGetLastErrorMsg(), "%s" );
23805       }
23806 
23807 
23808     }
23809     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
23810 
23811     {
23812       /* %typemap(freearg) char **options */
23813       if (arg2) CSLDestroy( arg2 );
23814     }
23815     XSRETURN(argvi);
23816   fail:
23817 
23818     {
23819       /* %typemap(freearg) char **options */
23820       if (arg2) CSLDestroy( arg2 );
23821     }
23822     SWIG_croak_null();
23823   }
23824 }
23825 
23826 
XS(_wrap_Geometry_Value)23827 XS(_wrap_Geometry_Value) {
23828   {
23829     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
23830     double arg2 ;
23831     void *argp1 = 0 ;
23832     int res1 = 0 ;
23833     double val2 ;
23834     int ecode2 = 0 ;
23835     int argvi = 0;
23836     OGRGeometryShadow *result = 0 ;
23837     dXSARGS;
23838 
23839     if ((items < 2) || (items > 2)) {
23840       SWIG_croak("Usage: Geometry_Value(self,dfDistance);");
23841     }
23842     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
23843     if (!SWIG_IsOK(res1)) {
23844       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Value" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
23845     }
23846     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
23847     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
23848     if (!SWIG_IsOK(ecode2)) {
23849       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_Value" "', argument " "2"" of type '" "double""'");
23850     }
23851     arg2 = static_cast< double >(val2);
23852     {
23853       CPLErrorReset();
23854       result = (OGRGeometryShadow *)OGRGeometryShadow_Value(arg1,arg2);
23855       CPLErr eclass = CPLGetLastErrorType();
23856       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
23857         do_confess( CPLGetLastErrorMsg(), 0 );
23858 
23859 
23860 
23861 
23862 
23863       }
23864 
23865 
23866       /*
23867           Make warnings regular Perl warnings. This duplicates the warning
23868           message if DontUseExceptions() is in effect (it is not by default).
23869           */
23870       if ( eclass == CE_Warning ) {
23871         warn( CPLGetLastErrorMsg(), "%s" );
23872       }
23873 
23874 
23875     }
23876     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
23877 
23878 
23879     XSRETURN(argvi);
23880   fail:
23881 
23882 
23883     SWIG_croak_null();
23884   }
23885 }
23886 
23887 
XS(_wrap_Geometry_Transform__SWIG_1)23888 XS(_wrap_Geometry_Transform__SWIG_1) {
23889   {
23890     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
23891     OGRGeomTransformerShadow *arg2 = (OGRGeomTransformerShadow *) 0 ;
23892     void *argp1 = 0 ;
23893     int res1 = 0 ;
23894     void *argp2 = 0 ;
23895     int res2 = 0 ;
23896     int argvi = 0;
23897     OGRGeometryShadow *result = 0 ;
23898     dXSARGS;
23899 
23900     if ((items < 2) || (items > 2)) {
23901       SWIG_croak("Usage: Geometry_Transform(self,transformer);");
23902     }
23903     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
23904     if (!SWIG_IsOK(res1)) {
23905       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Transform" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
23906     }
23907     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
23908     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeomTransformerShadow, 0 |  0 );
23909     if (!SWIG_IsOK(res2)) {
23910       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Geometry_Transform" "', argument " "2"" of type '" "OGRGeomTransformerShadow *""'");
23911     }
23912     arg2 = reinterpret_cast< OGRGeomTransformerShadow * >(argp2);
23913     {
23914       if (!arg2) {
23915         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
23916       }
23917     }
23918     {
23919       CPLErrorReset();
23920       result = (OGRGeometryShadow *)OGRGeometryShadow_Transform__SWIG_1(arg1,arg2);
23921       CPLErr eclass = CPLGetLastErrorType();
23922       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
23923         do_confess( CPLGetLastErrorMsg(), 0 );
23924 
23925 
23926 
23927 
23928 
23929       }
23930 
23931 
23932       /*
23933           Make warnings regular Perl warnings. This duplicates the warning
23934           message if DontUseExceptions() is in effect (it is not by default).
23935           */
23936       if ( eclass == CE_Warning ) {
23937         warn( CPLGetLastErrorMsg(), "%s" );
23938       }
23939 
23940 
23941     }
23942     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
23943 
23944 
23945     XSRETURN(argvi);
23946   fail:
23947 
23948 
23949     SWIG_croak_null();
23950   }
23951 }
23952 
23953 
XS(_wrap_Geometry_Transform)23954 XS(_wrap_Geometry_Transform) {
23955   dXSARGS;
23956 
23957   {
23958     unsigned long _index = 0;
23959     SWIG_TypeRank _rank = 0;
23960     if (items == 2) {
23961       SWIG_TypeRank _ranki = 0;
23962       SWIG_TypeRank _rankm = 0;
23963       SWIG_TypeRank _pi = 1;
23964       int _v = 0;
23965       {
23966         void *vptr = 0;
23967         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_OGRGeometryShadow, 0);
23968         _v = SWIG_CheckState(res);
23969       }
23970       if (!_v) goto check_1;
23971       _ranki += _v*_pi;
23972       _rankm += _pi;
23973       _pi *= SWIG_MAXCASTRANK;
23974       {
23975         void *vptr = 0;
23976         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_OSRCoordinateTransformationShadow, 0);
23977         _v = SWIG_CheckState(res);
23978       }
23979       if (!_v) goto check_1;
23980       _ranki += _v*_pi;
23981       _rankm += _pi;
23982       _pi *= SWIG_MAXCASTRANK;
23983       if (!_index || (_ranki < _rank)) {
23984         _rank = _ranki; _index = 1;
23985         if (_rank == _rankm) goto dispatch;
23986       }
23987     }
23988   check_1:
23989 
23990     if (items == 2) {
23991       SWIG_TypeRank _ranki = 0;
23992       SWIG_TypeRank _rankm = 0;
23993       SWIG_TypeRank _pi = 1;
23994       int _v = 0;
23995       {
23996         void *vptr = 0;
23997         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_OGRGeometryShadow, 0);
23998         _v = SWIG_CheckState(res);
23999       }
24000       if (!_v) goto check_2;
24001       _ranki += _v*_pi;
24002       _rankm += _pi;
24003       _pi *= SWIG_MAXCASTRANK;
24004       {
24005         void *vptr = 0;
24006         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_OGRGeomTransformerShadow, 0);
24007         _v = SWIG_CheckState(res);
24008       }
24009       if (!_v) goto check_2;
24010       _ranki += _v*_pi;
24011       _rankm += _pi;
24012       _pi *= SWIG_MAXCASTRANK;
24013       if (!_index || (_ranki < _rank)) {
24014         _rank = _ranki; _index = 2;
24015         if (_rank == _rankm) goto dispatch;
24016       }
24017     }
24018   check_2:
24019 
24020   dispatch:
24021     switch(_index) {
24022     case 1:
24023       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Geometry_Transform__SWIG_0); return;
24024     case 2:
24025       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Geometry_Transform__SWIG_1); return;
24026     }
24027   }
24028 
24029   croak("No matching function for overloaded 'Geometry_Transform'");
24030   XSRETURN(0);
24031 }
24032 
24033 
XS(_wrap_Geometry_CreatePreparedGeometry)24034 XS(_wrap_Geometry_CreatePreparedGeometry) {
24035   {
24036     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
24037     void *argp1 = 0 ;
24038     int res1 = 0 ;
24039     int argvi = 0;
24040     OGRPreparedGeometryShadow *result = 0 ;
24041     dXSARGS;
24042 
24043     if ((items < 1) || (items > 1)) {
24044       SWIG_croak("Usage: Geometry_CreatePreparedGeometry(self);");
24045     }
24046     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
24047     if (!SWIG_IsOK(res1)) {
24048       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_CreatePreparedGeometry" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
24049     }
24050     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
24051     {
24052       CPLErrorReset();
24053       result = (OGRPreparedGeometryShadow *)OGRGeometryShadow_CreatePreparedGeometry(arg1);
24054       CPLErr eclass = CPLGetLastErrorType();
24055       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
24056         do_confess( CPLGetLastErrorMsg(), 0 );
24057 
24058 
24059 
24060 
24061 
24062       }
24063 
24064 
24065       /*
24066           Make warnings regular Perl warnings. This duplicates the warning
24067           message if DontUseExceptions() is in effect (it is not by default).
24068           */
24069       if ( eclass == CE_Warning ) {
24070         warn( CPLGetLastErrorMsg(), "%s" );
24071       }
24072 
24073 
24074     }
24075     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRPreparedGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
24076 
24077     XSRETURN(argvi);
24078   fail:
24079 
24080     SWIG_croak_null();
24081   }
24082 }
24083 
24084 
XS(_wrap_Geometry_Move)24085 XS(_wrap_Geometry_Move) {
24086   {
24087     OGRGeometryShadow *arg1 = (OGRGeometryShadow *) 0 ;
24088     double arg2 ;
24089     double arg3 ;
24090     double arg4 = (double) 0 ;
24091     void *argp1 = 0 ;
24092     int res1 = 0 ;
24093     double val2 ;
24094     int ecode2 = 0 ;
24095     double val3 ;
24096     int ecode3 = 0 ;
24097     double val4 ;
24098     int ecode4 = 0 ;
24099     int argvi = 0;
24100     dXSARGS;
24101 
24102     if ((items < 3) || (items > 4)) {
24103       SWIG_croak("Usage: Geometry_Move(self,dx,dy,dz);");
24104     }
24105     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
24106     if (!SWIG_IsOK(res1)) {
24107       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Geometry_Move" "', argument " "1"" of type '" "OGRGeometryShadow *""'");
24108     }
24109     arg1 = reinterpret_cast< OGRGeometryShadow * >(argp1);
24110     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24111     if (!SWIG_IsOK(ecode2)) {
24112       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Geometry_Move" "', argument " "2"" of type '" "double""'");
24113     }
24114     arg2 = static_cast< double >(val2);
24115     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
24116     if (!SWIG_IsOK(ecode3)) {
24117       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Geometry_Move" "', argument " "3"" of type '" "double""'");
24118     }
24119     arg3 = static_cast< double >(val3);
24120     if (items > 3) {
24121       ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
24122       if (!SWIG_IsOK(ecode4)) {
24123         SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "Geometry_Move" "', argument " "4"" of type '" "double""'");
24124       }
24125       arg4 = static_cast< double >(val4);
24126     }
24127     {
24128       CPLErrorReset();
24129       OGRGeometryShadow_Move(arg1,arg2,arg3,arg4);
24130       CPLErr eclass = CPLGetLastErrorType();
24131       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
24132         do_confess( CPLGetLastErrorMsg(), 0 );
24133 
24134 
24135 
24136 
24137 
24138       }
24139 
24140 
24141       /*
24142           Make warnings regular Perl warnings. This duplicates the warning
24143           message if DontUseExceptions() is in effect (it is not by default).
24144           */
24145       if ( eclass == CE_Warning ) {
24146         warn( CPLGetLastErrorMsg(), "%s" );
24147       }
24148 
24149 
24150     }
24151     {
24152       /* %typemap(out) void */
24153     }
24154 
24155 
24156 
24157 
24158     XSRETURN(argvi);
24159   fail:
24160 
24161 
24162 
24163 
24164     SWIG_croak_null();
24165   }
24166 }
24167 
24168 
XS(_wrap_delete_PreparedGeometry)24169 XS(_wrap_delete_PreparedGeometry) {
24170   {
24171     OGRPreparedGeometryShadow *arg1 = (OGRPreparedGeometryShadow *) 0 ;
24172     void *argp1 = 0 ;
24173     int res1 = 0 ;
24174     int argvi = 0;
24175     dXSARGS;
24176 
24177     if ((items < 1) || (items > 1)) {
24178       SWIG_croak("Usage: delete_PreparedGeometry(self);");
24179     }
24180     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRPreparedGeometryShadow, SWIG_POINTER_DISOWN |  0 );
24181     if (!SWIG_IsOK(res1)) {
24182       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_PreparedGeometry" "', argument " "1"" of type '" "OGRPreparedGeometryShadow *""'");
24183     }
24184     arg1 = reinterpret_cast< OGRPreparedGeometryShadow * >(argp1);
24185     {
24186       CPLErrorReset();
24187       delete_OGRPreparedGeometryShadow(arg1);
24188       CPLErr eclass = CPLGetLastErrorType();
24189       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
24190         do_confess( CPLGetLastErrorMsg(), 0 );
24191 
24192 
24193 
24194 
24195 
24196       }
24197 
24198 
24199       /*
24200           Make warnings regular Perl warnings. This duplicates the warning
24201           message if DontUseExceptions() is in effect (it is not by default).
24202           */
24203       if ( eclass == CE_Warning ) {
24204         warn( CPLGetLastErrorMsg(), "%s" );
24205       }
24206 
24207 
24208     }
24209     {
24210       /* %typemap(out) void */
24211     }
24212 
24213     XSRETURN(argvi);
24214   fail:
24215 
24216     SWIG_croak_null();
24217   }
24218 }
24219 
24220 
XS(_wrap_PreparedGeometry_Intersects)24221 XS(_wrap_PreparedGeometry_Intersects) {
24222   {
24223     OGRPreparedGeometryShadow *arg1 = (OGRPreparedGeometryShadow *) 0 ;
24224     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
24225     void *argp1 = 0 ;
24226     int res1 = 0 ;
24227     void *argp2 = 0 ;
24228     int res2 = 0 ;
24229     int argvi = 0;
24230     bool result;
24231     dXSARGS;
24232 
24233     if ((items < 2) || (items > 2)) {
24234       SWIG_croak("Usage: PreparedGeometry_Intersects(self,otherGeom);");
24235     }
24236     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRPreparedGeometryShadow, 0 |  0 );
24237     if (!SWIG_IsOK(res1)) {
24238       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PreparedGeometry_Intersects" "', argument " "1"" of type '" "OGRPreparedGeometryShadow *""'");
24239     }
24240     arg1 = reinterpret_cast< OGRPreparedGeometryShadow * >(argp1);
24241     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
24242     if (!SWIG_IsOK(res2)) {
24243       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "PreparedGeometry_Intersects" "', argument " "2"" of type '" "OGRGeometryShadow const *""'");
24244     }
24245     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
24246     {
24247       if (!arg2) {
24248         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
24249       }
24250     }
24251     {
24252       CPLErrorReset();
24253       result = (bool)OGRPreparedGeometryShadow_Intersects(arg1,(OGRGeometryShadow const *)arg2);
24254       CPLErr eclass = CPLGetLastErrorType();
24255       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
24256         do_confess( CPLGetLastErrorMsg(), 0 );
24257 
24258 
24259 
24260 
24261 
24262       }
24263 
24264 
24265       /*
24266           Make warnings regular Perl warnings. This duplicates the warning
24267           message if DontUseExceptions() is in effect (it is not by default).
24268           */
24269       if ( eclass == CE_Warning ) {
24270         warn( CPLGetLastErrorMsg(), "%s" );
24271       }
24272 
24273 
24274     }
24275     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
24276 
24277 
24278     XSRETURN(argvi);
24279   fail:
24280 
24281 
24282     SWIG_croak_null();
24283   }
24284 }
24285 
24286 
XS(_wrap_PreparedGeometry_Contains)24287 XS(_wrap_PreparedGeometry_Contains) {
24288   {
24289     OGRPreparedGeometryShadow *arg1 = (OGRPreparedGeometryShadow *) 0 ;
24290     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
24291     void *argp1 = 0 ;
24292     int res1 = 0 ;
24293     void *argp2 = 0 ;
24294     int res2 = 0 ;
24295     int argvi = 0;
24296     bool result;
24297     dXSARGS;
24298 
24299     if ((items < 2) || (items > 2)) {
24300       SWIG_croak("Usage: PreparedGeometry_Contains(self,otherGeom);");
24301     }
24302     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRPreparedGeometryShadow, 0 |  0 );
24303     if (!SWIG_IsOK(res1)) {
24304       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PreparedGeometry_Contains" "', argument " "1"" of type '" "OGRPreparedGeometryShadow *""'");
24305     }
24306     arg1 = reinterpret_cast< OGRPreparedGeometryShadow * >(argp1);
24307     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
24308     if (!SWIG_IsOK(res2)) {
24309       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "PreparedGeometry_Contains" "', argument " "2"" of type '" "OGRGeometryShadow const *""'");
24310     }
24311     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
24312     {
24313       if (!arg2) {
24314         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
24315       }
24316     }
24317     {
24318       CPLErrorReset();
24319       result = (bool)OGRPreparedGeometryShadow_Contains(arg1,(OGRGeometryShadow const *)arg2);
24320       CPLErr eclass = CPLGetLastErrorType();
24321       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
24322         do_confess( CPLGetLastErrorMsg(), 0 );
24323 
24324 
24325 
24326 
24327 
24328       }
24329 
24330 
24331       /*
24332           Make warnings regular Perl warnings. This duplicates the warning
24333           message if DontUseExceptions() is in effect (it is not by default).
24334           */
24335       if ( eclass == CE_Warning ) {
24336         warn( CPLGetLastErrorMsg(), "%s" );
24337       }
24338 
24339 
24340     }
24341     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
24342 
24343 
24344     XSRETURN(argvi);
24345   fail:
24346 
24347 
24348     SWIG_croak_null();
24349   }
24350 }
24351 
24352 
XS(_wrap_new_GeomTransformer)24353 XS(_wrap_new_GeomTransformer) {
24354   {
24355     OSRCoordinateTransformationShadow *arg1 = (OSRCoordinateTransformationShadow *) 0 ;
24356     char **arg2 = (char **) NULL ;
24357     void *argp1 = 0 ;
24358     int res1 = 0 ;
24359     int argvi = 0;
24360     OGRGeomTransformerShadow *result = 0 ;
24361     dXSARGS;
24362 
24363     if ((items < 1) || (items > 2)) {
24364       SWIG_croak("Usage: new_GeomTransformer(ct,options);");
24365     }
24366     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OSRCoordinateTransformationShadow, 0 |  0 );
24367     if (!SWIG_IsOK(res1)) {
24368       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_GeomTransformer" "', argument " "1"" of type '" "OSRCoordinateTransformationShadow *""'");
24369     }
24370     arg1 = reinterpret_cast< OSRCoordinateTransformationShadow * >(argp1);
24371     if (items > 1) {
24372       {
24373         /* %typemap(in) char **options */
24374         if (SvOK(ST(1))) {
24375           if (SvROK(ST(1))) {
24376             if (SvTYPE(SvRV(ST(1)))==SVt_PVAV) {
24377               AV *av = (AV*)(SvRV(ST(1)));
24378               for (int i = 0; i < av_len(av)+1; i++) {
24379                 SV *sv = *(av_fetch(av, i, 0));
24380                 bool sf;
24381                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
24382                 arg2 = CSLAddString(arg2, tmp);
24383                 if (sf) Safefree(tmp); else free(tmp);
24384               }
24385             } else if (SvTYPE(SvRV(ST(1)))==SVt_PVHV) {
24386               HV *hv = (HV*)SvRV(ST(1));
24387               SV *sv;
24388               char *key;
24389               I32 klen;
24390               arg2 = NULL;
24391               hv_iterinit(hv);
24392               while(sv = hv_iternextsv(hv, &key, &klen)) {
24393                 bool sf;
24394                 char *tmp = sv_to_utf8_string(sv, NULL, &sf);
24395                 arg2 = CSLAddNameValue(arg2, key, tmp);
24396                 if (sf) Safefree(tmp); else free(tmp);
24397               }
24398             } else
24399             do_confess(NEED_REF, 1);
24400           } else
24401           do_confess(NEED_REF, 1);
24402         }
24403       }
24404     }
24405     {
24406       /* %typemap(check) (OSRCoordinateTransformationShadow *) */
24407       if (!arg1)
24408       do_confess(NEED_DEF, 1);
24409     }
24410     {
24411       CPLErrorReset();
24412       result = (OGRGeomTransformerShadow *)new_OGRGeomTransformerShadow(arg1,arg2);
24413       CPLErr eclass = CPLGetLastErrorType();
24414       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
24415         do_confess( CPLGetLastErrorMsg(), 0 );
24416 
24417 
24418 
24419 
24420 
24421       }
24422 
24423 
24424       /*
24425           Make warnings regular Perl warnings. This duplicates the warning
24426           message if DontUseExceptions() is in effect (it is not by default).
24427           */
24428       if ( eclass == CE_Warning ) {
24429         warn( CPLGetLastErrorMsg(), "%s" );
24430       }
24431 
24432 
24433     }
24434     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeomTransformerShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
24435 
24436     {
24437       /* %typemap(freearg) char **options */
24438       if (arg2) CSLDestroy( arg2 );
24439     }
24440     XSRETURN(argvi);
24441   fail:
24442 
24443     {
24444       /* %typemap(freearg) char **options */
24445       if (arg2) CSLDestroy( arg2 );
24446     }
24447     SWIG_croak_null();
24448   }
24449 }
24450 
24451 
XS(_wrap_delete_GeomTransformer)24452 XS(_wrap_delete_GeomTransformer) {
24453   {
24454     OGRGeomTransformerShadow *arg1 = (OGRGeomTransformerShadow *) 0 ;
24455     void *argp1 = 0 ;
24456     int res1 = 0 ;
24457     int argvi = 0;
24458     dXSARGS;
24459 
24460     if ((items < 1) || (items > 1)) {
24461       SWIG_croak("Usage: delete_GeomTransformer(self);");
24462     }
24463     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeomTransformerShadow, SWIG_POINTER_DISOWN |  0 );
24464     if (!SWIG_IsOK(res1)) {
24465       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GeomTransformer" "', argument " "1"" of type '" "OGRGeomTransformerShadow *""'");
24466     }
24467     arg1 = reinterpret_cast< OGRGeomTransformerShadow * >(argp1);
24468     {
24469       CPLErrorReset();
24470       delete_OGRGeomTransformerShadow(arg1);
24471       CPLErr eclass = CPLGetLastErrorType();
24472       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
24473         do_confess( CPLGetLastErrorMsg(), 0 );
24474 
24475 
24476 
24477 
24478 
24479       }
24480 
24481 
24482       /*
24483           Make warnings regular Perl warnings. This duplicates the warning
24484           message if DontUseExceptions() is in effect (it is not by default).
24485           */
24486       if ( eclass == CE_Warning ) {
24487         warn( CPLGetLastErrorMsg(), "%s" );
24488       }
24489 
24490 
24491     }
24492     {
24493       /* %typemap(out) void */
24494     }
24495 
24496     XSRETURN(argvi);
24497   fail:
24498 
24499     SWIG_croak_null();
24500   }
24501 }
24502 
24503 
XS(_wrap_GeomTransformer_Transform)24504 XS(_wrap_GeomTransformer_Transform) {
24505   {
24506     OGRGeomTransformerShadow *arg1 = (OGRGeomTransformerShadow *) 0 ;
24507     OGRGeometryShadow *arg2 = (OGRGeometryShadow *) 0 ;
24508     void *argp1 = 0 ;
24509     int res1 = 0 ;
24510     void *argp2 = 0 ;
24511     int res2 = 0 ;
24512     int argvi = 0;
24513     OGRGeometryShadow *result = 0 ;
24514     dXSARGS;
24515 
24516     if ((items < 2) || (items > 2)) {
24517       SWIG_croak("Usage: GeomTransformer_Transform(self,src_geom);");
24518     }
24519     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRGeomTransformerShadow, 0 |  0 );
24520     if (!SWIG_IsOK(res1)) {
24521       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GeomTransformer_Transform" "', argument " "1"" of type '" "OGRGeomTransformerShadow *""'");
24522     }
24523     arg1 = reinterpret_cast< OGRGeomTransformerShadow * >(argp1);
24524     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_OGRGeometryShadow, 0 |  0 );
24525     if (!SWIG_IsOK(res2)) {
24526       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GeomTransformer_Transform" "', argument " "2"" of type '" "OGRGeometryShadow *""'");
24527     }
24528     arg2 = reinterpret_cast< OGRGeometryShadow * >(argp2);
24529     {
24530       if (!arg2) {
24531         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
24532       }
24533     }
24534     {
24535       CPLErrorReset();
24536       result = (OGRGeometryShadow *)OGRGeomTransformerShadow_Transform(arg1,arg2);
24537       CPLErr eclass = CPLGetLastErrorType();
24538       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
24539         do_confess( CPLGetLastErrorMsg(), 0 );
24540 
24541 
24542 
24543 
24544 
24545       }
24546 
24547 
24548       /*
24549           Make warnings regular Perl warnings. This duplicates the warning
24550           message if DontUseExceptions() is in effect (it is not by default).
24551           */
24552       if ( eclass == CE_Warning ) {
24553         warn( CPLGetLastErrorMsg(), "%s" );
24554       }
24555 
24556 
24557     }
24558     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRGeometryShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
24559 
24560 
24561     XSRETURN(argvi);
24562   fail:
24563 
24564 
24565     SWIG_croak_null();
24566   }
24567 }
24568 
24569 
XS(_wrap_delete_FieldDomain)24570 XS(_wrap_delete_FieldDomain) {
24571   {
24572     OGRFieldDomainShadow *arg1 = (OGRFieldDomainShadow *) 0 ;
24573     void *argp1 = 0 ;
24574     int res1 = 0 ;
24575     int argvi = 0;
24576     dXSARGS;
24577 
24578     if ((items < 1) || (items > 1)) {
24579       SWIG_croak("Usage: delete_FieldDomain(self);");
24580     }
24581     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDomainShadow, SWIG_POINTER_DISOWN |  0 );
24582     if (!SWIG_IsOK(res1)) {
24583       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_FieldDomain" "', argument " "1"" of type '" "OGRFieldDomainShadow *""'");
24584     }
24585     arg1 = reinterpret_cast< OGRFieldDomainShadow * >(argp1);
24586     {
24587       CPLErrorReset();
24588       delete_OGRFieldDomainShadow(arg1);
24589       CPLErr eclass = CPLGetLastErrorType();
24590       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
24591         do_confess( CPLGetLastErrorMsg(), 0 );
24592 
24593 
24594 
24595 
24596 
24597       }
24598 
24599 
24600       /*
24601           Make warnings regular Perl warnings. This duplicates the warning
24602           message if DontUseExceptions() is in effect (it is not by default).
24603           */
24604       if ( eclass == CE_Warning ) {
24605         warn( CPLGetLastErrorMsg(), "%s" );
24606       }
24607 
24608 
24609     }
24610     {
24611       /* %typemap(out) void */
24612     }
24613 
24614     XSRETURN(argvi);
24615   fail:
24616 
24617     SWIG_croak_null();
24618   }
24619 }
24620 
24621 
XS(_wrap_FieldDomain_GetName)24622 XS(_wrap_FieldDomain_GetName) {
24623   {
24624     OGRFieldDomainShadow *arg1 = (OGRFieldDomainShadow *) 0 ;
24625     void *argp1 = 0 ;
24626     int res1 = 0 ;
24627     int argvi = 0;
24628     char *result = 0 ;
24629     dXSARGS;
24630 
24631     if ((items < 1) || (items > 1)) {
24632       SWIG_croak("Usage: FieldDomain_GetName(self);");
24633     }
24634     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDomainShadow, 0 |  0 );
24635     if (!SWIG_IsOK(res1)) {
24636       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDomain_GetName" "', argument " "1"" of type '" "OGRFieldDomainShadow *""'");
24637     }
24638     arg1 = reinterpret_cast< OGRFieldDomainShadow * >(argp1);
24639     {
24640       CPLErrorReset();
24641       result = (char *)OGRFieldDomainShadow_GetName(arg1);
24642       CPLErr eclass = CPLGetLastErrorType();
24643       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
24644         do_confess( CPLGetLastErrorMsg(), 0 );
24645 
24646 
24647 
24648 
24649 
24650       }
24651 
24652 
24653       /*
24654           Make warnings regular Perl warnings. This duplicates the warning
24655           message if DontUseExceptions() is in effect (it is not by default).
24656           */
24657       if ( eclass == CE_Warning ) {
24658         warn( CPLGetLastErrorMsg(), "%s" );
24659       }
24660 
24661 
24662     }
24663     {
24664       /* %typemap(out) const char * */
24665       ST(argvi) = newSVpv(result, 0);
24666       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
24667       sv_2mortal(ST(argvi));
24668       argvi++;
24669     }
24670 
24671     XSRETURN(argvi);
24672   fail:
24673 
24674     SWIG_croak_null();
24675   }
24676 }
24677 
24678 
XS(_wrap_FieldDomain_GetDescription)24679 XS(_wrap_FieldDomain_GetDescription) {
24680   {
24681     OGRFieldDomainShadow *arg1 = (OGRFieldDomainShadow *) 0 ;
24682     void *argp1 = 0 ;
24683     int res1 = 0 ;
24684     int argvi = 0;
24685     char *result = 0 ;
24686     dXSARGS;
24687 
24688     if ((items < 1) || (items > 1)) {
24689       SWIG_croak("Usage: FieldDomain_GetDescription(self);");
24690     }
24691     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDomainShadow, 0 |  0 );
24692     if (!SWIG_IsOK(res1)) {
24693       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDomain_GetDescription" "', argument " "1"" of type '" "OGRFieldDomainShadow *""'");
24694     }
24695     arg1 = reinterpret_cast< OGRFieldDomainShadow * >(argp1);
24696     {
24697       CPLErrorReset();
24698       result = (char *)OGRFieldDomainShadow_GetDescription(arg1);
24699       CPLErr eclass = CPLGetLastErrorType();
24700       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
24701         do_confess( CPLGetLastErrorMsg(), 0 );
24702 
24703 
24704 
24705 
24706 
24707       }
24708 
24709 
24710       /*
24711           Make warnings regular Perl warnings. This duplicates the warning
24712           message if DontUseExceptions() is in effect (it is not by default).
24713           */
24714       if ( eclass == CE_Warning ) {
24715         warn( CPLGetLastErrorMsg(), "%s" );
24716       }
24717 
24718 
24719     }
24720     {
24721       /* %typemap(out) const char * */
24722       ST(argvi) = newSVpv(result, 0);
24723       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
24724       sv_2mortal(ST(argvi));
24725       argvi++;
24726     }
24727 
24728     XSRETURN(argvi);
24729   fail:
24730 
24731     SWIG_croak_null();
24732   }
24733 }
24734 
24735 
XS(_wrap_FieldDomain_GetFieldType)24736 XS(_wrap_FieldDomain_GetFieldType) {
24737   {
24738     OGRFieldDomainShadow *arg1 = (OGRFieldDomainShadow *) 0 ;
24739     void *argp1 = 0 ;
24740     int res1 = 0 ;
24741     int argvi = 0;
24742     OGRFieldType result;
24743     dXSARGS;
24744 
24745     if ((items < 1) || (items > 1)) {
24746       SWIG_croak("Usage: FieldDomain_GetFieldType(self);");
24747     }
24748     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDomainShadow, 0 |  0 );
24749     if (!SWIG_IsOK(res1)) {
24750       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDomain_GetFieldType" "', argument " "1"" of type '" "OGRFieldDomainShadow *""'");
24751     }
24752     arg1 = reinterpret_cast< OGRFieldDomainShadow * >(argp1);
24753     {
24754       CPLErrorReset();
24755       result = (OGRFieldType)OGRFieldDomainShadow_GetFieldType(arg1);
24756       CPLErr eclass = CPLGetLastErrorType();
24757       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
24758         do_confess( CPLGetLastErrorMsg(), 0 );
24759 
24760 
24761 
24762 
24763 
24764       }
24765 
24766 
24767       /*
24768           Make warnings regular Perl warnings. This duplicates the warning
24769           message if DontUseExceptions() is in effect (it is not by default).
24770           */
24771       if ( eclass == CE_Warning ) {
24772         warn( CPLGetLastErrorMsg(), "%s" );
24773       }
24774 
24775 
24776     }
24777     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24778 
24779     XSRETURN(argvi);
24780   fail:
24781 
24782     SWIG_croak_null();
24783   }
24784 }
24785 
24786 
XS(_wrap_FieldDomain_GetFieldSubType)24787 XS(_wrap_FieldDomain_GetFieldSubType) {
24788   {
24789     OGRFieldDomainShadow *arg1 = (OGRFieldDomainShadow *) 0 ;
24790     void *argp1 = 0 ;
24791     int res1 = 0 ;
24792     int argvi = 0;
24793     OGRFieldSubType result;
24794     dXSARGS;
24795 
24796     if ((items < 1) || (items > 1)) {
24797       SWIG_croak("Usage: FieldDomain_GetFieldSubType(self);");
24798     }
24799     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDomainShadow, 0 |  0 );
24800     if (!SWIG_IsOK(res1)) {
24801       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDomain_GetFieldSubType" "', argument " "1"" of type '" "OGRFieldDomainShadow *""'");
24802     }
24803     arg1 = reinterpret_cast< OGRFieldDomainShadow * >(argp1);
24804     {
24805       CPLErrorReset();
24806       result = (OGRFieldSubType)OGRFieldDomainShadow_GetFieldSubType(arg1);
24807       CPLErr eclass = CPLGetLastErrorType();
24808       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
24809         do_confess( CPLGetLastErrorMsg(), 0 );
24810 
24811 
24812 
24813 
24814 
24815       }
24816 
24817 
24818       /*
24819           Make warnings regular Perl warnings. This duplicates the warning
24820           message if DontUseExceptions() is in effect (it is not by default).
24821           */
24822       if ( eclass == CE_Warning ) {
24823         warn( CPLGetLastErrorMsg(), "%s" );
24824       }
24825 
24826 
24827     }
24828     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24829 
24830     XSRETURN(argvi);
24831   fail:
24832 
24833     SWIG_croak_null();
24834   }
24835 }
24836 
24837 
XS(_wrap_FieldDomain_GetDomainType)24838 XS(_wrap_FieldDomain_GetDomainType) {
24839   {
24840     OGRFieldDomainShadow *arg1 = (OGRFieldDomainShadow *) 0 ;
24841     void *argp1 = 0 ;
24842     int res1 = 0 ;
24843     int argvi = 0;
24844     OGRFieldDomainType result;
24845     dXSARGS;
24846 
24847     if ((items < 1) || (items > 1)) {
24848       SWIG_croak("Usage: FieldDomain_GetDomainType(self);");
24849     }
24850     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDomainShadow, 0 |  0 );
24851     if (!SWIG_IsOK(res1)) {
24852       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDomain_GetDomainType" "', argument " "1"" of type '" "OGRFieldDomainShadow *""'");
24853     }
24854     arg1 = reinterpret_cast< OGRFieldDomainShadow * >(argp1);
24855     {
24856       CPLErrorReset();
24857       result = (OGRFieldDomainType)OGRFieldDomainShadow_GetDomainType(arg1);
24858       CPLErr eclass = CPLGetLastErrorType();
24859       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
24860         do_confess( CPLGetLastErrorMsg(), 0 );
24861 
24862 
24863 
24864 
24865 
24866       }
24867 
24868 
24869       /*
24870           Make warnings regular Perl warnings. This duplicates the warning
24871           message if DontUseExceptions() is in effect (it is not by default).
24872           */
24873       if ( eclass == CE_Warning ) {
24874         warn( CPLGetLastErrorMsg(), "%s" );
24875       }
24876 
24877 
24878     }
24879     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24880 
24881     XSRETURN(argvi);
24882   fail:
24883 
24884     SWIG_croak_null();
24885   }
24886 }
24887 
24888 
XS(_wrap_FieldDomain_GetSplitPolicy)24889 XS(_wrap_FieldDomain_GetSplitPolicy) {
24890   {
24891     OGRFieldDomainShadow *arg1 = (OGRFieldDomainShadow *) 0 ;
24892     void *argp1 = 0 ;
24893     int res1 = 0 ;
24894     int argvi = 0;
24895     OGRFieldDomainSplitPolicy result;
24896     dXSARGS;
24897 
24898     if ((items < 1) || (items > 1)) {
24899       SWIG_croak("Usage: FieldDomain_GetSplitPolicy(self);");
24900     }
24901     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDomainShadow, 0 |  0 );
24902     if (!SWIG_IsOK(res1)) {
24903       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDomain_GetSplitPolicy" "', argument " "1"" of type '" "OGRFieldDomainShadow *""'");
24904     }
24905     arg1 = reinterpret_cast< OGRFieldDomainShadow * >(argp1);
24906     {
24907       CPLErrorReset();
24908       result = (OGRFieldDomainSplitPolicy)OGRFieldDomainShadow_GetSplitPolicy(arg1);
24909       CPLErr eclass = CPLGetLastErrorType();
24910       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
24911         do_confess( CPLGetLastErrorMsg(), 0 );
24912 
24913 
24914 
24915 
24916 
24917       }
24918 
24919 
24920       /*
24921           Make warnings regular Perl warnings. This duplicates the warning
24922           message if DontUseExceptions() is in effect (it is not by default).
24923           */
24924       if ( eclass == CE_Warning ) {
24925         warn( CPLGetLastErrorMsg(), "%s" );
24926       }
24927 
24928 
24929     }
24930     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24931 
24932     XSRETURN(argvi);
24933   fail:
24934 
24935     SWIG_croak_null();
24936   }
24937 }
24938 
24939 
XS(_wrap_FieldDomain_SetSplitPolicy)24940 XS(_wrap_FieldDomain_SetSplitPolicy) {
24941   {
24942     OGRFieldDomainShadow *arg1 = (OGRFieldDomainShadow *) 0 ;
24943     OGRFieldDomainSplitPolicy arg2 ;
24944     void *argp1 = 0 ;
24945     int res1 = 0 ;
24946     int val2 ;
24947     int ecode2 = 0 ;
24948     int argvi = 0;
24949     dXSARGS;
24950 
24951     if ((items < 2) || (items > 2)) {
24952       SWIG_croak("Usage: FieldDomain_SetSplitPolicy(self,policy);");
24953     }
24954     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDomainShadow, 0 |  0 );
24955     if (!SWIG_IsOK(res1)) {
24956       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDomain_SetSplitPolicy" "', argument " "1"" of type '" "OGRFieldDomainShadow *""'");
24957     }
24958     arg1 = reinterpret_cast< OGRFieldDomainShadow * >(argp1);
24959     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24960     if (!SWIG_IsOK(ecode2)) {
24961       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FieldDomain_SetSplitPolicy" "', argument " "2"" of type '" "OGRFieldDomainSplitPolicy""'");
24962     }
24963     arg2 = static_cast< OGRFieldDomainSplitPolicy >(val2);
24964     {
24965       CPLErrorReset();
24966       OGRFieldDomainShadow_SetSplitPolicy(arg1,arg2);
24967       CPLErr eclass = CPLGetLastErrorType();
24968       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
24969         do_confess( CPLGetLastErrorMsg(), 0 );
24970 
24971 
24972 
24973 
24974 
24975       }
24976 
24977 
24978       /*
24979           Make warnings regular Perl warnings. This duplicates the warning
24980           message if DontUseExceptions() is in effect (it is not by default).
24981           */
24982       if ( eclass == CE_Warning ) {
24983         warn( CPLGetLastErrorMsg(), "%s" );
24984       }
24985 
24986 
24987     }
24988     {
24989       /* %typemap(out) void */
24990     }
24991 
24992 
24993     XSRETURN(argvi);
24994   fail:
24995 
24996 
24997     SWIG_croak_null();
24998   }
24999 }
25000 
25001 
XS(_wrap_FieldDomain_GetMergePolicy)25002 XS(_wrap_FieldDomain_GetMergePolicy) {
25003   {
25004     OGRFieldDomainShadow *arg1 = (OGRFieldDomainShadow *) 0 ;
25005     void *argp1 = 0 ;
25006     int res1 = 0 ;
25007     int argvi = 0;
25008     OGRFieldDomainMergePolicy result;
25009     dXSARGS;
25010 
25011     if ((items < 1) || (items > 1)) {
25012       SWIG_croak("Usage: FieldDomain_GetMergePolicy(self);");
25013     }
25014     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDomainShadow, 0 |  0 );
25015     if (!SWIG_IsOK(res1)) {
25016       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDomain_GetMergePolicy" "', argument " "1"" of type '" "OGRFieldDomainShadow *""'");
25017     }
25018     arg1 = reinterpret_cast< OGRFieldDomainShadow * >(argp1);
25019     {
25020       CPLErrorReset();
25021       result = (OGRFieldDomainMergePolicy)OGRFieldDomainShadow_GetMergePolicy(arg1);
25022       CPLErr eclass = CPLGetLastErrorType();
25023       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25024         do_confess( CPLGetLastErrorMsg(), 0 );
25025 
25026 
25027 
25028 
25029 
25030       }
25031 
25032 
25033       /*
25034           Make warnings regular Perl warnings. This duplicates the warning
25035           message if DontUseExceptions() is in effect (it is not by default).
25036           */
25037       if ( eclass == CE_Warning ) {
25038         warn( CPLGetLastErrorMsg(), "%s" );
25039       }
25040 
25041 
25042     }
25043     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
25044 
25045     XSRETURN(argvi);
25046   fail:
25047 
25048     SWIG_croak_null();
25049   }
25050 }
25051 
25052 
XS(_wrap_FieldDomain_SetMergePolicy)25053 XS(_wrap_FieldDomain_SetMergePolicy) {
25054   {
25055     OGRFieldDomainShadow *arg1 = (OGRFieldDomainShadow *) 0 ;
25056     OGRFieldDomainMergePolicy arg2 ;
25057     void *argp1 = 0 ;
25058     int res1 = 0 ;
25059     int val2 ;
25060     int ecode2 = 0 ;
25061     int argvi = 0;
25062     dXSARGS;
25063 
25064     if ((items < 2) || (items > 2)) {
25065       SWIG_croak("Usage: FieldDomain_SetMergePolicy(self,policy);");
25066     }
25067     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDomainShadow, 0 |  0 );
25068     if (!SWIG_IsOK(res1)) {
25069       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDomain_SetMergePolicy" "', argument " "1"" of type '" "OGRFieldDomainShadow *""'");
25070     }
25071     arg1 = reinterpret_cast< OGRFieldDomainShadow * >(argp1);
25072     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
25073     if (!SWIG_IsOK(ecode2)) {
25074       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "FieldDomain_SetMergePolicy" "', argument " "2"" of type '" "OGRFieldDomainMergePolicy""'");
25075     }
25076     arg2 = static_cast< OGRFieldDomainMergePolicy >(val2);
25077     {
25078       CPLErrorReset();
25079       OGRFieldDomainShadow_SetMergePolicy(arg1,arg2);
25080       CPLErr eclass = CPLGetLastErrorType();
25081       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25082         do_confess( CPLGetLastErrorMsg(), 0 );
25083 
25084 
25085 
25086 
25087 
25088       }
25089 
25090 
25091       /*
25092           Make warnings regular Perl warnings. This duplicates the warning
25093           message if DontUseExceptions() is in effect (it is not by default).
25094           */
25095       if ( eclass == CE_Warning ) {
25096         warn( CPLGetLastErrorMsg(), "%s" );
25097       }
25098 
25099 
25100     }
25101     {
25102       /* %typemap(out) void */
25103     }
25104 
25105 
25106     XSRETURN(argvi);
25107   fail:
25108 
25109 
25110     SWIG_croak_null();
25111   }
25112 }
25113 
25114 
XS(_wrap_FieldDomain_GetMinAsDouble)25115 XS(_wrap_FieldDomain_GetMinAsDouble) {
25116   {
25117     OGRFieldDomainShadow *arg1 = (OGRFieldDomainShadow *) 0 ;
25118     void *argp1 = 0 ;
25119     int res1 = 0 ;
25120     int argvi = 0;
25121     double result;
25122     dXSARGS;
25123 
25124     if ((items < 1) || (items > 1)) {
25125       SWIG_croak("Usage: FieldDomain_GetMinAsDouble(self);");
25126     }
25127     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDomainShadow, 0 |  0 );
25128     if (!SWIG_IsOK(res1)) {
25129       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDomain_GetMinAsDouble" "', argument " "1"" of type '" "OGRFieldDomainShadow *""'");
25130     }
25131     arg1 = reinterpret_cast< OGRFieldDomainShadow * >(argp1);
25132     {
25133       CPLErrorReset();
25134       result = (double)OGRFieldDomainShadow_GetMinAsDouble(arg1);
25135       CPLErr eclass = CPLGetLastErrorType();
25136       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25137         do_confess( CPLGetLastErrorMsg(), 0 );
25138 
25139 
25140 
25141 
25142 
25143       }
25144 
25145 
25146       /*
25147           Make warnings regular Perl warnings. This duplicates the warning
25148           message if DontUseExceptions() is in effect (it is not by default).
25149           */
25150       if ( eclass == CE_Warning ) {
25151         warn( CPLGetLastErrorMsg(), "%s" );
25152       }
25153 
25154 
25155     }
25156     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
25157 
25158     XSRETURN(argvi);
25159   fail:
25160 
25161     SWIG_croak_null();
25162   }
25163 }
25164 
25165 
XS(_wrap_FieldDomain_IsMinInclusive)25166 XS(_wrap_FieldDomain_IsMinInclusive) {
25167   {
25168     OGRFieldDomainShadow *arg1 = (OGRFieldDomainShadow *) 0 ;
25169     void *argp1 = 0 ;
25170     int res1 = 0 ;
25171     int argvi = 0;
25172     bool result;
25173     dXSARGS;
25174 
25175     if ((items < 1) || (items > 1)) {
25176       SWIG_croak("Usage: FieldDomain_IsMinInclusive(self);");
25177     }
25178     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDomainShadow, 0 |  0 );
25179     if (!SWIG_IsOK(res1)) {
25180       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDomain_IsMinInclusive" "', argument " "1"" of type '" "OGRFieldDomainShadow *""'");
25181     }
25182     arg1 = reinterpret_cast< OGRFieldDomainShadow * >(argp1);
25183     {
25184       CPLErrorReset();
25185       result = (bool)OGRFieldDomainShadow_IsMinInclusive(arg1);
25186       CPLErr eclass = CPLGetLastErrorType();
25187       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25188         do_confess( CPLGetLastErrorMsg(), 0 );
25189 
25190 
25191 
25192 
25193 
25194       }
25195 
25196 
25197       /*
25198           Make warnings regular Perl warnings. This duplicates the warning
25199           message if DontUseExceptions() is in effect (it is not by default).
25200           */
25201       if ( eclass == CE_Warning ) {
25202         warn( CPLGetLastErrorMsg(), "%s" );
25203       }
25204 
25205 
25206     }
25207     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
25208 
25209     XSRETURN(argvi);
25210   fail:
25211 
25212     SWIG_croak_null();
25213   }
25214 }
25215 
25216 
XS(_wrap_FieldDomain_GetMaxAsDouble)25217 XS(_wrap_FieldDomain_GetMaxAsDouble) {
25218   {
25219     OGRFieldDomainShadow *arg1 = (OGRFieldDomainShadow *) 0 ;
25220     void *argp1 = 0 ;
25221     int res1 = 0 ;
25222     int argvi = 0;
25223     double result;
25224     dXSARGS;
25225 
25226     if ((items < 1) || (items > 1)) {
25227       SWIG_croak("Usage: FieldDomain_GetMaxAsDouble(self);");
25228     }
25229     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDomainShadow, 0 |  0 );
25230     if (!SWIG_IsOK(res1)) {
25231       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDomain_GetMaxAsDouble" "', argument " "1"" of type '" "OGRFieldDomainShadow *""'");
25232     }
25233     arg1 = reinterpret_cast< OGRFieldDomainShadow * >(argp1);
25234     {
25235       CPLErrorReset();
25236       result = (double)OGRFieldDomainShadow_GetMaxAsDouble(arg1);
25237       CPLErr eclass = CPLGetLastErrorType();
25238       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25239         do_confess( CPLGetLastErrorMsg(), 0 );
25240 
25241 
25242 
25243 
25244 
25245       }
25246 
25247 
25248       /*
25249           Make warnings regular Perl warnings. This duplicates the warning
25250           message if DontUseExceptions() is in effect (it is not by default).
25251           */
25252       if ( eclass == CE_Warning ) {
25253         warn( CPLGetLastErrorMsg(), "%s" );
25254       }
25255 
25256 
25257     }
25258     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
25259 
25260     XSRETURN(argvi);
25261   fail:
25262 
25263     SWIG_croak_null();
25264   }
25265 }
25266 
25267 
XS(_wrap_FieldDomain_IsMaxInclusive)25268 XS(_wrap_FieldDomain_IsMaxInclusive) {
25269   {
25270     OGRFieldDomainShadow *arg1 = (OGRFieldDomainShadow *) 0 ;
25271     void *argp1 = 0 ;
25272     int res1 = 0 ;
25273     int argvi = 0;
25274     bool result;
25275     dXSARGS;
25276 
25277     if ((items < 1) || (items > 1)) {
25278       SWIG_croak("Usage: FieldDomain_IsMaxInclusive(self);");
25279     }
25280     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDomainShadow, 0 |  0 );
25281     if (!SWIG_IsOK(res1)) {
25282       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDomain_IsMaxInclusive" "', argument " "1"" of type '" "OGRFieldDomainShadow *""'");
25283     }
25284     arg1 = reinterpret_cast< OGRFieldDomainShadow * >(argp1);
25285     {
25286       CPLErrorReset();
25287       result = (bool)OGRFieldDomainShadow_IsMaxInclusive(arg1);
25288       CPLErr eclass = CPLGetLastErrorType();
25289       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25290         do_confess( CPLGetLastErrorMsg(), 0 );
25291 
25292 
25293 
25294 
25295 
25296       }
25297 
25298 
25299       /*
25300           Make warnings regular Perl warnings. This duplicates the warning
25301           message if DontUseExceptions() is in effect (it is not by default).
25302           */
25303       if ( eclass == CE_Warning ) {
25304         warn( CPLGetLastErrorMsg(), "%s" );
25305       }
25306 
25307 
25308     }
25309     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
25310 
25311     XSRETURN(argvi);
25312   fail:
25313 
25314     SWIG_croak_null();
25315   }
25316 }
25317 
25318 
XS(_wrap_FieldDomain_GetGlob)25319 XS(_wrap_FieldDomain_GetGlob) {
25320   {
25321     OGRFieldDomainShadow *arg1 = (OGRFieldDomainShadow *) 0 ;
25322     void *argp1 = 0 ;
25323     int res1 = 0 ;
25324     int argvi = 0;
25325     char *result = 0 ;
25326     dXSARGS;
25327 
25328     if ((items < 1) || (items > 1)) {
25329       SWIG_croak("Usage: FieldDomain_GetGlob(self);");
25330     }
25331     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_OGRFieldDomainShadow, 0 |  0 );
25332     if (!SWIG_IsOK(res1)) {
25333       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "FieldDomain_GetGlob" "', argument " "1"" of type '" "OGRFieldDomainShadow *""'");
25334     }
25335     arg1 = reinterpret_cast< OGRFieldDomainShadow * >(argp1);
25336     {
25337       CPLErrorReset();
25338       result = (char *)OGRFieldDomainShadow_GetGlob(arg1);
25339       CPLErr eclass = CPLGetLastErrorType();
25340       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25341         do_confess( CPLGetLastErrorMsg(), 0 );
25342 
25343 
25344 
25345 
25346 
25347       }
25348 
25349 
25350       /*
25351           Make warnings regular Perl warnings. This duplicates the warning
25352           message if DontUseExceptions() is in effect (it is not by default).
25353           */
25354       if ( eclass == CE_Warning ) {
25355         warn( CPLGetLastErrorMsg(), "%s" );
25356       }
25357 
25358 
25359     }
25360     {
25361       /* %typemap(out) const char * */
25362       ST(argvi) = newSVpv(result, 0);
25363       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
25364       sv_2mortal(ST(argvi));
25365       argvi++;
25366     }
25367 
25368     XSRETURN(argvi);
25369   fail:
25370 
25371     SWIG_croak_null();
25372   }
25373 }
25374 
25375 
XS(_wrap_CreateRangeFieldDomain)25376 XS(_wrap_CreateRangeFieldDomain) {
25377   {
25378     char *arg1 = (char *) 0 ;
25379     char *arg2 = (char *) 0 ;
25380     OGRFieldType arg3 ;
25381     OGRFieldSubType arg4 ;
25382     double arg5 ;
25383     bool arg6 ;
25384     double arg7 ;
25385     double arg8 ;
25386     int res1 ;
25387     char *buf1 = 0 ;
25388     int alloc1 = 0 ;
25389     int res2 ;
25390     char *buf2 = 0 ;
25391     int alloc2 = 0 ;
25392     int val3 ;
25393     int ecode3 = 0 ;
25394     int val4 ;
25395     int ecode4 = 0 ;
25396     double val5 ;
25397     int ecode5 = 0 ;
25398     bool val6 ;
25399     int ecode6 = 0 ;
25400     double val7 ;
25401     int ecode7 = 0 ;
25402     double val8 ;
25403     int ecode8 = 0 ;
25404     int argvi = 0;
25405     OGRFieldDomainShadow *result = 0 ;
25406     dXSARGS;
25407 
25408     if ((items < 8) || (items > 8)) {
25409       SWIG_croak("Usage: CreateRangeFieldDomain(name,description,type,subtype,min,minIsInclusive,max,maxIsInclusive);");
25410     }
25411     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
25412     if (!SWIG_IsOK(res1)) {
25413       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CreateRangeFieldDomain" "', argument " "1"" of type '" "char const *""'");
25414     }
25415     arg1 = reinterpret_cast< char * >(buf1);
25416     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
25417     if (!SWIG_IsOK(res2)) {
25418       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "CreateRangeFieldDomain" "', argument " "2"" of type '" "char const *""'");
25419     }
25420     arg2 = reinterpret_cast< char * >(buf2);
25421     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
25422     if (!SWIG_IsOK(ecode3)) {
25423       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "CreateRangeFieldDomain" "', argument " "3"" of type '" "OGRFieldType""'");
25424     }
25425     arg3 = static_cast< OGRFieldType >(val3);
25426     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
25427     if (!SWIG_IsOK(ecode4)) {
25428       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "CreateRangeFieldDomain" "', argument " "4"" of type '" "OGRFieldSubType""'");
25429     }
25430     arg4 = static_cast< OGRFieldSubType >(val4);
25431     ecode5 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
25432     if (!SWIG_IsOK(ecode5)) {
25433       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "CreateRangeFieldDomain" "', argument " "5"" of type '" "double""'");
25434     }
25435     arg5 = static_cast< double >(val5);
25436     ecode6 = SWIG_AsVal_bool SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
25437     if (!SWIG_IsOK(ecode6)) {
25438       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "CreateRangeFieldDomain" "', argument " "6"" of type '" "bool""'");
25439     }
25440     arg6 = static_cast< bool >(val6);
25441     ecode7 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
25442     if (!SWIG_IsOK(ecode7)) {
25443       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "CreateRangeFieldDomain" "', argument " "7"" of type '" "double""'");
25444     }
25445     arg7 = static_cast< double >(val7);
25446     ecode8 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
25447     if (!SWIG_IsOK(ecode8)) {
25448       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "CreateRangeFieldDomain" "', argument " "8"" of type '" "double""'");
25449     }
25450     arg8 = static_cast< double >(val8);
25451     {
25452       if (!arg1) {
25453         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
25454       }
25455     }
25456     {
25457       CPLErrorReset();
25458       result = (OGRFieldDomainShadow *)CreateRangeFieldDomain((char const *)arg1,(char const *)arg2,arg3,arg4,arg5,arg6,arg7,arg8);
25459       CPLErr eclass = CPLGetLastErrorType();
25460       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25461         do_confess( CPLGetLastErrorMsg(), 0 );
25462 
25463 
25464 
25465 
25466 
25467       }
25468 
25469 
25470       /*
25471           Make warnings regular Perl warnings. This duplicates the warning
25472           message if DontUseExceptions() is in effect (it is not by default).
25473           */
25474       if ( eclass == CE_Warning ) {
25475         warn( CPLGetLastErrorMsg(), "%s" );
25476       }
25477 
25478 
25479     }
25480     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRFieldDomainShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
25481     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
25482     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
25483 
25484 
25485 
25486 
25487 
25488 
25489     XSRETURN(argvi);
25490   fail:
25491     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
25492     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
25493 
25494 
25495 
25496 
25497 
25498 
25499     SWIG_croak_null();
25500   }
25501 }
25502 
25503 
XS(_wrap_CreateGlobFieldDomain)25504 XS(_wrap_CreateGlobFieldDomain) {
25505   {
25506     char *arg1 = (char *) 0 ;
25507     char *arg2 = (char *) 0 ;
25508     OGRFieldType arg3 ;
25509     OGRFieldSubType arg4 ;
25510     char *arg5 = (char *) 0 ;
25511     int res1 ;
25512     char *buf1 = 0 ;
25513     int alloc1 = 0 ;
25514     int res2 ;
25515     char *buf2 = 0 ;
25516     int alloc2 = 0 ;
25517     int val3 ;
25518     int ecode3 = 0 ;
25519     int val4 ;
25520     int ecode4 = 0 ;
25521     int res5 ;
25522     char *buf5 = 0 ;
25523     int alloc5 = 0 ;
25524     int argvi = 0;
25525     OGRFieldDomainShadow *result = 0 ;
25526     dXSARGS;
25527 
25528     if ((items < 5) || (items > 5)) {
25529       SWIG_croak("Usage: CreateGlobFieldDomain(name,description,type,subtype,glob);");
25530     }
25531     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
25532     if (!SWIG_IsOK(res1)) {
25533       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CreateGlobFieldDomain" "', argument " "1"" of type '" "char const *""'");
25534     }
25535     arg1 = reinterpret_cast< char * >(buf1);
25536     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
25537     if (!SWIG_IsOK(res2)) {
25538       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "CreateGlobFieldDomain" "', argument " "2"" of type '" "char const *""'");
25539     }
25540     arg2 = reinterpret_cast< char * >(buf2);
25541     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
25542     if (!SWIG_IsOK(ecode3)) {
25543       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "CreateGlobFieldDomain" "', argument " "3"" of type '" "OGRFieldType""'");
25544     }
25545     arg3 = static_cast< OGRFieldType >(val3);
25546     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
25547     if (!SWIG_IsOK(ecode4)) {
25548       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "CreateGlobFieldDomain" "', argument " "4"" of type '" "OGRFieldSubType""'");
25549     }
25550     arg4 = static_cast< OGRFieldSubType >(val4);
25551     res5 = SWIG_AsCharPtrAndSize(ST(4), &buf5, NULL, &alloc5);
25552     if (!SWIG_IsOK(res5)) {
25553       SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "CreateGlobFieldDomain" "', argument " "5"" of type '" "char const *""'");
25554     }
25555     arg5 = reinterpret_cast< char * >(buf5);
25556     {
25557       if (!arg1) {
25558         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
25559       }
25560     }
25561     {
25562       if (!arg5) {
25563         SWIG_exception(SWIG_ValueError,"Received a NULL pointer.");
25564       }
25565     }
25566     {
25567       CPLErrorReset();
25568       result = (OGRFieldDomainShadow *)CreateGlobFieldDomain((char const *)arg1,(char const *)arg2,arg3,arg4,(char const *)arg5);
25569       CPLErr eclass = CPLGetLastErrorType();
25570       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25571         do_confess( CPLGetLastErrorMsg(), 0 );
25572 
25573 
25574 
25575 
25576 
25577       }
25578 
25579 
25580       /*
25581           Make warnings regular Perl warnings. This duplicates the warning
25582           message if DontUseExceptions() is in effect (it is not by default).
25583           */
25584       if ( eclass == CE_Warning ) {
25585         warn( CPLGetLastErrorMsg(), "%s" );
25586       }
25587 
25588 
25589     }
25590     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_OGRFieldDomainShadow, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
25591     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
25592     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
25593 
25594 
25595     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
25596     XSRETURN(argvi);
25597   fail:
25598     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
25599     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
25600 
25601 
25602     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
25603     SWIG_croak_null();
25604   }
25605 }
25606 
25607 
XS(_wrap_GetDriverCount)25608 XS(_wrap_GetDriverCount) {
25609   {
25610     int argvi = 0;
25611     int result;
25612     dXSARGS;
25613 
25614     if ((items < 0) || (items > 0)) {
25615       SWIG_croak("Usage: GetDriverCount();");
25616     }
25617     {
25618       CPLErrorReset();
25619       result = (int)OGRGetDriverCount();
25620       CPLErr eclass = CPLGetLastErrorType();
25621       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25622         do_confess( CPLGetLastErrorMsg(), 0 );
25623 
25624 
25625 
25626 
25627 
25628       }
25629 
25630 
25631       /*
25632           Make warnings regular Perl warnings. This duplicates the warning
25633           message if DontUseExceptions() is in effect (it is not by default).
25634           */
25635       if ( eclass == CE_Warning ) {
25636         warn( CPLGetLastErrorMsg(), "%s" );
25637       }
25638 
25639 
25640     }
25641     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
25642     XSRETURN(argvi);
25643   fail:
25644     SWIG_croak_null();
25645   }
25646 }
25647 
25648 
XS(_wrap_GetOpenDSCount)25649 XS(_wrap_GetOpenDSCount) {
25650   {
25651     int argvi = 0;
25652     int result;
25653     dXSARGS;
25654 
25655     if ((items < 0) || (items > 0)) {
25656       SWIG_croak("Usage: GetOpenDSCount();");
25657     }
25658     {
25659       CPLErrorReset();
25660       result = (int)OGRGetOpenDSCount();
25661       CPLErr eclass = CPLGetLastErrorType();
25662       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25663         do_confess( CPLGetLastErrorMsg(), 0 );
25664 
25665 
25666 
25667 
25668 
25669       }
25670 
25671 
25672       /*
25673           Make warnings regular Perl warnings. This duplicates the warning
25674           message if DontUseExceptions() is in effect (it is not by default).
25675           */
25676       if ( eclass == CE_Warning ) {
25677         warn( CPLGetLastErrorMsg(), "%s" );
25678       }
25679 
25680 
25681     }
25682     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
25683     XSRETURN(argvi);
25684   fail:
25685     SWIG_croak_null();
25686   }
25687 }
25688 
25689 
XS(_wrap_SetGenerate_DB2_V72_BYTE_ORDER)25690 XS(_wrap_SetGenerate_DB2_V72_BYTE_ORDER) {
25691   {
25692     int arg1 ;
25693     int val1 ;
25694     int ecode1 = 0 ;
25695     int argvi = 0;
25696     OGRErr result;
25697     dXSARGS;
25698 
25699     if ((items < 1) || (items > 1)) {
25700       SWIG_croak("Usage: SetGenerate_DB2_V72_BYTE_ORDER(bGenerate_DB2_V72_BYTE_ORDER);");
25701     }
25702     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
25703     if (!SWIG_IsOK(ecode1)) {
25704       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "SetGenerate_DB2_V72_BYTE_ORDER" "', argument " "1"" of type '" "int""'");
25705     }
25706     arg1 = static_cast< int >(val1);
25707     {
25708       CPLErrorReset();
25709       result = (OGRErr)OGRSetGenerate_DB2_V72_BYTE_ORDER(arg1);
25710       CPLErr eclass = CPLGetLastErrorType();
25711       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25712         do_confess( CPLGetLastErrorMsg(), 0 );
25713 
25714 
25715 
25716 
25717 
25718       }
25719 
25720 
25721       /*
25722           Make warnings regular Perl warnings. This duplicates the warning
25723           message if DontUseExceptions() is in effect (it is not by default).
25724           */
25725       if ( eclass == CE_Warning ) {
25726         warn( CPLGetLastErrorMsg(), "%s" );
25727       }
25728 
25729 
25730     }
25731     {
25732       /* %typemap(out) OGRErr */
25733       if ( result != 0 ) {
25734         const char *err = CPLGetLastErrorMsg();
25735         if (err and *err) do_confess(err, 0); /* this is usually better */
25736         do_confess( OGRErrMessages(result), 1 );
25737       }
25738     }
25739 
25740     XSRETURN(argvi);
25741   fail:
25742 
25743     SWIG_croak_null();
25744   }
25745 }
25746 
25747 
XS(_wrap_RegisterAll)25748 XS(_wrap_RegisterAll) {
25749   {
25750     int argvi = 0;
25751     dXSARGS;
25752 
25753     if ((items < 0) || (items > 0)) {
25754       SWIG_croak("Usage: RegisterAll();");
25755     }
25756     {
25757       CPLErrorReset();
25758       OGRRegisterAll();
25759       CPLErr eclass = CPLGetLastErrorType();
25760       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25761         do_confess( CPLGetLastErrorMsg(), 0 );
25762 
25763 
25764 
25765 
25766 
25767       }
25768 
25769 
25770       /*
25771           Make warnings regular Perl warnings. This duplicates the warning
25772           message if DontUseExceptions() is in effect (it is not by default).
25773           */
25774       if ( eclass == CE_Warning ) {
25775         warn( CPLGetLastErrorMsg(), "%s" );
25776       }
25777 
25778 
25779     }
25780     {
25781       /* %typemap(out) void */
25782     }
25783     XSRETURN(argvi);
25784   fail:
25785     SWIG_croak_null();
25786   }
25787 }
25788 
25789 
XS(_wrap_GeometryTypeToName)25790 XS(_wrap_GeometryTypeToName) {
25791   {
25792     OGRwkbGeometryType arg1 ;
25793     int val1 ;
25794     int ecode1 = 0 ;
25795     int argvi = 0;
25796     char *result = 0 ;
25797     dXSARGS;
25798 
25799     if ((items < 1) || (items > 1)) {
25800       SWIG_croak("Usage: GeometryTypeToName(eType);");
25801     }
25802     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
25803     if (!SWIG_IsOK(ecode1)) {
25804       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "GeometryTypeToName" "', argument " "1"" of type '" "OGRwkbGeometryType""'");
25805     }
25806     arg1 = static_cast< OGRwkbGeometryType >(val1);
25807     {
25808       CPLErrorReset();
25809       result = (char *)OGRGeometryTypeToName(arg1);
25810       CPLErr eclass = CPLGetLastErrorType();
25811       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25812         do_confess( CPLGetLastErrorMsg(), 0 );
25813 
25814 
25815 
25816 
25817 
25818       }
25819 
25820 
25821       /*
25822           Make warnings regular Perl warnings. This duplicates the warning
25823           message if DontUseExceptions() is in effect (it is not by default).
25824           */
25825       if ( eclass == CE_Warning ) {
25826         warn( CPLGetLastErrorMsg(), "%s" );
25827       }
25828 
25829 
25830     }
25831     {
25832       /* %typemap(out) const char * */
25833       ST(argvi) = newSVpv(result, 0);
25834       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
25835       sv_2mortal(ST(argvi));
25836       argvi++;
25837     }
25838 
25839     XSRETURN(argvi);
25840   fail:
25841 
25842     SWIG_croak_null();
25843   }
25844 }
25845 
25846 
XS(_wrap_GetFieldTypeName)25847 XS(_wrap_GetFieldTypeName) {
25848   {
25849     OGRFieldType arg1 ;
25850     int val1 ;
25851     int ecode1 = 0 ;
25852     int argvi = 0;
25853     char *result = 0 ;
25854     dXSARGS;
25855 
25856     if ((items < 1) || (items > 1)) {
25857       SWIG_croak("Usage: GetFieldTypeName(type);");
25858     }
25859     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
25860     if (!SWIG_IsOK(ecode1)) {
25861       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "GetFieldTypeName" "', argument " "1"" of type '" "OGRFieldType""'");
25862     }
25863     arg1 = static_cast< OGRFieldType >(val1);
25864     {
25865       CPLErrorReset();
25866       result = (char *)OGR_GetFieldTypeName(arg1);
25867       CPLErr eclass = CPLGetLastErrorType();
25868       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25869         do_confess( CPLGetLastErrorMsg(), 0 );
25870 
25871 
25872 
25873 
25874 
25875       }
25876 
25877 
25878       /*
25879           Make warnings regular Perl warnings. This duplicates the warning
25880           message if DontUseExceptions() is in effect (it is not by default).
25881           */
25882       if ( eclass == CE_Warning ) {
25883         warn( CPLGetLastErrorMsg(), "%s" );
25884       }
25885 
25886 
25887     }
25888     {
25889       /* %typemap(out) const char * */
25890       ST(argvi) = newSVpv(result, 0);
25891       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
25892       sv_2mortal(ST(argvi));
25893       argvi++;
25894     }
25895 
25896     XSRETURN(argvi);
25897   fail:
25898 
25899     SWIG_croak_null();
25900   }
25901 }
25902 
25903 
XS(_wrap_GetFieldSubTypeName)25904 XS(_wrap_GetFieldSubTypeName) {
25905   {
25906     OGRFieldSubType arg1 ;
25907     int val1 ;
25908     int ecode1 = 0 ;
25909     int argvi = 0;
25910     char *result = 0 ;
25911     dXSARGS;
25912 
25913     if ((items < 1) || (items > 1)) {
25914       SWIG_croak("Usage: GetFieldSubTypeName(type);");
25915     }
25916     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
25917     if (!SWIG_IsOK(ecode1)) {
25918       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "GetFieldSubTypeName" "', argument " "1"" of type '" "OGRFieldSubType""'");
25919     }
25920     arg1 = static_cast< OGRFieldSubType >(val1);
25921     {
25922       CPLErrorReset();
25923       result = (char *)OGR_GetFieldSubTypeName(arg1);
25924       CPLErr eclass = CPLGetLastErrorType();
25925       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25926         do_confess( CPLGetLastErrorMsg(), 0 );
25927 
25928 
25929 
25930 
25931 
25932       }
25933 
25934 
25935       /*
25936           Make warnings regular Perl warnings. This duplicates the warning
25937           message if DontUseExceptions() is in effect (it is not by default).
25938           */
25939       if ( eclass == CE_Warning ) {
25940         warn( CPLGetLastErrorMsg(), "%s" );
25941       }
25942 
25943 
25944     }
25945     {
25946       /* %typemap(out) const char * */
25947       ST(argvi) = newSVpv(result, 0);
25948       SvUTF8_on(ST(argvi)); /* expecting GDAL to give us UTF-8 */
25949       sv_2mortal(ST(argvi));
25950       argvi++;
25951     }
25952 
25953     XSRETURN(argvi);
25954   fail:
25955 
25956     SWIG_croak_null();
25957   }
25958 }
25959 
25960 
XS(_wrap_GT_Flatten)25961 XS(_wrap_GT_Flatten) {
25962   {
25963     OGRwkbGeometryType arg1 ;
25964     int val1 ;
25965     int ecode1 = 0 ;
25966     int argvi = 0;
25967     OGRwkbGeometryType result;
25968     dXSARGS;
25969 
25970     if ((items < 1) || (items > 1)) {
25971       SWIG_croak("Usage: GT_Flatten(eType);");
25972     }
25973     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
25974     if (!SWIG_IsOK(ecode1)) {
25975       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "GT_Flatten" "', argument " "1"" of type '" "OGRwkbGeometryType""'");
25976     }
25977     arg1 = static_cast< OGRwkbGeometryType >(val1);
25978     {
25979       CPLErrorReset();
25980       result = (OGRwkbGeometryType)OGR_GT_Flatten(arg1);
25981       CPLErr eclass = CPLGetLastErrorType();
25982       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
25983         do_confess( CPLGetLastErrorMsg(), 0 );
25984 
25985 
25986 
25987 
25988 
25989       }
25990 
25991 
25992       /*
25993           Make warnings regular Perl warnings. This duplicates the warning
25994           message if DontUseExceptions() is in effect (it is not by default).
25995           */
25996       if ( eclass == CE_Warning ) {
25997         warn( CPLGetLastErrorMsg(), "%s" );
25998       }
25999 
26000 
26001     }
26002     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
26003 
26004     XSRETURN(argvi);
26005   fail:
26006 
26007     SWIG_croak_null();
26008   }
26009 }
26010 
26011 
XS(_wrap_GT_SetZ)26012 XS(_wrap_GT_SetZ) {
26013   {
26014     OGRwkbGeometryType arg1 ;
26015     int val1 ;
26016     int ecode1 = 0 ;
26017     int argvi = 0;
26018     OGRwkbGeometryType result;
26019     dXSARGS;
26020 
26021     if ((items < 1) || (items > 1)) {
26022       SWIG_croak("Usage: GT_SetZ(eType);");
26023     }
26024     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26025     if (!SWIG_IsOK(ecode1)) {
26026       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "GT_SetZ" "', argument " "1"" of type '" "OGRwkbGeometryType""'");
26027     }
26028     arg1 = static_cast< OGRwkbGeometryType >(val1);
26029     {
26030       CPLErrorReset();
26031       result = (OGRwkbGeometryType)OGR_GT_SetZ(arg1);
26032       CPLErr eclass = CPLGetLastErrorType();
26033       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
26034         do_confess( CPLGetLastErrorMsg(), 0 );
26035 
26036 
26037 
26038 
26039 
26040       }
26041 
26042 
26043       /*
26044           Make warnings regular Perl warnings. This duplicates the warning
26045           message if DontUseExceptions() is in effect (it is not by default).
26046           */
26047       if ( eclass == CE_Warning ) {
26048         warn( CPLGetLastErrorMsg(), "%s" );
26049       }
26050 
26051 
26052     }
26053     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
26054 
26055     XSRETURN(argvi);
26056   fail:
26057 
26058     SWIG_croak_null();
26059   }
26060 }
26061 
26062 
XS(_wrap_GT_SetM)26063 XS(_wrap_GT_SetM) {
26064   {
26065     OGRwkbGeometryType arg1 ;
26066     int val1 ;
26067     int ecode1 = 0 ;
26068     int argvi = 0;
26069     OGRwkbGeometryType result;
26070     dXSARGS;
26071 
26072     if ((items < 1) || (items > 1)) {
26073       SWIG_croak("Usage: GT_SetM(eType);");
26074     }
26075     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26076     if (!SWIG_IsOK(ecode1)) {
26077       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "GT_SetM" "', argument " "1"" of type '" "OGRwkbGeometryType""'");
26078     }
26079     arg1 = static_cast< OGRwkbGeometryType >(val1);
26080     {
26081       CPLErrorReset();
26082       result = (OGRwkbGeometryType)OGR_GT_SetM(arg1);
26083       CPLErr eclass = CPLGetLastErrorType();
26084       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
26085         do_confess( CPLGetLastErrorMsg(), 0 );
26086 
26087 
26088 
26089 
26090 
26091       }
26092 
26093 
26094       /*
26095           Make warnings regular Perl warnings. This duplicates the warning
26096           message if DontUseExceptions() is in effect (it is not by default).
26097           */
26098       if ( eclass == CE_Warning ) {
26099         warn( CPLGetLastErrorMsg(), "%s" );
26100       }
26101 
26102 
26103     }
26104     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
26105 
26106     XSRETURN(argvi);
26107   fail:
26108 
26109     SWIG_croak_null();
26110   }
26111 }
26112 
26113 
XS(_wrap_GT_SetModifier)26114 XS(_wrap_GT_SetModifier) {
26115   {
26116     int arg1 ;
26117     int arg2 ;
26118     int arg3 ;
26119     int val1 ;
26120     int ecode1 = 0 ;
26121     int val2 ;
26122     int ecode2 = 0 ;
26123     int val3 ;
26124     int ecode3 = 0 ;
26125     int argvi = 0;
26126     int result;
26127     dXSARGS;
26128 
26129     if ((items < 3) || (items > 3)) {
26130       SWIG_croak("Usage: GT_SetModifier(eType,bSetZ,bSetM);");
26131     }
26132     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26133     if (!SWIG_IsOK(ecode1)) {
26134       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "GT_SetModifier" "', argument " "1"" of type '" "int""'");
26135     }
26136     arg1 = static_cast< int >(val1);
26137     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
26138     if (!SWIG_IsOK(ecode2)) {
26139       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GT_SetModifier" "', argument " "2"" of type '" "int""'");
26140     }
26141     arg2 = static_cast< int >(val2);
26142     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
26143     if (!SWIG_IsOK(ecode3)) {
26144       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GT_SetModifier" "', argument " "3"" of type '" "int""'");
26145     }
26146     arg3 = static_cast< int >(val3);
26147     {
26148       CPLErrorReset();
26149       result = (int)GT_SetModifier(arg1,arg2,arg3);
26150       CPLErr eclass = CPLGetLastErrorType();
26151       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
26152         do_confess( CPLGetLastErrorMsg(), 0 );
26153 
26154 
26155 
26156 
26157 
26158       }
26159 
26160 
26161       /*
26162           Make warnings regular Perl warnings. This duplicates the warning
26163           message if DontUseExceptions() is in effect (it is not by default).
26164           */
26165       if ( eclass == CE_Warning ) {
26166         warn( CPLGetLastErrorMsg(), "%s" );
26167       }
26168 
26169 
26170     }
26171     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
26172 
26173 
26174 
26175     XSRETURN(argvi);
26176   fail:
26177 
26178 
26179 
26180     SWIG_croak_null();
26181   }
26182 }
26183 
26184 
XS(_wrap_GT_HasZ)26185 XS(_wrap_GT_HasZ) {
26186   {
26187     OGRwkbGeometryType arg1 ;
26188     int val1 ;
26189     int ecode1 = 0 ;
26190     int argvi = 0;
26191     int result;
26192     dXSARGS;
26193 
26194     if ((items < 1) || (items > 1)) {
26195       SWIG_croak("Usage: GT_HasZ(eType);");
26196     }
26197     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26198     if (!SWIG_IsOK(ecode1)) {
26199       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "GT_HasZ" "', argument " "1"" of type '" "OGRwkbGeometryType""'");
26200     }
26201     arg1 = static_cast< OGRwkbGeometryType >(val1);
26202     {
26203       CPLErrorReset();
26204       result = (int)OGR_GT_HasZ(arg1);
26205       CPLErr eclass = CPLGetLastErrorType();
26206       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
26207         do_confess( CPLGetLastErrorMsg(), 0 );
26208 
26209 
26210 
26211 
26212 
26213       }
26214 
26215 
26216       /*
26217           Make warnings regular Perl warnings. This duplicates the warning
26218           message if DontUseExceptions() is in effect (it is not by default).
26219           */
26220       if ( eclass == CE_Warning ) {
26221         warn( CPLGetLastErrorMsg(), "%s" );
26222       }
26223 
26224 
26225     }
26226     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
26227 
26228     XSRETURN(argvi);
26229   fail:
26230 
26231     SWIG_croak_null();
26232   }
26233 }
26234 
26235 
XS(_wrap_GT_HasM)26236 XS(_wrap_GT_HasM) {
26237   {
26238     OGRwkbGeometryType arg1 ;
26239     int val1 ;
26240     int ecode1 = 0 ;
26241     int argvi = 0;
26242     int result;
26243     dXSARGS;
26244 
26245     if ((items < 1) || (items > 1)) {
26246       SWIG_croak("Usage: GT_HasM(eType);");
26247     }
26248     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26249     if (!SWIG_IsOK(ecode1)) {
26250       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "GT_HasM" "', argument " "1"" of type '" "OGRwkbGeometryType""'");
26251     }
26252     arg1 = static_cast< OGRwkbGeometryType >(val1);
26253     {
26254       CPLErrorReset();
26255       result = (int)OGR_GT_HasM(arg1);
26256       CPLErr eclass = CPLGetLastErrorType();
26257       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
26258         do_confess( CPLGetLastErrorMsg(), 0 );
26259 
26260 
26261 
26262 
26263 
26264       }
26265 
26266 
26267       /*
26268           Make warnings regular Perl warnings. This duplicates the warning
26269           message if DontUseExceptions() is in effect (it is not by default).
26270           */
26271       if ( eclass == CE_Warning ) {
26272         warn( CPLGetLastErrorMsg(), "%s" );
26273       }
26274 
26275 
26276     }
26277     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
26278 
26279     XSRETURN(argvi);
26280   fail:
26281 
26282     SWIG_croak_null();
26283   }
26284 }
26285 
26286 
XS(_wrap_GT_IsSubClassOf)26287 XS(_wrap_GT_IsSubClassOf) {
26288   {
26289     OGRwkbGeometryType arg1 ;
26290     OGRwkbGeometryType arg2 ;
26291     int val1 ;
26292     int ecode1 = 0 ;
26293     int val2 ;
26294     int ecode2 = 0 ;
26295     int argvi = 0;
26296     int result;
26297     dXSARGS;
26298 
26299     if ((items < 2) || (items > 2)) {
26300       SWIG_croak("Usage: GT_IsSubClassOf(eType,eSuperType);");
26301     }
26302     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26303     if (!SWIG_IsOK(ecode1)) {
26304       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "GT_IsSubClassOf" "', argument " "1"" of type '" "OGRwkbGeometryType""'");
26305     }
26306     arg1 = static_cast< OGRwkbGeometryType >(val1);
26307     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
26308     if (!SWIG_IsOK(ecode2)) {
26309       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GT_IsSubClassOf" "', argument " "2"" of type '" "OGRwkbGeometryType""'");
26310     }
26311     arg2 = static_cast< OGRwkbGeometryType >(val2);
26312     {
26313       CPLErrorReset();
26314       result = (int)OGR_GT_IsSubClassOf(arg1,arg2);
26315       CPLErr eclass = CPLGetLastErrorType();
26316       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
26317         do_confess( CPLGetLastErrorMsg(), 0 );
26318 
26319 
26320 
26321 
26322 
26323       }
26324 
26325 
26326       /*
26327           Make warnings regular Perl warnings. This duplicates the warning
26328           message if DontUseExceptions() is in effect (it is not by default).
26329           */
26330       if ( eclass == CE_Warning ) {
26331         warn( CPLGetLastErrorMsg(), "%s" );
26332       }
26333 
26334 
26335     }
26336     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
26337 
26338 
26339     XSRETURN(argvi);
26340   fail:
26341 
26342 
26343     SWIG_croak_null();
26344   }
26345 }
26346 
26347 
XS(_wrap_GT_IsCurve)26348 XS(_wrap_GT_IsCurve) {
26349   {
26350     OGRwkbGeometryType arg1 ;
26351     int val1 ;
26352     int ecode1 = 0 ;
26353     int argvi = 0;
26354     int result;
26355     dXSARGS;
26356 
26357     if ((items < 1) || (items > 1)) {
26358       SWIG_croak("Usage: GT_IsCurve(OGRwkbGeometryType);");
26359     }
26360     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26361     if (!SWIG_IsOK(ecode1)) {
26362       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "GT_IsCurve" "', argument " "1"" of type '" "OGRwkbGeometryType""'");
26363     }
26364     arg1 = static_cast< OGRwkbGeometryType >(val1);
26365     {
26366       CPLErrorReset();
26367       result = (int)OGR_GT_IsCurve(arg1);
26368       CPLErr eclass = CPLGetLastErrorType();
26369       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
26370         do_confess( CPLGetLastErrorMsg(), 0 );
26371 
26372 
26373 
26374 
26375 
26376       }
26377 
26378 
26379       /*
26380           Make warnings regular Perl warnings. This duplicates the warning
26381           message if DontUseExceptions() is in effect (it is not by default).
26382           */
26383       if ( eclass == CE_Warning ) {
26384         warn( CPLGetLastErrorMsg(), "%s" );
26385       }
26386 
26387 
26388     }
26389     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
26390 
26391     XSRETURN(argvi);
26392   fail:
26393 
26394     SWIG_croak_null();
26395   }
26396 }
26397 
26398 
XS(_wrap_GT_IsSurface)26399 XS(_wrap_GT_IsSurface) {
26400   {
26401     OGRwkbGeometryType arg1 ;
26402     int val1 ;
26403     int ecode1 = 0 ;
26404     int argvi = 0;
26405     int result;
26406     dXSARGS;
26407 
26408     if ((items < 1) || (items > 1)) {
26409       SWIG_croak("Usage: GT_IsSurface(OGRwkbGeometryType);");
26410     }
26411     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26412     if (!SWIG_IsOK(ecode1)) {
26413       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "GT_IsSurface" "', argument " "1"" of type '" "OGRwkbGeometryType""'");
26414     }
26415     arg1 = static_cast< OGRwkbGeometryType >(val1);
26416     {
26417       CPLErrorReset();
26418       result = (int)OGR_GT_IsSurface(arg1);
26419       CPLErr eclass = CPLGetLastErrorType();
26420       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
26421         do_confess( CPLGetLastErrorMsg(), 0 );
26422 
26423 
26424 
26425 
26426 
26427       }
26428 
26429 
26430       /*
26431           Make warnings regular Perl warnings. This duplicates the warning
26432           message if DontUseExceptions() is in effect (it is not by default).
26433           */
26434       if ( eclass == CE_Warning ) {
26435         warn( CPLGetLastErrorMsg(), "%s" );
26436       }
26437 
26438 
26439     }
26440     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
26441 
26442     XSRETURN(argvi);
26443   fail:
26444 
26445     SWIG_croak_null();
26446   }
26447 }
26448 
26449 
XS(_wrap_GT_IsNonLinear)26450 XS(_wrap_GT_IsNonLinear) {
26451   {
26452     OGRwkbGeometryType arg1 ;
26453     int val1 ;
26454     int ecode1 = 0 ;
26455     int argvi = 0;
26456     int result;
26457     dXSARGS;
26458 
26459     if ((items < 1) || (items > 1)) {
26460       SWIG_croak("Usage: GT_IsNonLinear(OGRwkbGeometryType);");
26461     }
26462     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26463     if (!SWIG_IsOK(ecode1)) {
26464       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "GT_IsNonLinear" "', argument " "1"" of type '" "OGRwkbGeometryType""'");
26465     }
26466     arg1 = static_cast< OGRwkbGeometryType >(val1);
26467     {
26468       CPLErrorReset();
26469       result = (int)OGR_GT_IsNonLinear(arg1);
26470       CPLErr eclass = CPLGetLastErrorType();
26471       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
26472         do_confess( CPLGetLastErrorMsg(), 0 );
26473 
26474 
26475 
26476 
26477 
26478       }
26479 
26480 
26481       /*
26482           Make warnings regular Perl warnings. This duplicates the warning
26483           message if DontUseExceptions() is in effect (it is not by default).
26484           */
26485       if ( eclass == CE_Warning ) {
26486         warn( CPLGetLastErrorMsg(), "%s" );
26487       }
26488 
26489 
26490     }
26491     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
26492 
26493     XSRETURN(argvi);
26494   fail:
26495 
26496     SWIG_croak_null();
26497   }
26498 }
26499 
26500 
XS(_wrap_GT_GetCollection)26501 XS(_wrap_GT_GetCollection) {
26502   {
26503     OGRwkbGeometryType arg1 ;
26504     int val1 ;
26505     int ecode1 = 0 ;
26506     int argvi = 0;
26507     OGRwkbGeometryType result;
26508     dXSARGS;
26509 
26510     if ((items < 1) || (items > 1)) {
26511       SWIG_croak("Usage: GT_GetCollection(eType);");
26512     }
26513     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26514     if (!SWIG_IsOK(ecode1)) {
26515       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "GT_GetCollection" "', argument " "1"" of type '" "OGRwkbGeometryType""'");
26516     }
26517     arg1 = static_cast< OGRwkbGeometryType >(val1);
26518     {
26519       CPLErrorReset();
26520       result = (OGRwkbGeometryType)OGR_GT_GetCollection(arg1);
26521       CPLErr eclass = CPLGetLastErrorType();
26522       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
26523         do_confess( CPLGetLastErrorMsg(), 0 );
26524 
26525 
26526 
26527 
26528 
26529       }
26530 
26531 
26532       /*
26533           Make warnings regular Perl warnings. This duplicates the warning
26534           message if DontUseExceptions() is in effect (it is not by default).
26535           */
26536       if ( eclass == CE_Warning ) {
26537         warn( CPLGetLastErrorMsg(), "%s" );
26538       }
26539 
26540 
26541     }
26542     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
26543 
26544     XSRETURN(argvi);
26545   fail:
26546 
26547     SWIG_croak_null();
26548   }
26549 }
26550 
26551 
XS(_wrap_GT_GetCurve)26552 XS(_wrap_GT_GetCurve) {
26553   {
26554     OGRwkbGeometryType arg1 ;
26555     int val1 ;
26556     int ecode1 = 0 ;
26557     int argvi = 0;
26558     OGRwkbGeometryType result;
26559     dXSARGS;
26560 
26561     if ((items < 1) || (items > 1)) {
26562       SWIG_croak("Usage: GT_GetCurve(eType);");
26563     }
26564     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26565     if (!SWIG_IsOK(ecode1)) {
26566       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "GT_GetCurve" "', argument " "1"" of type '" "OGRwkbGeometryType""'");
26567     }
26568     arg1 = static_cast< OGRwkbGeometryType >(val1);
26569     {
26570       CPLErrorReset();
26571       result = (OGRwkbGeometryType)OGR_GT_GetCurve(arg1);
26572       CPLErr eclass = CPLGetLastErrorType();
26573       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
26574         do_confess( CPLGetLastErrorMsg(), 0 );
26575 
26576 
26577 
26578 
26579 
26580       }
26581 
26582 
26583       /*
26584           Make warnings regular Perl warnings. This duplicates the warning
26585           message if DontUseExceptions() is in effect (it is not by default).
26586           */
26587       if ( eclass == CE_Warning ) {
26588         warn( CPLGetLastErrorMsg(), "%s" );
26589       }
26590 
26591 
26592     }
26593     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
26594 
26595     XSRETURN(argvi);
26596   fail:
26597 
26598     SWIG_croak_null();
26599   }
26600 }
26601 
26602 
XS(_wrap_GT_GetLinear)26603 XS(_wrap_GT_GetLinear) {
26604   {
26605     OGRwkbGeometryType arg1 ;
26606     int val1 ;
26607     int ecode1 = 0 ;
26608     int argvi = 0;
26609     OGRwkbGeometryType result;
26610     dXSARGS;
26611 
26612     if ((items < 1) || (items > 1)) {
26613       SWIG_croak("Usage: GT_GetLinear(eType);");
26614     }
26615     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26616     if (!SWIG_IsOK(ecode1)) {
26617       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "GT_GetLinear" "', argument " "1"" of type '" "OGRwkbGeometryType""'");
26618     }
26619     arg1 = static_cast< OGRwkbGeometryType >(val1);
26620     {
26621       CPLErrorReset();
26622       result = (OGRwkbGeometryType)OGR_GT_GetLinear(arg1);
26623       CPLErr eclass = CPLGetLastErrorType();
26624       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
26625         do_confess( CPLGetLastErrorMsg(), 0 );
26626 
26627 
26628 
26629 
26630 
26631       }
26632 
26633 
26634       /*
26635           Make warnings regular Perl warnings. This duplicates the warning
26636           message if DontUseExceptions() is in effect (it is not by default).
26637           */
26638       if ( eclass == CE_Warning ) {
26639         warn( CPLGetLastErrorMsg(), "%s" );
26640       }
26641 
26642 
26643     }
26644     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
26645 
26646     XSRETURN(argvi);
26647   fail:
26648 
26649     SWIG_croak_null();
26650   }
26651 }
26652 
26653 
XS(_wrap_SetNonLinearGeometriesEnabledFlag)26654 XS(_wrap_SetNonLinearGeometriesEnabledFlag) {
26655   {
26656     int arg1 ;
26657     int val1 ;
26658     int ecode1 = 0 ;
26659     int argvi = 0;
26660     dXSARGS;
26661 
26662     if ((items < 1) || (items > 1)) {
26663       SWIG_croak("Usage: SetNonLinearGeometriesEnabledFlag(bFlag);");
26664     }
26665     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26666     if (!SWIG_IsOK(ecode1)) {
26667       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "SetNonLinearGeometriesEnabledFlag" "', argument " "1"" of type '" "int""'");
26668     }
26669     arg1 = static_cast< int >(val1);
26670     {
26671       CPLErrorReset();
26672       OGRSetNonLinearGeometriesEnabledFlag(arg1);
26673       CPLErr eclass = CPLGetLastErrorType();
26674       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
26675         do_confess( CPLGetLastErrorMsg(), 0 );
26676 
26677 
26678 
26679 
26680 
26681       }
26682 
26683 
26684       /*
26685           Make warnings regular Perl warnings. This duplicates the warning
26686           message if DontUseExceptions() is in effect (it is not by default).
26687           */
26688       if ( eclass == CE_Warning ) {
26689         warn( CPLGetLastErrorMsg(), "%s" );
26690       }
26691 
26692 
26693     }
26694     {
26695       /* %typemap(out) void */
26696     }
26697 
26698     XSRETURN(argvi);
26699   fail:
26700 
26701     SWIG_croak_null();
26702   }
26703 }
26704 
26705 
XS(_wrap_GetNonLinearGeometriesEnabledFlag)26706 XS(_wrap_GetNonLinearGeometriesEnabledFlag) {
26707   {
26708     int argvi = 0;
26709     int result;
26710     dXSARGS;
26711 
26712     if ((items < 0) || (items > 0)) {
26713       SWIG_croak("Usage: GetNonLinearGeometriesEnabledFlag();");
26714     }
26715     {
26716       CPLErrorReset();
26717       result = (int)OGRGetNonLinearGeometriesEnabledFlag();
26718       CPLErr eclass = CPLGetLastErrorType();
26719       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
26720         do_confess( CPLGetLastErrorMsg(), 0 );
26721 
26722 
26723 
26724 
26725 
26726       }
26727 
26728 
26729       /*
26730           Make warnings regular Perl warnings. This duplicates the warning
26731           message if DontUseExceptions() is in effect (it is not by default).
26732           */
26733       if ( eclass == CE_Warning ) {
26734         warn( CPLGetLastErrorMsg(), "%s" );
26735       }
26736 
26737 
26738     }
26739     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
26740     XSRETURN(argvi);
26741   fail:
26742     SWIG_croak_null();
26743   }
26744 }
26745 
26746 
XS(_wrap_TermProgress_nocb)26747 XS(_wrap_TermProgress_nocb) {
26748   {
26749     double arg1 ;
26750     char *arg2 = (char *) NULL ;
26751     void *arg3 = (void *) NULL ;
26752     double val1 ;
26753     int ecode1 = 0 ;
26754     int res2 ;
26755     char *buf2 = 0 ;
26756     int alloc2 = 0 ;
26757     int res3 ;
26758     int argvi = 0;
26759     int result;
26760     dXSARGS;
26761 
26762     if ((items < 1) || (items > 3)) {
26763       SWIG_croak("Usage: TermProgress_nocb(dfProgress,pszMessage,pData);");
26764     }
26765     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26766     if (!SWIG_IsOK(ecode1)) {
26767       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "TermProgress_nocb" "', argument " "1"" of type '" "double""'");
26768     }
26769     arg1 = static_cast< double >(val1);
26770     if (items > 1) {
26771       res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
26772       if (!SWIG_IsOK(res2)) {
26773         SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "TermProgress_nocb" "', argument " "2"" of type '" "char const *""'");
26774       }
26775       arg2 = reinterpret_cast< char * >(buf2);
26776     }
26777     if (items > 2) {
26778       res3 = SWIG_ConvertPtr(ST(2),SWIG_as_voidptrptr(&arg3), 0, 0);
26779       if (!SWIG_IsOK(res3)) {
26780         SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "TermProgress_nocb" "', argument " "3"" of type '" "void *""'");
26781       }
26782     }
26783     {
26784       CPLErrorReset();
26785       result = (int)GDALTermProgress_nocb(arg1,(char const *)arg2,arg3);
26786       CPLErr eclass = CPLGetLastErrorType();
26787       if ( eclass == CE_Failure || eclass == CE_Fatal ) {
26788         do_confess( CPLGetLastErrorMsg(), 0 );
26789 
26790 
26791 
26792 
26793 
26794       }
26795 
26796 
26797       /*
26798           Make warnings regular Perl warnings. This duplicates the warning
26799           message if DontUseExceptions() is in effect (it is not by default).
26800           */
26801       if ( eclass == CE_Warning ) {
26802         warn( CPLGetLastErrorMsg(), "%s" );
26803       }
26804 
26805 
26806     }
26807     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
26808 
26809     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
26810 
26811     XSRETURN(argvi);
26812   fail:
26813 
26814     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
26815 
26816     SWIG_croak_null();
26817   }
26818 }
26819 
26820 
26821 
26822 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
26823 
_p_OGRLayerShadowTo_p_GDALMajorObjectShadow(void * x,int * SWIGUNUSEDPARM (newmemory))26824 static void *_p_OGRLayerShadowTo_p_GDALMajorObjectShadow(void *x, int *SWIGUNUSEDPARM(newmemory)) {
26825     return (void *)((GDALMajorObjectShadow *)  ((OGRLayerShadow *) x));
26826 }
26827 static swig_type_info _swigt__p_GDALMajorObjectShadow = {"_p_GDALMajorObjectShadow", "GDALMajorObjectShadow *", 0, 0, (void*)"Geo::GDAL::MajorObject", 0};
26828 static swig_type_info _swigt__p_GIntBig = {"_p_GIntBig", "GIntBig *", 0, 0, (void*)0, 0};
26829 static swig_type_info _swigt__p_OGRFeatureDefnShadow = {"_p_OGRFeatureDefnShadow", "OGRFeatureDefnShadow *", 0, 0, (void*)"Geo::OGR::FeatureDefn", 0};
26830 static swig_type_info _swigt__p_OGRFeatureShadow = {"_p_OGRFeatureShadow", "OGRFeatureShadow *", 0, 0, (void*)"Geo::OGR::Feature", 0};
26831 static swig_type_info _swigt__p_OGRFieldDefnShadow = {"_p_OGRFieldDefnShadow", "OGRFieldDefnShadow *", 0, 0, (void*)"Geo::OGR::FieldDefn", 0};
26832 static swig_type_info _swigt__p_OGRFieldDomainShadow = {"_p_OGRFieldDomainShadow", "OGRFieldDomainShadow *", 0, 0, (void*)"Geo::OGR::FieldDomain", 0};
26833 static swig_type_info _swigt__p_OGRGeomFieldDefnShadow = {"_p_OGRGeomFieldDefnShadow", "OGRGeomFieldDefnShadow *", 0, 0, (void*)"Geo::OGR::GeomFieldDefn", 0};
26834 static swig_type_info _swigt__p_OGRGeomTransformerShadow = {"_p_OGRGeomTransformerShadow", "OGRGeomTransformerShadow *", 0, 0, (void*)"Geo::OGR::GeomTransformer", 0};
26835 static swig_type_info _swigt__p_OGRGeometryShadow = {"_p_OGRGeometryShadow", "OGRGeometryShadow *", 0, 0, (void*)"Geo::OGR::Geometry", 0};
26836 static swig_type_info _swigt__p_OGRLayerShadow = {"_p_OGRLayerShadow", "OGRLayerShadow *", 0, 0, (void*)"Geo::OGR::Layer", 0};
26837 static swig_type_info _swigt__p_OGRPreparedGeometryShadow = {"_p_OGRPreparedGeometryShadow", "OGRPreparedGeometryShadow *", 0, 0, (void*)"Geo::OGR::PreparedGeometry", 0};
26838 static swig_type_info _swigt__p_OGRStyleTableShadow = {"_p_OGRStyleTableShadow", "OGRStyleTableShadow *", 0, 0, (void*)"Geo::OGR::StyleTable", 0};
26839 static swig_type_info _swigt__p_OSRCoordinateTransformationShadow = {"_p_OSRCoordinateTransformationShadow", "OSRCoordinateTransformationShadow *", 0, 0, (void*)"Geo::OSR::CoordinateTransformation", 0};
26840 static swig_type_info _swigt__p_OSRSpatialReferenceShadow = {"_p_OSRSpatialReferenceShadow", "OSRSpatialReferenceShadow *", 0, 0, (void*)"Geo::OSR::SpatialReference", 0};
26841 static swig_type_info _swigt__p_char = {"_p_char", "char *|retStringAndCPLFree *", 0, 0, (void*)0, 0};
26842 static swig_type_info _swigt__p_double = {"_p_double", "double *", 0, 0, (void*)0, 0};
26843 static swig_type_info _swigt__p_f_double_p_q_const__char_p_void__int = {"_p_f_double_p_q_const__char_p_void__int", "int (*)(double,char const *,void *)", 0, 0, (void*)0, 0};
26844 static swig_type_info _swigt__p_float = {"_p_float", "float *", 0, 0, (void*)0, 0};
26845 static swig_type_info _swigt__p_int = {"_p_int", "OGRFieldSubType *|OSRAxisMappingStrategy *|OGRFieldDomainType *|OGRFieldType *|int *|OGRwkbGeometryType *|OGRJustification *|OGRAxisOrientation *|OGRFieldDomainSplitPolicy *|OGRFieldDomainMergePolicy *|OGRwkbByteOrder *|OGRErr *", 0, 0, (void*)0, 0};
26846 static swig_type_info _swigt__p_p_GIntBig = {"_p_p_GIntBig", "GIntBig **", 0, 0, (void*)0, 0};
26847 static swig_type_info _swigt__p_p_char = {"_p_p_char", "char **", 0, 0, (void*)0, 0};
26848 static swig_type_info _swigt__p_p_double = {"_p_p_double", "double **", 0, 0, (void*)0, 0};
26849 static swig_type_info _swigt__p_p_int = {"_p_p_int", "int **", 0, 0, (void*)0, 0};
26850 static swig_type_info _swigt__p_p_p_char = {"_p_p_p_char", "char ***", 0, 0, (void*)0, 0};
26851 
26852 static swig_type_info *swig_type_initial[] = {
26853   &_swigt__p_GDALMajorObjectShadow,
26854   &_swigt__p_GIntBig,
26855   &_swigt__p_OGRFeatureDefnShadow,
26856   &_swigt__p_OGRFeatureShadow,
26857   &_swigt__p_OGRFieldDefnShadow,
26858   &_swigt__p_OGRFieldDomainShadow,
26859   &_swigt__p_OGRGeomFieldDefnShadow,
26860   &_swigt__p_OGRGeomTransformerShadow,
26861   &_swigt__p_OGRGeometryShadow,
26862   &_swigt__p_OGRLayerShadow,
26863   &_swigt__p_OGRPreparedGeometryShadow,
26864   &_swigt__p_OGRStyleTableShadow,
26865   &_swigt__p_OSRCoordinateTransformationShadow,
26866   &_swigt__p_OSRSpatialReferenceShadow,
26867   &_swigt__p_char,
26868   &_swigt__p_double,
26869   &_swigt__p_f_double_p_q_const__char_p_void__int,
26870   &_swigt__p_float,
26871   &_swigt__p_int,
26872   &_swigt__p_p_GIntBig,
26873   &_swigt__p_p_char,
26874   &_swigt__p_p_double,
26875   &_swigt__p_p_int,
26876   &_swigt__p_p_p_char,
26877 };
26878 
26879 static swig_cast_info _swigc__p_GDALMajorObjectShadow[] = {  {&_swigt__p_GDALMajorObjectShadow, 0, 0, 0},  {&_swigt__p_OGRLayerShadow, _p_OGRLayerShadowTo_p_GDALMajorObjectShadow, 0, 0},{0, 0, 0, 0}};
26880 static swig_cast_info _swigc__p_GIntBig[] = {  {&_swigt__p_GIntBig, 0, 0, 0},{0, 0, 0, 0}};
26881 static swig_cast_info _swigc__p_OGRFeatureDefnShadow[] = {  {&_swigt__p_OGRFeatureDefnShadow, 0, 0, 0},{0, 0, 0, 0}};
26882 static swig_cast_info _swigc__p_OGRFeatureShadow[] = {  {&_swigt__p_OGRFeatureShadow, 0, 0, 0},{0, 0, 0, 0}};
26883 static swig_cast_info _swigc__p_OGRFieldDefnShadow[] = {  {&_swigt__p_OGRFieldDefnShadow, 0, 0, 0},{0, 0, 0, 0}};
26884 static swig_cast_info _swigc__p_OGRFieldDomainShadow[] = {  {&_swigt__p_OGRFieldDomainShadow, 0, 0, 0},{0, 0, 0, 0}};
26885 static swig_cast_info _swigc__p_OGRGeomFieldDefnShadow[] = {  {&_swigt__p_OGRGeomFieldDefnShadow, 0, 0, 0},{0, 0, 0, 0}};
26886 static swig_cast_info _swigc__p_OGRGeomTransformerShadow[] = {  {&_swigt__p_OGRGeomTransformerShadow, 0, 0, 0},{0, 0, 0, 0}};
26887 static swig_cast_info _swigc__p_OGRGeometryShadow[] = {  {&_swigt__p_OGRGeometryShadow, 0, 0, 0},{0, 0, 0, 0}};
26888 static swig_cast_info _swigc__p_OGRLayerShadow[] = {  {&_swigt__p_OGRLayerShadow, 0, 0, 0},{0, 0, 0, 0}};
26889 static swig_cast_info _swigc__p_OGRPreparedGeometryShadow[] = {  {&_swigt__p_OGRPreparedGeometryShadow, 0, 0, 0},{0, 0, 0, 0}};
26890 static swig_cast_info _swigc__p_OGRStyleTableShadow[] = {  {&_swigt__p_OGRStyleTableShadow, 0, 0, 0},{0, 0, 0, 0}};
26891 static swig_cast_info _swigc__p_OSRCoordinateTransformationShadow[] = {  {&_swigt__p_OSRCoordinateTransformationShadow, 0, 0, 0},{0, 0, 0, 0}};
26892 static swig_cast_info _swigc__p_OSRSpatialReferenceShadow[] = {  {&_swigt__p_OSRSpatialReferenceShadow, 0, 0, 0},{0, 0, 0, 0}};
26893 static swig_cast_info _swigc__p_char[] = {  {&_swigt__p_char, 0, 0, 0},{0, 0, 0, 0}};
26894 static swig_cast_info _swigc__p_double[] = {  {&_swigt__p_double, 0, 0, 0},{0, 0, 0, 0}};
26895 static swig_cast_info _swigc__p_f_double_p_q_const__char_p_void__int[] = {  {&_swigt__p_f_double_p_q_const__char_p_void__int, 0, 0, 0},{0, 0, 0, 0}};
26896 static swig_cast_info _swigc__p_float[] = {  {&_swigt__p_float, 0, 0, 0},{0, 0, 0, 0}};
26897 static swig_cast_info _swigc__p_int[] = {  {&_swigt__p_int, 0, 0, 0},{0, 0, 0, 0}};
26898 static swig_cast_info _swigc__p_p_GIntBig[] = {  {&_swigt__p_p_GIntBig, 0, 0, 0},{0, 0, 0, 0}};
26899 static swig_cast_info _swigc__p_p_char[] = {  {&_swigt__p_p_char, 0, 0, 0},{0, 0, 0, 0}};
26900 static swig_cast_info _swigc__p_p_double[] = {  {&_swigt__p_p_double, 0, 0, 0},{0, 0, 0, 0}};
26901 static swig_cast_info _swigc__p_p_int[] = {  {&_swigt__p_p_int, 0, 0, 0},{0, 0, 0, 0}};
26902 static swig_cast_info _swigc__p_p_p_char[] = {  {&_swigt__p_p_p_char, 0, 0, 0},{0, 0, 0, 0}};
26903 
26904 static swig_cast_info *swig_cast_initial[] = {
26905   _swigc__p_GDALMajorObjectShadow,
26906   _swigc__p_GIntBig,
26907   _swigc__p_OGRFeatureDefnShadow,
26908   _swigc__p_OGRFeatureShadow,
26909   _swigc__p_OGRFieldDefnShadow,
26910   _swigc__p_OGRFieldDomainShadow,
26911   _swigc__p_OGRGeomFieldDefnShadow,
26912   _swigc__p_OGRGeomTransformerShadow,
26913   _swigc__p_OGRGeometryShadow,
26914   _swigc__p_OGRLayerShadow,
26915   _swigc__p_OGRPreparedGeometryShadow,
26916   _swigc__p_OGRStyleTableShadow,
26917   _swigc__p_OSRCoordinateTransformationShadow,
26918   _swigc__p_OSRSpatialReferenceShadow,
26919   _swigc__p_char,
26920   _swigc__p_double,
26921   _swigc__p_f_double_p_q_const__char_p_void__int,
26922   _swigc__p_float,
26923   _swigc__p_int,
26924   _swigc__p_p_GIntBig,
26925   _swigc__p_p_char,
26926   _swigc__p_p_double,
26927   _swigc__p_p_int,
26928   _swigc__p_p_p_char,
26929 };
26930 
26931 
26932 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */
26933 
26934 static swig_constant_info swig_constants[] = {
26935 {0,0,0,0,0,0}
26936 };
26937 #ifdef __cplusplus
26938 }
26939 #endif
26940 static swig_variable_info swig_variables[] = {
26941 {0,0,0,0}
26942 };
26943 static swig_command_info swig_commands[] = {
26944 {"Geo::OGRc::UseExceptions", _wrap_UseExceptions},
26945 {"Geo::OGRc::DontUseExceptions", _wrap_DontUseExceptions},
26946 {"Geo::OGRc::new_StyleTable", _wrap_new_StyleTable},
26947 {"Geo::OGRc::delete_StyleTable", _wrap_delete_StyleTable},
26948 {"Geo::OGRc::StyleTable_AddStyle", _wrap_StyleTable_AddStyle},
26949 {"Geo::OGRc::StyleTable_LoadStyleTable", _wrap_StyleTable_LoadStyleTable},
26950 {"Geo::OGRc::StyleTable_SaveStyleTable", _wrap_StyleTable_SaveStyleTable},
26951 {"Geo::OGRc::StyleTable_Find", _wrap_StyleTable_Find},
26952 {"Geo::OGRc::StyleTable_ResetStyleStringReading", _wrap_StyleTable_ResetStyleStringReading},
26953 {"Geo::OGRc::StyleTable_GetNextStyle", _wrap_StyleTable_GetNextStyle},
26954 {"Geo::OGRc::StyleTable_GetLastStyleName", _wrap_StyleTable_GetLastStyleName},
26955 {"Geo::OGRc::Layer_GetRefCount", _wrap_Layer_GetRefCount},
26956 {"Geo::OGRc::Layer_SetSpatialFilter", _wrap_Layer_SetSpatialFilter},
26957 {"Geo::OGRc::Layer_SetSpatialFilterRect", _wrap_Layer_SetSpatialFilterRect},
26958 {"Geo::OGRc::Layer_GetSpatialFilter", _wrap_Layer_GetSpatialFilter},
26959 {"Geo::OGRc::Layer_SetAttributeFilter", _wrap_Layer_SetAttributeFilter},
26960 {"Geo::OGRc::Layer_ResetReading", _wrap_Layer_ResetReading},
26961 {"Geo::OGRc::Layer_GetName", _wrap_Layer_GetName},
26962 {"Geo::OGRc::Layer_GetGeomType", _wrap_Layer_GetGeomType},
26963 {"Geo::OGRc::Layer_GetGeometryColumn", _wrap_Layer_GetGeometryColumn},
26964 {"Geo::OGRc::Layer_GetFIDColumn", _wrap_Layer_GetFIDColumn},
26965 {"Geo::OGRc::Layer__GetFeature", _wrap_Layer__GetFeature},
26966 {"Geo::OGRc::Layer_GetNextFeature", _wrap_Layer_GetNextFeature},
26967 {"Geo::OGRc::Layer_SetNextByIndex", _wrap_Layer_SetNextByIndex},
26968 {"Geo::OGRc::Layer_SetFeature", _wrap_Layer_SetFeature},
26969 {"Geo::OGRc::Layer_CreateFeature", _wrap_Layer_CreateFeature},
26970 {"Geo::OGRc::Layer_DeleteFeature", _wrap_Layer_DeleteFeature},
26971 {"Geo::OGRc::Layer_SyncToDisk", _wrap_Layer_SyncToDisk},
26972 {"Geo::OGRc::Layer_GetLayerDefn", _wrap_Layer_GetLayerDefn},
26973 {"Geo::OGRc::Layer_GetFeatureCount", _wrap_Layer_GetFeatureCount},
26974 {"Geo::OGRc::Layer_GetExtent", _wrap_Layer_GetExtent},
26975 {"Geo::OGRc::Layer__TestCapability", _wrap_Layer__TestCapability},
26976 {"Geo::OGRc::Layer__CreateField", _wrap_Layer__CreateField},
26977 {"Geo::OGRc::Layer__DeleteField", _wrap_Layer__DeleteField},
26978 {"Geo::OGRc::Layer_ReorderField", _wrap_Layer_ReorderField},
26979 {"Geo::OGRc::Layer_ReorderFields", _wrap_Layer_ReorderFields},
26980 {"Geo::OGRc::Layer__AlterFieldDefn", _wrap_Layer__AlterFieldDefn},
26981 {"Geo::OGRc::Layer_CreateGeomField", _wrap_Layer_CreateGeomField},
26982 {"Geo::OGRc::Layer_StartTransaction", _wrap_Layer_StartTransaction},
26983 {"Geo::OGRc::Layer_CommitTransaction", _wrap_Layer_CommitTransaction},
26984 {"Geo::OGRc::Layer_RollbackTransaction", _wrap_Layer_RollbackTransaction},
26985 {"Geo::OGRc::Layer_FindFieldIndex", _wrap_Layer_FindFieldIndex},
26986 {"Geo::OGRc::Layer_GetSpatialRef", _wrap_Layer_GetSpatialRef},
26987 {"Geo::OGRc::Layer_GetFeaturesRead", _wrap_Layer_GetFeaturesRead},
26988 {"Geo::OGRc::Layer_SetIgnoredFields", _wrap_Layer_SetIgnoredFields},
26989 {"Geo::OGRc::Layer_Intersection", _wrap_Layer_Intersection},
26990 {"Geo::OGRc::Layer_Union", _wrap_Layer_Union},
26991 {"Geo::OGRc::Layer_SymDifference", _wrap_Layer_SymDifference},
26992 {"Geo::OGRc::Layer_Identity", _wrap_Layer_Identity},
26993 {"Geo::OGRc::Layer_Update", _wrap_Layer_Update},
26994 {"Geo::OGRc::Layer_Clip", _wrap_Layer_Clip},
26995 {"Geo::OGRc::Layer_Erase", _wrap_Layer_Erase},
26996 {"Geo::OGRc::Layer_GetStyleTable", _wrap_Layer_GetStyleTable},
26997 {"Geo::OGRc::Layer_SetStyleTable", _wrap_Layer_SetStyleTable},
26998 {"Geo::OGRc::delete_Feature", _wrap_delete_Feature},
26999 {"Geo::OGRc::new_Feature", _wrap_new_Feature},
27000 {"Geo::OGRc::Feature_GetDefnRef", _wrap_Feature_GetDefnRef},
27001 {"Geo::OGRc::Feature__SetGeometry", _wrap_Feature__SetGeometry},
27002 {"Geo::OGRc::Feature_SetGeometryDirectly", _wrap_Feature_SetGeometryDirectly},
27003 {"Geo::OGRc::Feature__GetGeometryRef", _wrap_Feature__GetGeometryRef},
27004 {"Geo::OGRc::Feature_SetGeomField", _wrap_Feature_SetGeomField},
27005 {"Geo::OGRc::Feature_SetGeomFieldDirectly", _wrap_Feature_SetGeomFieldDirectly},
27006 {"Geo::OGRc::Feature_GetGeomFieldRef", _wrap_Feature_GetGeomFieldRef},
27007 {"Geo::OGRc::Feature_Clone", _wrap_Feature_Clone},
27008 {"Geo::OGRc::Feature_Equal", _wrap_Feature_Equal},
27009 {"Geo::OGRc::Feature_GetFieldCount", _wrap_Feature_GetFieldCount},
27010 {"Geo::OGRc::Feature_GetFieldDefnRef", _wrap_Feature_GetFieldDefnRef},
27011 {"Geo::OGRc::Feature_GetGeomFieldCount", _wrap_Feature_GetGeomFieldCount},
27012 {"Geo::OGRc::Feature_GetGeomFieldDefnRef", _wrap_Feature_GetGeomFieldDefnRef},
27013 {"Geo::OGRc::Feature_GetFieldAsString", _wrap_Feature_GetFieldAsString},
27014 {"Geo::OGRc::Feature_GetFieldAsInteger", _wrap_Feature_GetFieldAsInteger},
27015 {"Geo::OGRc::Feature_GetFieldAsInteger64", _wrap_Feature_GetFieldAsInteger64},
27016 {"Geo::OGRc::Feature_GetFieldAsDouble", _wrap_Feature_GetFieldAsDouble},
27017 {"Geo::OGRc::Feature_GetFieldAsDateTime", _wrap_Feature_GetFieldAsDateTime},
27018 {"Geo::OGRc::Feature_GetFieldAsIntegerList", _wrap_Feature_GetFieldAsIntegerList},
27019 {"Geo::OGRc::Feature_GetFieldAsInteger64List", _wrap_Feature_GetFieldAsInteger64List},
27020 {"Geo::OGRc::Feature_GetFieldAsDoubleList", _wrap_Feature_GetFieldAsDoubleList},
27021 {"Geo::OGRc::Feature_GetFieldAsStringList", _wrap_Feature_GetFieldAsStringList},
27022 {"Geo::OGRc::Feature_GetFieldAsBinary", _wrap_Feature_GetFieldAsBinary},
27023 {"Geo::OGRc::Feature_IsFieldSet", _wrap_Feature_IsFieldSet},
27024 {"Geo::OGRc::Feature_IsFieldNull", _wrap_Feature_IsFieldNull},
27025 {"Geo::OGRc::Feature_IsFieldSetAndNotNull", _wrap_Feature_IsFieldSetAndNotNull},
27026 {"Geo::OGRc::Feature__GetFieldIndex", _wrap_Feature__GetFieldIndex},
27027 {"Geo::OGRc::Feature__GetGeomFieldIndex", _wrap_Feature__GetGeomFieldIndex},
27028 {"Geo::OGRc::Feature_GetFID", _wrap_Feature_GetFID},
27029 {"Geo::OGRc::Feature_SetFID", _wrap_Feature_SetFID},
27030 {"Geo::OGRc::Feature_DumpReadable", _wrap_Feature_DumpReadable},
27031 {"Geo::OGRc::Feature__UnsetField", _wrap_Feature__UnsetField},
27032 {"Geo::OGRc::Feature_SetFieldNull", _wrap_Feature_SetFieldNull},
27033 {"Geo::OGRc::Feature_SetFieldInteger64", _wrap_Feature_SetFieldInteger64},
27034 {"Geo::OGRc::Feature__SetField", _wrap_Feature__SetField},
27035 {"Geo::OGRc::Feature_SetFieldIntegerList", _wrap_Feature_SetFieldIntegerList},
27036 {"Geo::OGRc::Feature_SetFieldInteger64List", _wrap_Feature_SetFieldInteger64List},
27037 {"Geo::OGRc::Feature_SetFieldDoubleList", _wrap_Feature_SetFieldDoubleList},
27038 {"Geo::OGRc::Feature_SetFieldStringList", _wrap_Feature_SetFieldStringList},
27039 {"Geo::OGRc::Feature_SetFieldBinary", _wrap_Feature_SetFieldBinary},
27040 {"Geo::OGRc::Feature_SetFieldBinaryFromHexString", _wrap_Feature_SetFieldBinaryFromHexString},
27041 {"Geo::OGRc::Feature__SetFrom", _wrap_Feature__SetFrom},
27042 {"Geo::OGRc::Feature_SetFromWithMap", _wrap_Feature_SetFromWithMap},
27043 {"Geo::OGRc::Feature_GetStyleString", _wrap_Feature_GetStyleString},
27044 {"Geo::OGRc::Feature_SetStyleString", _wrap_Feature_SetStyleString},
27045 {"Geo::OGRc::Feature_GetFieldType", _wrap_Feature_GetFieldType},
27046 {"Geo::OGRc::Feature__Validate", _wrap_Feature__Validate},
27047 {"Geo::OGRc::Feature_FillUnsetWithDefault", _wrap_Feature_FillUnsetWithDefault},
27048 {"Geo::OGRc::Feature_GetNativeData", _wrap_Feature_GetNativeData},
27049 {"Geo::OGRc::Feature_GetNativeMediaType", _wrap_Feature_GetNativeMediaType},
27050 {"Geo::OGRc::Feature_SetNativeData", _wrap_Feature_SetNativeData},
27051 {"Geo::OGRc::Feature_SetNativeMediaType", _wrap_Feature_SetNativeMediaType},
27052 {"Geo::OGRc::delete_FeatureDefn", _wrap_delete_FeatureDefn},
27053 {"Geo::OGRc::new_FeatureDefn", _wrap_new_FeatureDefn},
27054 {"Geo::OGRc::FeatureDefn_GetName", _wrap_FeatureDefn_GetName},
27055 {"Geo::OGRc::FeatureDefn_GetFieldCount", _wrap_FeatureDefn_GetFieldCount},
27056 {"Geo::OGRc::FeatureDefn__GetFieldDefn", _wrap_FeatureDefn__GetFieldDefn},
27057 {"Geo::OGRc::FeatureDefn__GetFieldIndex", _wrap_FeatureDefn__GetFieldIndex},
27058 {"Geo::OGRc::FeatureDefn_AddFieldDefn", _wrap_FeatureDefn_AddFieldDefn},
27059 {"Geo::OGRc::FeatureDefn_GetGeomFieldCount", _wrap_FeatureDefn_GetGeomFieldCount},
27060 {"Geo::OGRc::FeatureDefn__GetGeomFieldDefn", _wrap_FeatureDefn__GetGeomFieldDefn},
27061 {"Geo::OGRc::FeatureDefn__GetGeomFieldIndex", _wrap_FeatureDefn__GetGeomFieldIndex},
27062 {"Geo::OGRc::FeatureDefn_AddGeomFieldDefn", _wrap_FeatureDefn_AddGeomFieldDefn},
27063 {"Geo::OGRc::FeatureDefn_DeleteGeomFieldDefn", _wrap_FeatureDefn_DeleteGeomFieldDefn},
27064 {"Geo::OGRc::FeatureDefn_GetGeomType", _wrap_FeatureDefn_GetGeomType},
27065 {"Geo::OGRc::FeatureDefn_SetGeomType", _wrap_FeatureDefn_SetGeomType},
27066 {"Geo::OGRc::FeatureDefn_GetReferenceCount", _wrap_FeatureDefn_GetReferenceCount},
27067 {"Geo::OGRc::FeatureDefn_IsGeometryIgnored", _wrap_FeatureDefn_IsGeometryIgnored},
27068 {"Geo::OGRc::FeatureDefn_SetGeometryIgnored", _wrap_FeatureDefn_SetGeometryIgnored},
27069 {"Geo::OGRc::FeatureDefn_IsStyleIgnored", _wrap_FeatureDefn_IsStyleIgnored},
27070 {"Geo::OGRc::FeatureDefn_SetStyleIgnored", _wrap_FeatureDefn_SetStyleIgnored},
27071 {"Geo::OGRc::FeatureDefn_IsSame", _wrap_FeatureDefn_IsSame},
27072 {"Geo::OGRc::delete_FieldDefn", _wrap_delete_FieldDefn},
27073 {"Geo::OGRc::new_FieldDefn", _wrap_new_FieldDefn},
27074 {"Geo::OGRc::FieldDefn_GetName", _wrap_FieldDefn_GetName},
27075 {"Geo::OGRc::FieldDefn_GetNameRef", _wrap_FieldDefn_GetNameRef},
27076 {"Geo::OGRc::FieldDefn_SetName", _wrap_FieldDefn_SetName},
27077 {"Geo::OGRc::FieldDefn_GetAlternativeName", _wrap_FieldDefn_GetAlternativeName},
27078 {"Geo::OGRc::FieldDefn_GetAlternativeNameRef", _wrap_FieldDefn_GetAlternativeNameRef},
27079 {"Geo::OGRc::FieldDefn_SetAlternativeName", _wrap_FieldDefn_SetAlternativeName},
27080 {"Geo::OGRc::FieldDefn_GetType", _wrap_FieldDefn_GetType},
27081 {"Geo::OGRc::FieldDefn_SetType", _wrap_FieldDefn_SetType},
27082 {"Geo::OGRc::FieldDefn_GetSubType", _wrap_FieldDefn_GetSubType},
27083 {"Geo::OGRc::FieldDefn_SetSubType", _wrap_FieldDefn_SetSubType},
27084 {"Geo::OGRc::FieldDefn_GetJustify", _wrap_FieldDefn_GetJustify},
27085 {"Geo::OGRc::FieldDefn_SetJustify", _wrap_FieldDefn_SetJustify},
27086 {"Geo::OGRc::FieldDefn_GetWidth", _wrap_FieldDefn_GetWidth},
27087 {"Geo::OGRc::FieldDefn_SetWidth", _wrap_FieldDefn_SetWidth},
27088 {"Geo::OGRc::FieldDefn_GetPrecision", _wrap_FieldDefn_GetPrecision},
27089 {"Geo::OGRc::FieldDefn_SetPrecision", _wrap_FieldDefn_SetPrecision},
27090 {"Geo::OGRc::FieldDefn_GetTypeName", _wrap_FieldDefn_GetTypeName},
27091 {"Geo::OGRc::FieldDefn_GetFieldTypeName", _wrap_FieldDefn_GetFieldTypeName},
27092 {"Geo::OGRc::FieldDefn_IsIgnored", _wrap_FieldDefn_IsIgnored},
27093 {"Geo::OGRc::FieldDefn_SetIgnored", _wrap_FieldDefn_SetIgnored},
27094 {"Geo::OGRc::FieldDefn_IsNullable", _wrap_FieldDefn_IsNullable},
27095 {"Geo::OGRc::FieldDefn_SetNullable", _wrap_FieldDefn_SetNullable},
27096 {"Geo::OGRc::FieldDefn_IsUnique", _wrap_FieldDefn_IsUnique},
27097 {"Geo::OGRc::FieldDefn_SetUnique", _wrap_FieldDefn_SetUnique},
27098 {"Geo::OGRc::FieldDefn_GetDefault", _wrap_FieldDefn_GetDefault},
27099 {"Geo::OGRc::FieldDefn_SetDefault", _wrap_FieldDefn_SetDefault},
27100 {"Geo::OGRc::FieldDefn_IsDefaultDriverSpecific", _wrap_FieldDefn_IsDefaultDriverSpecific},
27101 {"Geo::OGRc::FieldDefn_GetDomainName", _wrap_FieldDefn_GetDomainName},
27102 {"Geo::OGRc::FieldDefn_SetDomainName", _wrap_FieldDefn_SetDomainName},
27103 {"Geo::OGRc::delete_GeomFieldDefn", _wrap_delete_GeomFieldDefn},
27104 {"Geo::OGRc::new_GeomFieldDefn", _wrap_new_GeomFieldDefn},
27105 {"Geo::OGRc::GeomFieldDefn_GetName", _wrap_GeomFieldDefn_GetName},
27106 {"Geo::OGRc::GeomFieldDefn_GetNameRef", _wrap_GeomFieldDefn_GetNameRef},
27107 {"Geo::OGRc::GeomFieldDefn_SetName", _wrap_GeomFieldDefn_SetName},
27108 {"Geo::OGRc::GeomFieldDefn_GetType", _wrap_GeomFieldDefn_GetType},
27109 {"Geo::OGRc::GeomFieldDefn_SetType", _wrap_GeomFieldDefn_SetType},
27110 {"Geo::OGRc::GeomFieldDefn_GetSpatialRef", _wrap_GeomFieldDefn_GetSpatialRef},
27111 {"Geo::OGRc::GeomFieldDefn_SetSpatialRef", _wrap_GeomFieldDefn_SetSpatialRef},
27112 {"Geo::OGRc::GeomFieldDefn_IsIgnored", _wrap_GeomFieldDefn_IsIgnored},
27113 {"Geo::OGRc::GeomFieldDefn_SetIgnored", _wrap_GeomFieldDefn_SetIgnored},
27114 {"Geo::OGRc::GeomFieldDefn_IsNullable", _wrap_GeomFieldDefn_IsNullable},
27115 {"Geo::OGRc::GeomFieldDefn_SetNullable", _wrap_GeomFieldDefn_SetNullable},
27116 {"Geo::OGRc::CreateGeometryFromWkb", _wrap_CreateGeometryFromWkb},
27117 {"Geo::OGRc::CreateGeometryFromWkt", _wrap_CreateGeometryFromWkt},
27118 {"Geo::OGRc::CreateGeometryFromGML", _wrap_CreateGeometryFromGML},
27119 {"Geo::OGRc::CreateGeometryFromJson", _wrap_CreateGeometryFromJson},
27120 {"Geo::OGRc::CreateGeometryFromEsriJson", _wrap_CreateGeometryFromEsriJson},
27121 {"Geo::OGRc::BuildPolygonFromEdges", _wrap_BuildPolygonFromEdges},
27122 {"Geo::OGRc::ApproximateArcAngles", _wrap_ApproximateArcAngles},
27123 {"Geo::OGRc::ForceToPolygon", _wrap_ForceToPolygon},
27124 {"Geo::OGRc::ForceToLineString", _wrap_ForceToLineString},
27125 {"Geo::OGRc::ForceToMultiPolygon", _wrap_ForceToMultiPolygon},
27126 {"Geo::OGRc::ForceToMultiPoint", _wrap_ForceToMultiPoint},
27127 {"Geo::OGRc::ForceToMultiLineString", _wrap_ForceToMultiLineString},
27128 {"Geo::OGRc::ForceTo", _wrap_ForceTo},
27129 {"Geo::OGRc::delete_Geometry", _wrap_delete_Geometry},
27130 {"Geo::OGRc::new_Geometry", _wrap_new_Geometry},
27131 {"Geo::OGRc::Geometry_ExportToWkt", _wrap_Geometry_ExportToWkt},
27132 {"Geo::OGRc::Geometry_ExportToIsoWkt", _wrap_Geometry_ExportToIsoWkt},
27133 {"Geo::OGRc::Geometry__ExportToWkb", _wrap_Geometry__ExportToWkb},
27134 {"Geo::OGRc::Geometry_ExportToIsoWkb", _wrap_Geometry_ExportToIsoWkb},
27135 {"Geo::OGRc::Geometry_ExportToGML", _wrap_Geometry_ExportToGML},
27136 {"Geo::OGRc::Geometry_ExportToKML", _wrap_Geometry_ExportToKML},
27137 {"Geo::OGRc::Geometry_ExportToJson", _wrap_Geometry_ExportToJson},
27138 {"Geo::OGRc::Geometry_AddPoint_3D", _wrap_Geometry_AddPoint_3D},
27139 {"Geo::OGRc::Geometry_AddPointM", _wrap_Geometry_AddPointM},
27140 {"Geo::OGRc::Geometry_AddPointZM", _wrap_Geometry_AddPointZM},
27141 {"Geo::OGRc::Geometry_AddPoint_2D", _wrap_Geometry_AddPoint_2D},
27142 {"Geo::OGRc::Geometry_AddGeometryDirectly", _wrap_Geometry_AddGeometryDirectly},
27143 {"Geo::OGRc::Geometry_AddGeometry", _wrap_Geometry_AddGeometry},
27144 {"Geo::OGRc::Geometry_RemoveGeometry", _wrap_Geometry_RemoveGeometry},
27145 {"Geo::OGRc::Geometry_Clone", _wrap_Geometry_Clone},
27146 {"Geo::OGRc::Geometry_GetGeometryType", _wrap_Geometry_GetGeometryType},
27147 {"Geo::OGRc::Geometry_GetGeometryName", _wrap_Geometry_GetGeometryName},
27148 {"Geo::OGRc::Geometry_Length", _wrap_Geometry_Length},
27149 {"Geo::OGRc::Geometry_Area", _wrap_Geometry_Area},
27150 {"Geo::OGRc::Geometry_GetArea", _wrap_Geometry_GetArea},
27151 {"Geo::OGRc::Geometry_GetPointCount", _wrap_Geometry_GetPointCount},
27152 {"Geo::OGRc::Geometry_GetX", _wrap_Geometry_GetX},
27153 {"Geo::OGRc::Geometry_GetY", _wrap_Geometry_GetY},
27154 {"Geo::OGRc::Geometry_GetZ", _wrap_Geometry_GetZ},
27155 {"Geo::OGRc::Geometry_GetM", _wrap_Geometry_GetM},
27156 {"Geo::OGRc::Geometry_GetPoint_3D", _wrap_Geometry_GetPoint_3D},
27157 {"Geo::OGRc::Geometry_GetPointZM", _wrap_Geometry_GetPointZM},
27158 {"Geo::OGRc::Geometry_GetPoint_2D", _wrap_Geometry_GetPoint_2D},
27159 {"Geo::OGRc::Geometry_GetGeometryCount", _wrap_Geometry_GetGeometryCount},
27160 {"Geo::OGRc::Geometry_SetPoint_3D", _wrap_Geometry_SetPoint_3D},
27161 {"Geo::OGRc::Geometry_SetPointM", _wrap_Geometry_SetPointM},
27162 {"Geo::OGRc::Geometry_SetPointZM", _wrap_Geometry_SetPointZM},
27163 {"Geo::OGRc::Geometry_SetPoint_2D", _wrap_Geometry_SetPoint_2D},
27164 {"Geo::OGRc::Geometry_SwapXY", _wrap_Geometry_SwapXY},
27165 {"Geo::OGRc::Geometry__GetGeometryRef", _wrap_Geometry__GetGeometryRef},
27166 {"Geo::OGRc::Geometry_Simplify", _wrap_Geometry_Simplify},
27167 {"Geo::OGRc::Geometry_SimplifyPreserveTopology", _wrap_Geometry_SimplifyPreserveTopology},
27168 {"Geo::OGRc::Geometry_DelaunayTriangulation", _wrap_Geometry_DelaunayTriangulation},
27169 {"Geo::OGRc::Geometry_Polygonize", _wrap_Geometry_Polygonize},
27170 {"Geo::OGRc::Geometry_Boundary", _wrap_Geometry_Boundary},
27171 {"Geo::OGRc::Geometry_GetBoundary", _wrap_Geometry_GetBoundary},
27172 {"Geo::OGRc::Geometry_ConvexHull", _wrap_Geometry_ConvexHull},
27173 {"Geo::OGRc::Geometry_MakeValid", _wrap_Geometry_MakeValid},
27174 {"Geo::OGRc::Geometry_Normalize", _wrap_Geometry_Normalize},
27175 {"Geo::OGRc::Geometry_RemoveLowerDimensionSubGeoms", _wrap_Geometry_RemoveLowerDimensionSubGeoms},
27176 {"Geo::OGRc::Geometry_Buffer", _wrap_Geometry_Buffer},
27177 {"Geo::OGRc::Geometry_Intersection", _wrap_Geometry_Intersection},
27178 {"Geo::OGRc::Geometry_Union", _wrap_Geometry_Union},
27179 {"Geo::OGRc::Geometry_UnionCascaded", _wrap_Geometry_UnionCascaded},
27180 {"Geo::OGRc::Geometry_Difference", _wrap_Geometry_Difference},
27181 {"Geo::OGRc::Geometry_SymDifference", _wrap_Geometry_SymDifference},
27182 {"Geo::OGRc::Geometry_SymmetricDifference", _wrap_Geometry_SymmetricDifference},
27183 {"Geo::OGRc::Geometry_Distance", _wrap_Geometry_Distance},
27184 {"Geo::OGRc::Geometry_Distance3D", _wrap_Geometry_Distance3D},
27185 {"Geo::OGRc::Geometry_Empty", _wrap_Geometry_Empty},
27186 {"Geo::OGRc::Geometry_IsEmpty", _wrap_Geometry_IsEmpty},
27187 {"Geo::OGRc::Geometry_IsValid", _wrap_Geometry_IsValid},
27188 {"Geo::OGRc::Geometry_IsSimple", _wrap_Geometry_IsSimple},
27189 {"Geo::OGRc::Geometry_IsRing", _wrap_Geometry_IsRing},
27190 {"Geo::OGRc::Geometry_Intersects", _wrap_Geometry_Intersects},
27191 {"Geo::OGRc::Geometry_Intersect", _wrap_Geometry_Intersect},
27192 {"Geo::OGRc::Geometry_Equals", _wrap_Geometry_Equals},
27193 {"Geo::OGRc::Geometry_Equal", _wrap_Geometry_Equal},
27194 {"Geo::OGRc::Geometry_Disjoint", _wrap_Geometry_Disjoint},
27195 {"Geo::OGRc::Geometry_Touches", _wrap_Geometry_Touches},
27196 {"Geo::OGRc::Geometry_Crosses", _wrap_Geometry_Crosses},
27197 {"Geo::OGRc::Geometry_Within", _wrap_Geometry_Within},
27198 {"Geo::OGRc::Geometry_Contains", _wrap_Geometry_Contains},
27199 {"Geo::OGRc::Geometry_Overlaps", _wrap_Geometry_Overlaps},
27200 {"Geo::OGRc::Geometry_TransformTo", _wrap_Geometry_TransformTo},
27201 {"Geo::OGRc::Geometry_GetSpatialReference", _wrap_Geometry_GetSpatialReference},
27202 {"Geo::OGRc::Geometry_AssignSpatialReference", _wrap_Geometry_AssignSpatialReference},
27203 {"Geo::OGRc::Geometry_CloseRings", _wrap_Geometry_CloseRings},
27204 {"Geo::OGRc::Geometry_FlattenTo2D", _wrap_Geometry_FlattenTo2D},
27205 {"Geo::OGRc::Geometry_Segmentize", _wrap_Geometry_Segmentize},
27206 {"Geo::OGRc::Geometry_GetEnvelope", _wrap_Geometry_GetEnvelope},
27207 {"Geo::OGRc::Geometry_GetEnvelope3D", _wrap_Geometry_GetEnvelope3D},
27208 {"Geo::OGRc::Geometry_Centroid", _wrap_Geometry_Centroid},
27209 {"Geo::OGRc::Geometry_PointOnSurface", _wrap_Geometry_PointOnSurface},
27210 {"Geo::OGRc::Geometry_WkbSize", _wrap_Geometry_WkbSize},
27211 {"Geo::OGRc::Geometry_GetCoordinateDimension", _wrap_Geometry_GetCoordinateDimension},
27212 {"Geo::OGRc::Geometry_CoordinateDimension", _wrap_Geometry_CoordinateDimension},
27213 {"Geo::OGRc::Geometry_Is3D", _wrap_Geometry_Is3D},
27214 {"Geo::OGRc::Geometry_IsMeasured", _wrap_Geometry_IsMeasured},
27215 {"Geo::OGRc::Geometry_SetCoordinateDimension", _wrap_Geometry_SetCoordinateDimension},
27216 {"Geo::OGRc::Geometry_Set3D", _wrap_Geometry_Set3D},
27217 {"Geo::OGRc::Geometry_SetMeasured", _wrap_Geometry_SetMeasured},
27218 {"Geo::OGRc::Geometry_GetDimension", _wrap_Geometry_GetDimension},
27219 {"Geo::OGRc::Geometry_HasCurveGeometry", _wrap_Geometry_HasCurveGeometry},
27220 {"Geo::OGRc::Geometry_GetLinearGeometry", _wrap_Geometry_GetLinearGeometry},
27221 {"Geo::OGRc::Geometry_GetCurveGeometry", _wrap_Geometry_GetCurveGeometry},
27222 {"Geo::OGRc::Geometry_Value", _wrap_Geometry_Value},
27223 {"Geo::OGRc::Geometry_Transform", _wrap_Geometry_Transform},
27224 {"Geo::OGRc::Geometry_CreatePreparedGeometry", _wrap_Geometry_CreatePreparedGeometry},
27225 {"Geo::OGRc::Geometry_Move", _wrap_Geometry_Move},
27226 {"Geo::OGRc::delete_PreparedGeometry", _wrap_delete_PreparedGeometry},
27227 {"Geo::OGRc::PreparedGeometry_Intersects", _wrap_PreparedGeometry_Intersects},
27228 {"Geo::OGRc::PreparedGeometry_Contains", _wrap_PreparedGeometry_Contains},
27229 {"Geo::OGRc::new_GeomTransformer", _wrap_new_GeomTransformer},
27230 {"Geo::OGRc::delete_GeomTransformer", _wrap_delete_GeomTransformer},
27231 {"Geo::OGRc::GeomTransformer_Transform", _wrap_GeomTransformer_Transform},
27232 {"Geo::OGRc::delete_FieldDomain", _wrap_delete_FieldDomain},
27233 {"Geo::OGRc::FieldDomain_GetName", _wrap_FieldDomain_GetName},
27234 {"Geo::OGRc::FieldDomain_GetDescription", _wrap_FieldDomain_GetDescription},
27235 {"Geo::OGRc::FieldDomain_GetFieldType", _wrap_FieldDomain_GetFieldType},
27236 {"Geo::OGRc::FieldDomain_GetFieldSubType", _wrap_FieldDomain_GetFieldSubType},
27237 {"Geo::OGRc::FieldDomain_GetDomainType", _wrap_FieldDomain_GetDomainType},
27238 {"Geo::OGRc::FieldDomain_GetSplitPolicy", _wrap_FieldDomain_GetSplitPolicy},
27239 {"Geo::OGRc::FieldDomain_SetSplitPolicy", _wrap_FieldDomain_SetSplitPolicy},
27240 {"Geo::OGRc::FieldDomain_GetMergePolicy", _wrap_FieldDomain_GetMergePolicy},
27241 {"Geo::OGRc::FieldDomain_SetMergePolicy", _wrap_FieldDomain_SetMergePolicy},
27242 {"Geo::OGRc::FieldDomain_GetMinAsDouble", _wrap_FieldDomain_GetMinAsDouble},
27243 {"Geo::OGRc::FieldDomain_IsMinInclusive", _wrap_FieldDomain_IsMinInclusive},
27244 {"Geo::OGRc::FieldDomain_GetMaxAsDouble", _wrap_FieldDomain_GetMaxAsDouble},
27245 {"Geo::OGRc::FieldDomain_IsMaxInclusive", _wrap_FieldDomain_IsMaxInclusive},
27246 {"Geo::OGRc::FieldDomain_GetGlob", _wrap_FieldDomain_GetGlob},
27247 {"Geo::OGRc::CreateRangeFieldDomain", _wrap_CreateRangeFieldDomain},
27248 {"Geo::OGRc::CreateGlobFieldDomain", _wrap_CreateGlobFieldDomain},
27249 {"Geo::OGRc::GetDriverCount", _wrap_GetDriverCount},
27250 {"Geo::OGRc::GetOpenDSCount", _wrap_GetOpenDSCount},
27251 {"Geo::OGRc::SetGenerate_DB2_V72_BYTE_ORDER", _wrap_SetGenerate_DB2_V72_BYTE_ORDER},
27252 {"Geo::OGRc::RegisterAll", _wrap_RegisterAll},
27253 {"Geo::OGRc::GeometryTypeToName", _wrap_GeometryTypeToName},
27254 {"Geo::OGRc::GetFieldTypeName", _wrap_GetFieldTypeName},
27255 {"Geo::OGRc::GetFieldSubTypeName", _wrap_GetFieldSubTypeName},
27256 {"Geo::OGRc::GT_Flatten", _wrap_GT_Flatten},
27257 {"Geo::OGRc::GT_SetZ", _wrap_GT_SetZ},
27258 {"Geo::OGRc::GT_SetM", _wrap_GT_SetM},
27259 {"Geo::OGRc::GT_SetModifier", _wrap_GT_SetModifier},
27260 {"Geo::OGRc::GT_HasZ", _wrap_GT_HasZ},
27261 {"Geo::OGRc::GT_HasM", _wrap_GT_HasM},
27262 {"Geo::OGRc::GT_IsSubClassOf", _wrap_GT_IsSubClassOf},
27263 {"Geo::OGRc::GT_IsCurve", _wrap_GT_IsCurve},
27264 {"Geo::OGRc::GT_IsSurface", _wrap_GT_IsSurface},
27265 {"Geo::OGRc::GT_IsNonLinear", _wrap_GT_IsNonLinear},
27266 {"Geo::OGRc::GT_GetCollection", _wrap_GT_GetCollection},
27267 {"Geo::OGRc::GT_GetCurve", _wrap_GT_GetCurve},
27268 {"Geo::OGRc::GT_GetLinear", _wrap_GT_GetLinear},
27269 {"Geo::OGRc::SetNonLinearGeometriesEnabledFlag", _wrap_SetNonLinearGeometriesEnabledFlag},
27270 {"Geo::OGRc::GetNonLinearGeometriesEnabledFlag", _wrap_GetNonLinearGeometriesEnabledFlag},
27271 {"Geo::OGRc::TermProgress_nocb", _wrap_TermProgress_nocb},
27272 {0,0}
27273 };
27274 /* -----------------------------------------------------------------------------
27275  * Type initialization:
27276  * This problem is tough by the requirement that no dynamic
27277  * memory is used. Also, since swig_type_info structures store pointers to
27278  * swig_cast_info structures and swig_cast_info structures store pointers back
27279  * to swig_type_info structures, we need some lookup code at initialization.
27280  * The idea is that swig generates all the structures that are needed.
27281  * The runtime then collects these partially filled structures.
27282  * The SWIG_InitializeModule function takes these initial arrays out of
27283  * swig_module, and does all the lookup, filling in the swig_module.types
27284  * array with the correct data and linking the correct swig_cast_info
27285  * structures together.
27286  *
27287  * The generated swig_type_info structures are assigned statically to an initial
27288  * array. We just loop through that array, and handle each type individually.
27289  * First we lookup if this type has been already loaded, and if so, use the
27290  * loaded structure instead of the generated one. Then we have to fill in the
27291  * cast linked list. The cast data is initially stored in something like a
27292  * two-dimensional array. Each row corresponds to a type (there are the same
27293  * number of rows as there are in the swig_type_initial array). Each entry in
27294  * a column is one of the swig_cast_info structures for that type.
27295  * The cast_initial array is actually an array of arrays, because each row has
27296  * a variable number of columns. So to actually build the cast linked list,
27297  * we find the array of casts associated with the type, and loop through it
27298  * adding the casts to the list. The one last trick we need to do is making
27299  * sure the type pointer in the swig_cast_info struct is correct.
27300  *
27301  * First off, we lookup the cast->type name to see if it is already loaded.
27302  * There are three cases to handle:
27303  *  1) If the cast->type has already been loaded AND the type we are adding
27304  *     casting info to has not been loaded (it is in this module), THEN we
27305  *     replace the cast->type pointer with the type pointer that has already
27306  *     been loaded.
27307  *  2) If BOTH types (the one we are adding casting info to, and the
27308  *     cast->type) are loaded, THEN the cast info has already been loaded by
27309  *     the previous module so we just ignore it.
27310  *  3) Finally, if cast->type has not already been loaded, then we add that
27311  *     swig_cast_info to the linked list (because the cast->type) pointer will
27312  *     be correct.
27313  * ----------------------------------------------------------------------------- */
27314 
27315 #ifdef __cplusplus
27316 extern "C" {
27317 #if 0
27318 } /* c-mode */
27319 #endif
27320 #endif
27321 
27322 #if 0
27323 #define SWIGRUNTIME_DEBUG
27324 #endif
27325 
27326 
27327 SWIGRUNTIME void
SWIG_InitializeModule(void * clientdata)27328 SWIG_InitializeModule(void *clientdata) {
27329   size_t i;
27330   swig_module_info *module_head, *iter;
27331   int init;
27332 
27333   /* check to see if the circular list has been setup, if not, set it up */
27334   if (swig_module.next==0) {
27335     /* Initialize the swig_module */
27336     swig_module.type_initial = swig_type_initial;
27337     swig_module.cast_initial = swig_cast_initial;
27338     swig_module.next = &swig_module;
27339     init = 1;
27340   } else {
27341     init = 0;
27342   }
27343 
27344   /* Try and load any already created modules */
27345   module_head = SWIG_GetModule(clientdata);
27346   if (!module_head) {
27347     /* This is the first module loaded for this interpreter */
27348     /* so set the swig module into the interpreter */
27349     SWIG_SetModule(clientdata, &swig_module);
27350   } else {
27351     /* the interpreter has loaded a SWIG module, but has it loaded this one? */
27352     iter=module_head;
27353     do {
27354       if (iter==&swig_module) {
27355         /* Our module is already in the list, so there's nothing more to do. */
27356         return;
27357       }
27358       iter=iter->next;
27359     } while (iter!= module_head);
27360 
27361     /* otherwise we must add our module into the list */
27362     swig_module.next = module_head->next;
27363     module_head->next = &swig_module;
27364   }
27365 
27366   /* When multiple interpreters are used, a module could have already been initialized in
27367        a different interpreter, but not yet have a pointer in this interpreter.
27368        In this case, we do not want to continue adding types... everything should be
27369        set up already */
27370   if (init == 0) return;
27371 
27372   /* Now work on filling in swig_module.types */
27373 #ifdef SWIGRUNTIME_DEBUG
27374   printf("SWIG_InitializeModule: size %d\n", swig_module.size);
27375 #endif
27376   for (i = 0; i < swig_module.size; ++i) {
27377     swig_type_info *type = 0;
27378     swig_type_info *ret;
27379     swig_cast_info *cast;
27380 
27381 #ifdef SWIGRUNTIME_DEBUG
27382     printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
27383 #endif
27384 
27385     /* if there is another module already loaded */
27386     if (swig_module.next != &swig_module) {
27387       type = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, swig_module.type_initial[i]->name);
27388     }
27389     if (type) {
27390       /* Overwrite clientdata field */
27391 #ifdef SWIGRUNTIME_DEBUG
27392       printf("SWIG_InitializeModule: found type %s\n", type->name);
27393 #endif
27394       if (swig_module.type_initial[i]->clientdata) {
27395         type->clientdata = swig_module.type_initial[i]->clientdata;
27396 #ifdef SWIGRUNTIME_DEBUG
27397         printf("SWIG_InitializeModule: found and overwrite type %s \n", type->name);
27398 #endif
27399       }
27400     } else {
27401       type = swig_module.type_initial[i];
27402     }
27403 
27404     /* Insert casting types */
27405     cast = swig_module.cast_initial[i];
27406     while (cast->type) {
27407       /* Don't need to add information already in the list */
27408       ret = 0;
27409 #ifdef SWIGRUNTIME_DEBUG
27410       printf("SWIG_InitializeModule: look cast %s\n", cast->type->name);
27411 #endif
27412       if (swig_module.next != &swig_module) {
27413         ret = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, cast->type->name);
27414 #ifdef SWIGRUNTIME_DEBUG
27415         if (ret) printf("SWIG_InitializeModule: found cast %s\n", ret->name);
27416 #endif
27417       }
27418       if (ret) {
27419         if (type == swig_module.type_initial[i]) {
27420 #ifdef SWIGRUNTIME_DEBUG
27421           printf("SWIG_InitializeModule: skip old type %s\n", ret->name);
27422 #endif
27423           cast->type = ret;
27424           ret = 0;
27425         } else {
27426           /* Check for casting already in the list */
27427           swig_cast_info *ocast = SWIG_TypeCheck(ret->name, type);
27428 #ifdef SWIGRUNTIME_DEBUG
27429           if (ocast) printf("SWIG_InitializeModule: skip old cast %s\n", ret->name);
27430 #endif
27431           if (!ocast) ret = 0;
27432         }
27433       }
27434 
27435       if (!ret) {
27436 #ifdef SWIGRUNTIME_DEBUG
27437         printf("SWIG_InitializeModule: adding cast %s\n", cast->type->name);
27438 #endif
27439         if (type->cast) {
27440           type->cast->prev = cast;
27441           cast->next = type->cast;
27442         }
27443         type->cast = cast;
27444       }
27445       cast++;
27446     }
27447     /* Set entry in modules->types array equal to the type */
27448     swig_module.types[i] = type;
27449   }
27450   swig_module.types[i] = 0;
27451 
27452 #ifdef SWIGRUNTIME_DEBUG
27453   printf("**** SWIG_InitializeModule: Cast List ******\n");
27454   for (i = 0; i < swig_module.size; ++i) {
27455     int j = 0;
27456     swig_cast_info *cast = swig_module.cast_initial[i];
27457     printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
27458     while (cast->type) {
27459       printf("SWIG_InitializeModule: cast type %s\n", cast->type->name);
27460       cast++;
27461       ++j;
27462     }
27463     printf("---- Total casts: %d\n",j);
27464   }
27465   printf("**** SWIG_InitializeModule: Cast List ******\n");
27466 #endif
27467 }
27468 
27469 /* This function will propagate the clientdata field of type to
27470 * any new swig_type_info structures that have been added into the list
27471 * of equivalent types.  It is like calling
27472 * SWIG_TypeClientData(type, clientdata) a second time.
27473 */
27474 SWIGRUNTIME void
SWIG_PropagateClientData(void)27475 SWIG_PropagateClientData(void) {
27476   size_t i;
27477   swig_cast_info *equiv;
27478   static int init_run = 0;
27479 
27480   if (init_run) return;
27481   init_run = 1;
27482 
27483   for (i = 0; i < swig_module.size; i++) {
27484     if (swig_module.types[i]->clientdata) {
27485       equiv = swig_module.types[i]->cast;
27486       while (equiv) {
27487         if (!equiv->converter) {
27488           if (equiv->type && !equiv->type->clientdata)
27489           SWIG_TypeClientData(equiv->type, swig_module.types[i]->clientdata);
27490         }
27491         equiv = equiv->next;
27492       }
27493     }
27494   }
27495 }
27496 
27497 #ifdef __cplusplus
27498 #if 0
27499 {
27500   /* c-mode */
27501 #endif
27502 }
27503 #endif
27504 
27505 
27506 
27507 #if defined(__cplusplus) && ! defined(XSPROTO)
27508 extern "C"
27509 #endif
27510 
XS(SWIG_init)27511 XS(SWIG_init) {
27512   dXSARGS;
27513   int i;
27514   (void)items;
27515 
27516   SWIG_InitializeModule(0);
27517 
27518   /* Install commands */
27519   for (i = 0; swig_commands[i].name; i++) {
27520     /* Casts only needed for Perl < 5.10. */
27521 #ifdef __cplusplus
27522     newXS(const_cast<char*>(swig_commands[i].name), swig_commands[i].wrapper, const_cast<char*>(__FILE__));
27523 #else
27524     newXS((char*)swig_commands[i].name, swig_commands[i].wrapper, (char*)__FILE__);
27525 #endif
27526   }
27527 
27528   /* Install variables */
27529   for (i = 0; swig_variables[i].name; i++) {
27530     SV *sv;
27531     sv = get_sv(swig_variables[i].name, TRUE | 0x2 | GV_ADDMULTI);
27532     if (swig_variables[i].type) {
27533       SWIG_MakePtr(sv,(void *)1, *swig_variables[i].type,0);
27534     } else {
27535       sv_setiv(sv,(IV) 0);
27536     }
27537     swig_create_magic(sv, swig_variables[i].name, swig_variables[i].set, swig_variables[i].get);
27538   }
27539 
27540   /* Install constant */
27541   for (i = 0; swig_constants[i].type; i++) {
27542     SV *sv;
27543     sv = get_sv(swig_constants[i].name, TRUE | 0x2 | GV_ADDMULTI);
27544     switch(swig_constants[i].type) {
27545     case SWIG_INT:
27546       sv_setiv(sv, (IV) swig_constants[i].lvalue);
27547       break;
27548     case SWIG_FLOAT:
27549       sv_setnv(sv, (double) swig_constants[i].dvalue);
27550       break;
27551     case SWIG_STRING:
27552       sv_setpv(sv, (const char *) swig_constants[i].pvalue);
27553       break;
27554     case SWIG_POINTER:
27555       SWIG_MakePtr(sv, swig_constants[i].pvalue, *(swig_constants[i].ptype),0);
27556       break;
27557     case SWIG_BINARY:
27558       SWIG_MakePackedObj(sv, swig_constants[i].pvalue, swig_constants[i].lvalue, *(swig_constants[i].ptype));
27559       break;
27560     default:
27561       break;
27562     }
27563     SvREADONLY_on(sv);
27564   }
27565 
27566   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27567     SV *sv = get_sv((char*) SWIG_prefix "wkb25DBit", TRUE | 0x2 | GV_ADDMULTI);
27568     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0x80000000)));
27569     SvREADONLY_on(sv);
27570   } while(0) /*@SWIG@*/;
27571   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27572     SV *sv = get_sv((char*) SWIG_prefix "wkb25Bit", TRUE | 0x2 | GV_ADDMULTI);
27573     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0x80000000)));
27574     SvREADONLY_on(sv);
27575   } while(0) /*@SWIG@*/;
27576   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27577     SV *sv = get_sv((char*) SWIG_prefix "wkbUnknown", TRUE | 0x2 | GV_ADDMULTI);
27578     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0)));
27579     SvREADONLY_on(sv);
27580   } while(0) /*@SWIG@*/;
27581   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27582     SV *sv = get_sv((char*) SWIG_prefix "wkbPoint", TRUE | 0x2 | GV_ADDMULTI);
27583     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1)));
27584     SvREADONLY_on(sv);
27585   } while(0) /*@SWIG@*/;
27586   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27587     SV *sv = get_sv((char*) SWIG_prefix "wkbLineString", TRUE | 0x2 | GV_ADDMULTI);
27588     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2)));
27589     SvREADONLY_on(sv);
27590   } while(0) /*@SWIG@*/;
27591   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27592     SV *sv = get_sv((char*) SWIG_prefix "wkbPolygon", TRUE | 0x2 | GV_ADDMULTI);
27593     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3)));
27594     SvREADONLY_on(sv);
27595   } while(0) /*@SWIG@*/;
27596   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27597     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiPoint", TRUE | 0x2 | GV_ADDMULTI);
27598     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(4)));
27599     SvREADONLY_on(sv);
27600   } while(0) /*@SWIG@*/;
27601   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27602     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiLineString", TRUE | 0x2 | GV_ADDMULTI);
27603     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(5)));
27604     SvREADONLY_on(sv);
27605   } while(0) /*@SWIG@*/;
27606   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27607     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiPolygon", TRUE | 0x2 | GV_ADDMULTI);
27608     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(6)));
27609     SvREADONLY_on(sv);
27610   } while(0) /*@SWIG@*/;
27611   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27612     SV *sv = get_sv((char*) SWIG_prefix "wkbGeometryCollection", TRUE | 0x2 | GV_ADDMULTI);
27613     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(7)));
27614     SvREADONLY_on(sv);
27615   } while(0) /*@SWIG@*/;
27616   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27617     SV *sv = get_sv((char*) SWIG_prefix "wkbCircularString", TRUE | 0x2 | GV_ADDMULTI);
27618     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(8)));
27619     SvREADONLY_on(sv);
27620   } while(0) /*@SWIG@*/;
27621   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27622     SV *sv = get_sv((char*) SWIG_prefix "wkbCompoundCurve", TRUE | 0x2 | GV_ADDMULTI);
27623     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(9)));
27624     SvREADONLY_on(sv);
27625   } while(0) /*@SWIG@*/;
27626   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27627     SV *sv = get_sv((char*) SWIG_prefix "wkbCurvePolygon", TRUE | 0x2 | GV_ADDMULTI);
27628     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(10)));
27629     SvREADONLY_on(sv);
27630   } while(0) /*@SWIG@*/;
27631   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27632     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiCurve", TRUE | 0x2 | GV_ADDMULTI);
27633     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(11)));
27634     SvREADONLY_on(sv);
27635   } while(0) /*@SWIG@*/;
27636   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27637     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiSurface", TRUE | 0x2 | GV_ADDMULTI);
27638     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(12)));
27639     SvREADONLY_on(sv);
27640   } while(0) /*@SWIG@*/;
27641   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27642     SV *sv = get_sv((char*) SWIG_prefix "wkbCurve", TRUE | 0x2 | GV_ADDMULTI);
27643     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(13)));
27644     SvREADONLY_on(sv);
27645   } while(0) /*@SWIG@*/;
27646   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27647     SV *sv = get_sv((char*) SWIG_prefix "wkbSurface", TRUE | 0x2 | GV_ADDMULTI);
27648     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(14)));
27649     SvREADONLY_on(sv);
27650   } while(0) /*@SWIG@*/;
27651   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27652     SV *sv = get_sv((char*) SWIG_prefix "wkbPolyhedralSurface", TRUE | 0x2 | GV_ADDMULTI);
27653     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(15)));
27654     SvREADONLY_on(sv);
27655   } while(0) /*@SWIG@*/;
27656   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27657     SV *sv = get_sv((char*) SWIG_prefix "wkbTIN", TRUE | 0x2 | GV_ADDMULTI);
27658     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(16)));
27659     SvREADONLY_on(sv);
27660   } while(0) /*@SWIG@*/;
27661   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27662     SV *sv = get_sv((char*) SWIG_prefix "wkbTriangle", TRUE | 0x2 | GV_ADDMULTI);
27663     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(17)));
27664     SvREADONLY_on(sv);
27665   } while(0) /*@SWIG@*/;
27666   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27667     SV *sv = get_sv((char*) SWIG_prefix "wkbNone", TRUE | 0x2 | GV_ADDMULTI);
27668     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(100)));
27669     SvREADONLY_on(sv);
27670   } while(0) /*@SWIG@*/;
27671   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27672     SV *sv = get_sv((char*) SWIG_prefix "wkbLinearRing", TRUE | 0x2 | GV_ADDMULTI);
27673     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(101)));
27674     SvREADONLY_on(sv);
27675   } while(0) /*@SWIG@*/;
27676   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27677     SV *sv = get_sv((char*) SWIG_prefix "wkbCircularStringZ", TRUE | 0x2 | GV_ADDMULTI);
27678     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1008)));
27679     SvREADONLY_on(sv);
27680   } while(0) /*@SWIG@*/;
27681   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27682     SV *sv = get_sv((char*) SWIG_prefix "wkbCompoundCurveZ", TRUE | 0x2 | GV_ADDMULTI);
27683     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1009)));
27684     SvREADONLY_on(sv);
27685   } while(0) /*@SWIG@*/;
27686   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27687     SV *sv = get_sv((char*) SWIG_prefix "wkbCurvePolygonZ", TRUE | 0x2 | GV_ADDMULTI);
27688     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1010)));
27689     SvREADONLY_on(sv);
27690   } while(0) /*@SWIG@*/;
27691   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27692     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiCurveZ", TRUE | 0x2 | GV_ADDMULTI);
27693     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1011)));
27694     SvREADONLY_on(sv);
27695   } while(0) /*@SWIG@*/;
27696   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27697     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiSurfaceZ", TRUE | 0x2 | GV_ADDMULTI);
27698     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1012)));
27699     SvREADONLY_on(sv);
27700   } while(0) /*@SWIG@*/;
27701   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27702     SV *sv = get_sv((char*) SWIG_prefix "wkbCurveZ", TRUE | 0x2 | GV_ADDMULTI);
27703     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1013)));
27704     SvREADONLY_on(sv);
27705   } while(0) /*@SWIG@*/;
27706   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27707     SV *sv = get_sv((char*) SWIG_prefix "wkbSurfaceZ", TRUE | 0x2 | GV_ADDMULTI);
27708     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1014)));
27709     SvREADONLY_on(sv);
27710   } while(0) /*@SWIG@*/;
27711   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27712     SV *sv = get_sv((char*) SWIG_prefix "wkbPolyhedralSurfaceZ", TRUE | 0x2 | GV_ADDMULTI);
27713     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1015)));
27714     SvREADONLY_on(sv);
27715   } while(0) /*@SWIG@*/;
27716   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27717     SV *sv = get_sv((char*) SWIG_prefix "wkbTINZ", TRUE | 0x2 | GV_ADDMULTI);
27718     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1016)));
27719     SvREADONLY_on(sv);
27720   } while(0) /*@SWIG@*/;
27721   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27722     SV *sv = get_sv((char*) SWIG_prefix "wkbTriangleZ", TRUE | 0x2 | GV_ADDMULTI);
27723     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1017)));
27724     SvREADONLY_on(sv);
27725   } while(0) /*@SWIG@*/;
27726   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27727     SV *sv = get_sv((char*) SWIG_prefix "wkbPointM", TRUE | 0x2 | GV_ADDMULTI);
27728     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2001)));
27729     SvREADONLY_on(sv);
27730   } while(0) /*@SWIG@*/;
27731   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27732     SV *sv = get_sv((char*) SWIG_prefix "wkbLineStringM", TRUE | 0x2 | GV_ADDMULTI);
27733     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2002)));
27734     SvREADONLY_on(sv);
27735   } while(0) /*@SWIG@*/;
27736   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27737     SV *sv = get_sv((char*) SWIG_prefix "wkbPolygonM", TRUE | 0x2 | GV_ADDMULTI);
27738     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2003)));
27739     SvREADONLY_on(sv);
27740   } while(0) /*@SWIG@*/;
27741   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27742     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiPointM", TRUE | 0x2 | GV_ADDMULTI);
27743     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2004)));
27744     SvREADONLY_on(sv);
27745   } while(0) /*@SWIG@*/;
27746   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27747     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiLineStringM", TRUE | 0x2 | GV_ADDMULTI);
27748     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2005)));
27749     SvREADONLY_on(sv);
27750   } while(0) /*@SWIG@*/;
27751   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27752     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiPolygonM", TRUE | 0x2 | GV_ADDMULTI);
27753     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2006)));
27754     SvREADONLY_on(sv);
27755   } while(0) /*@SWIG@*/;
27756   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27757     SV *sv = get_sv((char*) SWIG_prefix "wkbGeometryCollectionM", TRUE | 0x2 | GV_ADDMULTI);
27758     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2007)));
27759     SvREADONLY_on(sv);
27760   } while(0) /*@SWIG@*/;
27761   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27762     SV *sv = get_sv((char*) SWIG_prefix "wkbCircularStringM", TRUE | 0x2 | GV_ADDMULTI);
27763     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2008)));
27764     SvREADONLY_on(sv);
27765   } while(0) /*@SWIG@*/;
27766   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27767     SV *sv = get_sv((char*) SWIG_prefix "wkbCompoundCurveM", TRUE | 0x2 | GV_ADDMULTI);
27768     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2009)));
27769     SvREADONLY_on(sv);
27770   } while(0) /*@SWIG@*/;
27771   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27772     SV *sv = get_sv((char*) SWIG_prefix "wkbCurvePolygonM", TRUE | 0x2 | GV_ADDMULTI);
27773     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2010)));
27774     SvREADONLY_on(sv);
27775   } while(0) /*@SWIG@*/;
27776   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27777     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiCurveM", TRUE | 0x2 | GV_ADDMULTI);
27778     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2011)));
27779     SvREADONLY_on(sv);
27780   } while(0) /*@SWIG@*/;
27781   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27782     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiSurfaceM", TRUE | 0x2 | GV_ADDMULTI);
27783     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2012)));
27784     SvREADONLY_on(sv);
27785   } while(0) /*@SWIG@*/;
27786   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27787     SV *sv = get_sv((char*) SWIG_prefix "wkbCurveM", TRUE | 0x2 | GV_ADDMULTI);
27788     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2013)));
27789     SvREADONLY_on(sv);
27790   } while(0) /*@SWIG@*/;
27791   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27792     SV *sv = get_sv((char*) SWIG_prefix "wkbSurfaceM", TRUE | 0x2 | GV_ADDMULTI);
27793     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2014)));
27794     SvREADONLY_on(sv);
27795   } while(0) /*@SWIG@*/;
27796   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27797     SV *sv = get_sv((char*) SWIG_prefix "wkbPolyhedralSurfaceM", TRUE | 0x2 | GV_ADDMULTI);
27798     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2015)));
27799     SvREADONLY_on(sv);
27800   } while(0) /*@SWIG@*/;
27801   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27802     SV *sv = get_sv((char*) SWIG_prefix "wkbTINM", TRUE | 0x2 | GV_ADDMULTI);
27803     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2016)));
27804     SvREADONLY_on(sv);
27805   } while(0) /*@SWIG@*/;
27806   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27807     SV *sv = get_sv((char*) SWIG_prefix "wkbTriangleM", TRUE | 0x2 | GV_ADDMULTI);
27808     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2017)));
27809     SvREADONLY_on(sv);
27810   } while(0) /*@SWIG@*/;
27811   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27812     SV *sv = get_sv((char*) SWIG_prefix "wkbPointZM", TRUE | 0x2 | GV_ADDMULTI);
27813     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3001)));
27814     SvREADONLY_on(sv);
27815   } while(0) /*@SWIG@*/;
27816   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27817     SV *sv = get_sv((char*) SWIG_prefix "wkbLineStringZM", TRUE | 0x2 | GV_ADDMULTI);
27818     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3002)));
27819     SvREADONLY_on(sv);
27820   } while(0) /*@SWIG@*/;
27821   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27822     SV *sv = get_sv((char*) SWIG_prefix "wkbPolygonZM", TRUE | 0x2 | GV_ADDMULTI);
27823     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3003)));
27824     SvREADONLY_on(sv);
27825   } while(0) /*@SWIG@*/;
27826   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27827     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiPointZM", TRUE | 0x2 | GV_ADDMULTI);
27828     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3004)));
27829     SvREADONLY_on(sv);
27830   } while(0) /*@SWIG@*/;
27831   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27832     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiLineStringZM", TRUE | 0x2 | GV_ADDMULTI);
27833     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3005)));
27834     SvREADONLY_on(sv);
27835   } while(0) /*@SWIG@*/;
27836   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27837     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiPolygonZM", TRUE | 0x2 | GV_ADDMULTI);
27838     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3006)));
27839     SvREADONLY_on(sv);
27840   } while(0) /*@SWIG@*/;
27841   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27842     SV *sv = get_sv((char*) SWIG_prefix "wkbGeometryCollectionZM", TRUE | 0x2 | GV_ADDMULTI);
27843     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3007)));
27844     SvREADONLY_on(sv);
27845   } while(0) /*@SWIG@*/;
27846   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27847     SV *sv = get_sv((char*) SWIG_prefix "wkbCircularStringZM", TRUE | 0x2 | GV_ADDMULTI);
27848     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3008)));
27849     SvREADONLY_on(sv);
27850   } while(0) /*@SWIG@*/;
27851   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27852     SV *sv = get_sv((char*) SWIG_prefix "wkbCompoundCurveZM", TRUE | 0x2 | GV_ADDMULTI);
27853     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3009)));
27854     SvREADONLY_on(sv);
27855   } while(0) /*@SWIG@*/;
27856   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27857     SV *sv = get_sv((char*) SWIG_prefix "wkbCurvePolygonZM", TRUE | 0x2 | GV_ADDMULTI);
27858     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3010)));
27859     SvREADONLY_on(sv);
27860   } while(0) /*@SWIG@*/;
27861   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27862     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiCurveZM", TRUE | 0x2 | GV_ADDMULTI);
27863     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3011)));
27864     SvREADONLY_on(sv);
27865   } while(0) /*@SWIG@*/;
27866   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27867     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiSurfaceZM", TRUE | 0x2 | GV_ADDMULTI);
27868     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3012)));
27869     SvREADONLY_on(sv);
27870   } while(0) /*@SWIG@*/;
27871   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27872     SV *sv = get_sv((char*) SWIG_prefix "wkbCurveZM", TRUE | 0x2 | GV_ADDMULTI);
27873     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3013)));
27874     SvREADONLY_on(sv);
27875   } while(0) /*@SWIG@*/;
27876   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27877     SV *sv = get_sv((char*) SWIG_prefix "wkbSurfaceZM", TRUE | 0x2 | GV_ADDMULTI);
27878     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3014)));
27879     SvREADONLY_on(sv);
27880   } while(0) /*@SWIG@*/;
27881   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27882     SV *sv = get_sv((char*) SWIG_prefix "wkbPolyhedralSurfaceZM", TRUE | 0x2 | GV_ADDMULTI);
27883     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3015)));
27884     SvREADONLY_on(sv);
27885   } while(0) /*@SWIG@*/;
27886   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27887     SV *sv = get_sv((char*) SWIG_prefix "wkbTINZM", TRUE | 0x2 | GV_ADDMULTI);
27888     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3016)));
27889     SvREADONLY_on(sv);
27890   } while(0) /*@SWIG@*/;
27891   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27892     SV *sv = get_sv((char*) SWIG_prefix "wkbTriangleZM", TRUE | 0x2 | GV_ADDMULTI);
27893     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3017)));
27894     SvREADONLY_on(sv);
27895   } while(0) /*@SWIG@*/;
27896   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27897     SV *sv = get_sv((char*) SWIG_prefix "wkbPoint25D", TRUE | 0x2 | GV_ADDMULTI);
27898     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0x80000001)));
27899     SvREADONLY_on(sv);
27900   } while(0) /*@SWIG@*/;
27901   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27902     SV *sv = get_sv((char*) SWIG_prefix "wkbLineString25D", TRUE | 0x2 | GV_ADDMULTI);
27903     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0x80000002)));
27904     SvREADONLY_on(sv);
27905   } while(0) /*@SWIG@*/;
27906   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27907     SV *sv = get_sv((char*) SWIG_prefix "wkbPolygon25D", TRUE | 0x2 | GV_ADDMULTI);
27908     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0x80000003)));
27909     SvREADONLY_on(sv);
27910   } while(0) /*@SWIG@*/;
27911   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27912     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiPoint25D", TRUE | 0x2 | GV_ADDMULTI);
27913     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0x80000004)));
27914     SvREADONLY_on(sv);
27915   } while(0) /*@SWIG@*/;
27916   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27917     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiLineString25D", TRUE | 0x2 | GV_ADDMULTI);
27918     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0x80000005)));
27919     SvREADONLY_on(sv);
27920   } while(0) /*@SWIG@*/;
27921   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27922     SV *sv = get_sv((char*) SWIG_prefix "wkbMultiPolygon25D", TRUE | 0x2 | GV_ADDMULTI);
27923     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0x80000006)));
27924     SvREADONLY_on(sv);
27925   } while(0) /*@SWIG@*/;
27926   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27927     SV *sv = get_sv((char*) SWIG_prefix "wkbGeometryCollection25D", TRUE | 0x2 | GV_ADDMULTI);
27928     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0x80000007)));
27929     SvREADONLY_on(sv);
27930   } while(0) /*@SWIG@*/;
27931   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27932     SV *sv = get_sv((char*) SWIG_prefix "OFTInteger", TRUE | 0x2 | GV_ADDMULTI);
27933     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0)));
27934     SvREADONLY_on(sv);
27935   } while(0) /*@SWIG@*/;
27936   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27937     SV *sv = get_sv((char*) SWIG_prefix "OFTIntegerList", TRUE | 0x2 | GV_ADDMULTI);
27938     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1)));
27939     SvREADONLY_on(sv);
27940   } while(0) /*@SWIG@*/;
27941   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27942     SV *sv = get_sv((char*) SWIG_prefix "OFTReal", TRUE | 0x2 | GV_ADDMULTI);
27943     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2)));
27944     SvREADONLY_on(sv);
27945   } while(0) /*@SWIG@*/;
27946   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27947     SV *sv = get_sv((char*) SWIG_prefix "OFTRealList", TRUE | 0x2 | GV_ADDMULTI);
27948     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3)));
27949     SvREADONLY_on(sv);
27950   } while(0) /*@SWIG@*/;
27951   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27952     SV *sv = get_sv((char*) SWIG_prefix "OFTString", TRUE | 0x2 | GV_ADDMULTI);
27953     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(4)));
27954     SvREADONLY_on(sv);
27955   } while(0) /*@SWIG@*/;
27956   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27957     SV *sv = get_sv((char*) SWIG_prefix "OFTStringList", TRUE | 0x2 | GV_ADDMULTI);
27958     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(5)));
27959     SvREADONLY_on(sv);
27960   } while(0) /*@SWIG@*/;
27961   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27962     SV *sv = get_sv((char*) SWIG_prefix "OFTWideString", TRUE | 0x2 | GV_ADDMULTI);
27963     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(6)));
27964     SvREADONLY_on(sv);
27965   } while(0) /*@SWIG@*/;
27966   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27967     SV *sv = get_sv((char*) SWIG_prefix "OFTWideStringList", TRUE | 0x2 | GV_ADDMULTI);
27968     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(7)));
27969     SvREADONLY_on(sv);
27970   } while(0) /*@SWIG@*/;
27971   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27972     SV *sv = get_sv((char*) SWIG_prefix "OFTBinary", TRUE | 0x2 | GV_ADDMULTI);
27973     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(8)));
27974     SvREADONLY_on(sv);
27975   } while(0) /*@SWIG@*/;
27976   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27977     SV *sv = get_sv((char*) SWIG_prefix "OFTDate", TRUE | 0x2 | GV_ADDMULTI);
27978     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(9)));
27979     SvREADONLY_on(sv);
27980   } while(0) /*@SWIG@*/;
27981   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27982     SV *sv = get_sv((char*) SWIG_prefix "OFTTime", TRUE | 0x2 | GV_ADDMULTI);
27983     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(10)));
27984     SvREADONLY_on(sv);
27985   } while(0) /*@SWIG@*/;
27986   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27987     SV *sv = get_sv((char*) SWIG_prefix "OFTDateTime", TRUE | 0x2 | GV_ADDMULTI);
27988     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(11)));
27989     SvREADONLY_on(sv);
27990   } while(0) /*@SWIG@*/;
27991   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27992     SV *sv = get_sv((char*) SWIG_prefix "OFTInteger64", TRUE | 0x2 | GV_ADDMULTI);
27993     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(12)));
27994     SvREADONLY_on(sv);
27995   } while(0) /*@SWIG@*/;
27996   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
27997     SV *sv = get_sv((char*) SWIG_prefix "OFTInteger64List", TRUE | 0x2 | GV_ADDMULTI);
27998     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(13)));
27999     SvREADONLY_on(sv);
28000   } while(0) /*@SWIG@*/;
28001   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28002     SV *sv = get_sv((char*) SWIG_prefix "OFSTNone", TRUE | 0x2 | GV_ADDMULTI);
28003     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0)));
28004     SvREADONLY_on(sv);
28005   } while(0) /*@SWIG@*/;
28006   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28007     SV *sv = get_sv((char*) SWIG_prefix "OFSTBoolean", TRUE | 0x2 | GV_ADDMULTI);
28008     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1)));
28009     SvREADONLY_on(sv);
28010   } while(0) /*@SWIG@*/;
28011   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28012     SV *sv = get_sv((char*) SWIG_prefix "OFSTInt16", TRUE | 0x2 | GV_ADDMULTI);
28013     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2)));
28014     SvREADONLY_on(sv);
28015   } while(0) /*@SWIG@*/;
28016   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28017     SV *sv = get_sv((char*) SWIG_prefix "OFSTFloat32", TRUE | 0x2 | GV_ADDMULTI);
28018     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3)));
28019     SvREADONLY_on(sv);
28020   } while(0) /*@SWIG@*/;
28021   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28022     SV *sv = get_sv((char*) SWIG_prefix "OFSTJSON", TRUE | 0x2 | GV_ADDMULTI);
28023     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(4)));
28024     SvREADONLY_on(sv);
28025   } while(0) /*@SWIG@*/;
28026   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28027     SV *sv = get_sv((char*) SWIG_prefix "OFSTUUID", TRUE | 0x2 | GV_ADDMULTI);
28028     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(5)));
28029     SvREADONLY_on(sv);
28030   } while(0) /*@SWIG@*/;
28031   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28032     SV *sv = get_sv((char*) SWIG_prefix "OJUndefined", TRUE | 0x2 | GV_ADDMULTI);
28033     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0)));
28034     SvREADONLY_on(sv);
28035   } while(0) /*@SWIG@*/;
28036   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28037     SV *sv = get_sv((char*) SWIG_prefix "OJLeft", TRUE | 0x2 | GV_ADDMULTI);
28038     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1)));
28039     SvREADONLY_on(sv);
28040   } while(0) /*@SWIG@*/;
28041   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28042     SV *sv = get_sv((char*) SWIG_prefix "OJRight", TRUE | 0x2 | GV_ADDMULTI);
28043     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2)));
28044     SvREADONLY_on(sv);
28045   } while(0) /*@SWIG@*/;
28046   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28047     SV *sv = get_sv((char*) SWIG_prefix "OFDT_CODED", TRUE | 0x2 | GV_ADDMULTI);
28048     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0)));
28049     SvREADONLY_on(sv);
28050   } while(0) /*@SWIG@*/;
28051   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28052     SV *sv = get_sv((char*) SWIG_prefix "OFDT_RANGE", TRUE | 0x2 | GV_ADDMULTI);
28053     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1)));
28054     SvREADONLY_on(sv);
28055   } while(0) /*@SWIG@*/;
28056   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28057     SV *sv = get_sv((char*) SWIG_prefix "OFDT_GLOB", TRUE | 0x2 | GV_ADDMULTI);
28058     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2)));
28059     SvREADONLY_on(sv);
28060   } while(0) /*@SWIG@*/;
28061   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28062     SV *sv = get_sv((char*) SWIG_prefix "OFDSP_DEFAULT_VALUE", TRUE | 0x2 | GV_ADDMULTI);
28063     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0)));
28064     SvREADONLY_on(sv);
28065   } while(0) /*@SWIG@*/;
28066   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28067     SV *sv = get_sv((char*) SWIG_prefix "OFDSP_DUPLICATE", TRUE | 0x2 | GV_ADDMULTI);
28068     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1)));
28069     SvREADONLY_on(sv);
28070   } while(0) /*@SWIG@*/;
28071   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28072     SV *sv = get_sv((char*) SWIG_prefix "OFDSP_GEOMETRY_RATIO", TRUE | 0x2 | GV_ADDMULTI);
28073     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2)));
28074     SvREADONLY_on(sv);
28075   } while(0) /*@SWIG@*/;
28076   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28077     SV *sv = get_sv((char*) SWIG_prefix "OFDMP_DEFAULT_VALUE", TRUE | 0x2 | GV_ADDMULTI);
28078     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0)));
28079     SvREADONLY_on(sv);
28080   } while(0) /*@SWIG@*/;
28081   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28082     SV *sv = get_sv((char*) SWIG_prefix "OFDMP_SUM", TRUE | 0x2 | GV_ADDMULTI);
28083     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1)));
28084     SvREADONLY_on(sv);
28085   } while(0) /*@SWIG@*/;
28086   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28087     SV *sv = get_sv((char*) SWIG_prefix "OFDMP_GEOMETRY_WEIGHTED", TRUE | 0x2 | GV_ADDMULTI);
28088     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2)));
28089     SvREADONLY_on(sv);
28090   } while(0) /*@SWIG@*/;
28091   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28092     SV *sv = get_sv((char*) SWIG_prefix "wkbXDR", TRUE | 0x2 | GV_ADDMULTI);
28093     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0)));
28094     SvREADONLY_on(sv);
28095   } while(0) /*@SWIG@*/;
28096   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28097     SV *sv = get_sv((char*) SWIG_prefix "wkbNDR", TRUE | 0x2 | GV_ADDMULTI);
28098     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1)));
28099     SvREADONLY_on(sv);
28100   } while(0) /*@SWIG@*/;
28101   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28102     SV *sv = get_sv((char*) SWIG_prefix "NullFID", TRUE | 0x2 | GV_ADDMULTI);
28103     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(-1)));
28104     SvREADONLY_on(sv);
28105   } while(0) /*@SWIG@*/;
28106   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28107     SV *sv = get_sv((char*) SWIG_prefix "ALTER_NAME_FLAG", TRUE | 0x2 | GV_ADDMULTI);
28108     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1)));
28109     SvREADONLY_on(sv);
28110   } while(0) /*@SWIG@*/;
28111   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28112     SV *sv = get_sv((char*) SWIG_prefix "ALTER_TYPE_FLAG", TRUE | 0x2 | GV_ADDMULTI);
28113     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(2)));
28114     SvREADONLY_on(sv);
28115   } while(0) /*@SWIG@*/;
28116   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28117     SV *sv = get_sv((char*) SWIG_prefix "ALTER_WIDTH_PRECISION_FLAG", TRUE | 0x2 | GV_ADDMULTI);
28118     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(4)));
28119     SvREADONLY_on(sv);
28120   } while(0) /*@SWIG@*/;
28121   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28122     SV *sv = get_sv((char*) SWIG_prefix "ALTER_NULLABLE_FLAG", TRUE | 0x2 | GV_ADDMULTI);
28123     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(8)));
28124     SvREADONLY_on(sv);
28125   } while(0) /*@SWIG@*/;
28126   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28127     SV *sv = get_sv((char*) SWIG_prefix "ALTER__FLAG", TRUE | 0x2 | GV_ADDMULTI);
28128     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(8)));
28129     SvREADONLY_on(sv);
28130   } while(0) /*@SWIG@*/;
28131   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28132     SV *sv = get_sv((char*) SWIG_prefix "ALTER_DEFAULT_FLAG", TRUE | 0x2 | GV_ADDMULTI);
28133     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(16)));
28134     SvREADONLY_on(sv);
28135   } while(0) /*@SWIG@*/;
28136   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28137     SV *sv = get_sv((char*) SWIG_prefix "ALTER_UNIQUE_FLAG", TRUE | 0x2 | GV_ADDMULTI);
28138     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(32)));
28139     SvREADONLY_on(sv);
28140   } while(0) /*@SWIG@*/;
28141   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28142     SV *sv = get_sv((char*) SWIG_prefix "ALTER_DOMAIN_FLAG", TRUE | 0x2 | GV_ADDMULTI);
28143     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(64)));
28144     SvREADONLY_on(sv);
28145   } while(0) /*@SWIG@*/;
28146   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28147     SV *sv = get_sv((char*) SWIG_prefix "ALTER_ALL_FLAG", TRUE | 0x2 | GV_ADDMULTI);
28148     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1+2+4+8+16+32+64)));
28149     SvREADONLY_on(sv);
28150   } while(0) /*@SWIG@*/;
28151   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28152     SV *sv = get_sv((char*) SWIG_prefix "F_VAL_NULL", TRUE | 0x2 | GV_ADDMULTI);
28153     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0x00000001)));
28154     SvREADONLY_on(sv);
28155   } while(0) /*@SWIG@*/;
28156   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28157     SV *sv = get_sv((char*) SWIG_prefix "F_VAL_GEOM_TYPE", TRUE | 0x2 | GV_ADDMULTI);
28158     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0x00000002)));
28159     SvREADONLY_on(sv);
28160   } while(0) /*@SWIG@*/;
28161   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28162     SV *sv = get_sv((char*) SWIG_prefix "F_VAL_WIDTH", TRUE | 0x2 | GV_ADDMULTI);
28163     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0x00000004)));
28164     SvREADONLY_on(sv);
28165   } while(0) /*@SWIG@*/;
28166   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28167     SV *sv = get_sv((char*) SWIG_prefix "F_VAL_ALLOW_NULL_WHEN_DEFAULT", TRUE | 0x2 | GV_ADDMULTI);
28168     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0x00000008)));
28169     SvREADONLY_on(sv);
28170   } while(0) /*@SWIG@*/;
28171   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28172     SV *sv = get_sv((char*) SWIG_prefix "F_VAL_ALL", TRUE | 0x2 | GV_ADDMULTI);
28173     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(0xFFFFFFFF)));
28174     SvREADONLY_on(sv);
28175   } while(0) /*@SWIG@*/;
28176   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28177     SV *sv = get_sv((char*) SWIG_prefix "OLCRandomRead", TRUE | 0x2 | GV_ADDMULTI);
28178     sv_setsv(sv, SWIG_FromCharPtr("RandomRead"));
28179     SvREADONLY_on(sv);
28180   } while(0) /*@SWIG@*/;
28181   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28182     SV *sv = get_sv((char*) SWIG_prefix "OLCSequentialWrite", TRUE | 0x2 | GV_ADDMULTI);
28183     sv_setsv(sv, SWIG_FromCharPtr("SequentialWrite"));
28184     SvREADONLY_on(sv);
28185   } while(0) /*@SWIG@*/;
28186   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28187     SV *sv = get_sv((char*) SWIG_prefix "OLCRandomWrite", TRUE | 0x2 | GV_ADDMULTI);
28188     sv_setsv(sv, SWIG_FromCharPtr("RandomWrite"));
28189     SvREADONLY_on(sv);
28190   } while(0) /*@SWIG@*/;
28191   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28192     SV *sv = get_sv((char*) SWIG_prefix "OLCFastSpatialFilter", TRUE | 0x2 | GV_ADDMULTI);
28193     sv_setsv(sv, SWIG_FromCharPtr("FastSpatialFilter"));
28194     SvREADONLY_on(sv);
28195   } while(0) /*@SWIG@*/;
28196   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28197     SV *sv = get_sv((char*) SWIG_prefix "OLCFastFeatureCount", TRUE | 0x2 | GV_ADDMULTI);
28198     sv_setsv(sv, SWIG_FromCharPtr("FastFeatureCount"));
28199     SvREADONLY_on(sv);
28200   } while(0) /*@SWIG@*/;
28201   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28202     SV *sv = get_sv((char*) SWIG_prefix "OLCFastGetExtent", TRUE | 0x2 | GV_ADDMULTI);
28203     sv_setsv(sv, SWIG_FromCharPtr("FastGetExtent"));
28204     SvREADONLY_on(sv);
28205   } while(0) /*@SWIG@*/;
28206   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28207     SV *sv = get_sv((char*) SWIG_prefix "OLCCreateField", TRUE | 0x2 | GV_ADDMULTI);
28208     sv_setsv(sv, SWIG_FromCharPtr("CreateField"));
28209     SvREADONLY_on(sv);
28210   } while(0) /*@SWIG@*/;
28211   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28212     SV *sv = get_sv((char*) SWIG_prefix "OLCDeleteField", TRUE | 0x2 | GV_ADDMULTI);
28213     sv_setsv(sv, SWIG_FromCharPtr("DeleteField"));
28214     SvREADONLY_on(sv);
28215   } while(0) /*@SWIG@*/;
28216   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28217     SV *sv = get_sv((char*) SWIG_prefix "OLCReorderFields", TRUE | 0x2 | GV_ADDMULTI);
28218     sv_setsv(sv, SWIG_FromCharPtr("ReorderFields"));
28219     SvREADONLY_on(sv);
28220   } while(0) /*@SWIG@*/;
28221   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28222     SV *sv = get_sv((char*) SWIG_prefix "OLCAlterFieldDefn", TRUE | 0x2 | GV_ADDMULTI);
28223     sv_setsv(sv, SWIG_FromCharPtr("AlterFieldDefn"));
28224     SvREADONLY_on(sv);
28225   } while(0) /*@SWIG@*/;
28226   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28227     SV *sv = get_sv((char*) SWIG_prefix "OLCTransactions", TRUE | 0x2 | GV_ADDMULTI);
28228     sv_setsv(sv, SWIG_FromCharPtr("Transactions"));
28229     SvREADONLY_on(sv);
28230   } while(0) /*@SWIG@*/;
28231   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28232     SV *sv = get_sv((char*) SWIG_prefix "OLCDeleteFeature", TRUE | 0x2 | GV_ADDMULTI);
28233     sv_setsv(sv, SWIG_FromCharPtr("DeleteFeature"));
28234     SvREADONLY_on(sv);
28235   } while(0) /*@SWIG@*/;
28236   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28237     SV *sv = get_sv((char*) SWIG_prefix "OLCFastSetNextByIndex", TRUE | 0x2 | GV_ADDMULTI);
28238     sv_setsv(sv, SWIG_FromCharPtr("FastSetNextByIndex"));
28239     SvREADONLY_on(sv);
28240   } while(0) /*@SWIG@*/;
28241   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28242     SV *sv = get_sv((char*) SWIG_prefix "OLCStringsAsUTF8", TRUE | 0x2 | GV_ADDMULTI);
28243     sv_setsv(sv, SWIG_FromCharPtr("StringsAsUTF8"));
28244     SvREADONLY_on(sv);
28245   } while(0) /*@SWIG@*/;
28246   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28247     SV *sv = get_sv((char*) SWIG_prefix "OLCIgnoreFields", TRUE | 0x2 | GV_ADDMULTI);
28248     sv_setsv(sv, SWIG_FromCharPtr("IgnoreFields"));
28249     SvREADONLY_on(sv);
28250   } while(0) /*@SWIG@*/;
28251   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28252     SV *sv = get_sv((char*) SWIG_prefix "OLCCreateGeomField", TRUE | 0x2 | GV_ADDMULTI);
28253     sv_setsv(sv, SWIG_FromCharPtr("CreateGeomField"));
28254     SvREADONLY_on(sv);
28255   } while(0) /*@SWIG@*/;
28256   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28257     SV *sv = get_sv((char*) SWIG_prefix "OLCCurveGeometries", TRUE | 0x2 | GV_ADDMULTI);
28258     sv_setsv(sv, SWIG_FromCharPtr("CurveGeometries"));
28259     SvREADONLY_on(sv);
28260   } while(0) /*@SWIG@*/;
28261   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28262     SV *sv = get_sv((char*) SWIG_prefix "OLCMeasuredGeometries", TRUE | 0x2 | GV_ADDMULTI);
28263     sv_setsv(sv, SWIG_FromCharPtr("MeasuredGeometries"));
28264     SvREADONLY_on(sv);
28265   } while(0) /*@SWIG@*/;
28266   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28267     SV *sv = get_sv((char*) SWIG_prefix "ODsCCreateLayer", TRUE | 0x2 | GV_ADDMULTI);
28268     sv_setsv(sv, SWIG_FromCharPtr("CreateLayer"));
28269     SvREADONLY_on(sv);
28270   } while(0) /*@SWIG@*/;
28271   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28272     SV *sv = get_sv((char*) SWIG_prefix "ODsCDeleteLayer", TRUE | 0x2 | GV_ADDMULTI);
28273     sv_setsv(sv, SWIG_FromCharPtr("DeleteLayer"));
28274     SvREADONLY_on(sv);
28275   } while(0) /*@SWIG@*/;
28276   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28277     SV *sv = get_sv((char*) SWIG_prefix "ODsCCreateGeomFieldAfterCreateLayer", TRUE | 0x2 | GV_ADDMULTI);
28278     sv_setsv(sv, SWIG_FromCharPtr("CreateGeomFieldAfterCreateLayer"));
28279     SvREADONLY_on(sv);
28280   } while(0) /*@SWIG@*/;
28281   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28282     SV *sv = get_sv((char*) SWIG_prefix "ODsCCurveGeometries", TRUE | 0x2 | GV_ADDMULTI);
28283     sv_setsv(sv, SWIG_FromCharPtr("CurveGeometries"));
28284     SvREADONLY_on(sv);
28285   } while(0) /*@SWIG@*/;
28286   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28287     SV *sv = get_sv((char*) SWIG_prefix "ODsCTransactions", TRUE | 0x2 | GV_ADDMULTI);
28288     sv_setsv(sv, SWIG_FromCharPtr("Transactions"));
28289     SvREADONLY_on(sv);
28290   } while(0) /*@SWIG@*/;
28291   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28292     SV *sv = get_sv((char*) SWIG_prefix "ODsCEmulatedTransactions", TRUE | 0x2 | GV_ADDMULTI);
28293     sv_setsv(sv, SWIG_FromCharPtr("EmulatedTransactions"));
28294     SvREADONLY_on(sv);
28295   } while(0) /*@SWIG@*/;
28296   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28297     SV *sv = get_sv((char*) SWIG_prefix "ODsCMeasuredGeometries", TRUE | 0x2 | GV_ADDMULTI);
28298     sv_setsv(sv, SWIG_FromCharPtr("MeasuredGeometries"));
28299     SvREADONLY_on(sv);
28300   } while(0) /*@SWIG@*/;
28301   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28302     SV *sv = get_sv((char*) SWIG_prefix "ODsCRandomLayerRead", TRUE | 0x2 | GV_ADDMULTI);
28303     sv_setsv(sv, SWIG_FromCharPtr("RandomLayerRead"));
28304     SvREADONLY_on(sv);
28305   } while(0) /*@SWIG@*/;
28306   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28307     SV *sv = get_sv((char*) SWIG_prefix "ODsCRandomLayerWrite", TRUE | 0x2 | GV_ADDMULTI);
28308     sv_setsv(sv, SWIG_FromCharPtr("RandomLayerWrite "));
28309     SvREADONLY_on(sv);
28310   } while(0) /*@SWIG@*/;
28311   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28312     SV *sv = get_sv((char*) SWIG_prefix "ODsCAddFieldDomain", TRUE | 0x2 | GV_ADDMULTI);
28313     sv_setsv(sv, SWIG_FromCharPtr("AddFieldDomain"));
28314     SvREADONLY_on(sv);
28315   } while(0) /*@SWIG@*/;
28316   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28317     SV *sv = get_sv((char*) SWIG_prefix "ODrCCreateDataSource", TRUE | 0x2 | GV_ADDMULTI);
28318     sv_setsv(sv, SWIG_FromCharPtr("CreateDataSource"));
28319     SvREADONLY_on(sv);
28320   } while(0) /*@SWIG@*/;
28321   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28322     SV *sv = get_sv((char*) SWIG_prefix "ODrCDeleteDataSource", TRUE | 0x2 | GV_ADDMULTI);
28323     sv_setsv(sv, SWIG_FromCharPtr("DeleteDataSource"));
28324     SvREADONLY_on(sv);
28325   } while(0) /*@SWIG@*/;
28326   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28327     SV *sv = get_sv((char*) SWIG_prefix "OLMD_FID64", TRUE | 0x2 | GV_ADDMULTI);
28328     sv_setsv(sv, SWIG_FromCharPtr("OLMD_FID64"));
28329     SvREADONLY_on(sv);
28330   } while(0) /*@SWIG@*/;
28331 
28332   /* %init code */
28333   UseExceptions();
28334   if ( OGRGetDriverCount() == 0 ) {
28335     OGRRegisterAll();
28336   }
28337 
28338   SWIG_TypeClientData(SWIGTYPE_p_OGRStyleTableShadow, (void*) "Geo::OGR::StyleTable");
28339   SWIG_TypeClientData(SWIGTYPE_p_OGRLayerShadow, (void*) "Geo::OGR::Layer");
28340   SWIG_TypeClientData(SWIGTYPE_p_OGRFeatureShadow, (void*) "Geo::OGR::Feature");
28341   SWIG_TypeClientData(SWIGTYPE_p_OGRFeatureDefnShadow, (void*) "Geo::OGR::FeatureDefn");
28342   SWIG_TypeClientData(SWIGTYPE_p_OGRFieldDefnShadow, (void*) "Geo::OGR::FieldDefn");
28343   SWIG_TypeClientData(SWIGTYPE_p_OGRGeomFieldDefnShadow, (void*) "Geo::OGR::GeomFieldDefn");
28344   SWIG_TypeClientData(SWIGTYPE_p_OGRGeometryShadow, (void*) "Geo::OGR::Geometry");
28345   SWIG_TypeClientData(SWIGTYPE_p_OGRPreparedGeometryShadow, (void*) "Geo::OGR::PreparedGeometry");
28346   SWIG_TypeClientData(SWIGTYPE_p_OGRGeomTransformerShadow, (void*) "Geo::OGR::GeomTransformer");
28347   SWIG_TypeClientData(SWIGTYPE_p_OGRFieldDomainShadow, (void*) "Geo::OGR::FieldDomain");
28348   /*@SWIG:/home/even/install-swig-3.0.12/share/swig/3.0.12/perl5/perltypemaps.swg,65,%set_constant@*/ do {
28349     SV *sv = get_sv((char*) SWIG_prefix "TermProgress", TRUE | 0x2 | GV_ADDMULTI);
28350     sv_setsv(sv, SWIG_NewFunctionPtrObj((void *)(int (*)(double,char const *,void *))(GDALTermProgress), SWIGTYPE_p_f_double_p_q_const__char_p_void__int));
28351     SvREADONLY_on(sv);
28352   } while(0) /*@SWIG@*/;
28353   ST(0) = &PL_sv_yes;
28354   XSRETURN(1);
28355 }
28356 
28357