gdal 0.0.7 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,8 @@
1
1
  require 'mkmf'
2
2
 
3
+ # see https://github.com/zhm/gdal-ruby/issues/5
4
+ require_relative '../ruby-2.2-patch'
5
+
3
6
  raise 'gdal-config not found.' if `which gdal-config`.empty?
4
7
 
5
8
  dir_config 'gdal',
@@ -1,11 +1,11 @@
1
1
  /* ----------------------------------------------------------------------------
2
2
  * This file was automatically generated by SWIG (http://www.swig.org).
3
- * Version 2.0.4
4
- *
5
- * This file is not intended to be easily readable and contains a number of
3
+ * Version 3.0.5
4
+ *
5
+ * This file is not intended to be easily readable and contains a number of
6
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.
7
+ * changes to this file unless you know what you are doing--modify the SWIG
8
+ * interface file instead.
9
9
  * ----------------------------------------------------------------------------- */
10
10
 
11
11
  #define SWIGRUBY
@@ -41,28 +41,28 @@
41
41
  #ifndef SWIGUNUSED
42
42
  # if defined(__GNUC__)
43
43
  # if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
44
- # define SWIGUNUSED __attribute__ ((__unused__))
44
+ # define SWIGUNUSED __attribute__ ((__unused__))
45
45
  # else
46
46
  # define SWIGUNUSED
47
47
  # endif
48
48
  # elif defined(__ICC)
49
- # define SWIGUNUSED __attribute__ ((__unused__))
49
+ # define SWIGUNUSED __attribute__ ((__unused__))
50
50
  # else
51
- # define SWIGUNUSED
51
+ # define SWIGUNUSED
52
52
  # endif
53
53
  #endif
54
54
 
55
55
  #ifndef SWIG_MSC_UNSUPPRESS_4505
56
56
  # if defined(_MSC_VER)
57
57
  # pragma warning(disable : 4505) /* unreferenced local function has been removed */
58
- # endif
58
+ # endif
59
59
  #endif
60
60
 
61
61
  #ifndef SWIGUNUSEDPARM
62
62
  # ifdef __cplusplus
63
63
  # define SWIGUNUSEDPARM(p)
64
64
  # else
65
- # define SWIGUNUSEDPARM(p) p SWIGUNUSED
65
+ # define SWIGUNUSEDPARM(p) p SWIGUNUSED
66
66
  # endif
67
67
  #endif
68
68
 
@@ -105,7 +105,7 @@
105
105
  # define SWIGSTDCALL __stdcall
106
106
  # else
107
107
  # define SWIGSTDCALL
108
- # endif
108
+ # endif
109
109
  #endif
110
110
 
111
111
  /* Deal with Microsoft's attempt at deprecating C standard runtime functions */
@@ -150,28 +150,28 @@
150
150
  #ifndef SWIGUNUSED
151
151
  # if defined(__GNUC__)
152
152
  # if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
153
- # define SWIGUNUSED __attribute__ ((__unused__))
153
+ # define SWIGUNUSED __attribute__ ((__unused__))
154
154
  # else
155
155
  # define SWIGUNUSED
156
156
  # endif
157
157
  # elif defined(__ICC)
158
- # define SWIGUNUSED __attribute__ ((__unused__))
158
+ # define SWIGUNUSED __attribute__ ((__unused__))
159
159
  # else
160
- # define SWIGUNUSED
160
+ # define SWIGUNUSED
161
161
  # endif
162
162
  #endif
163
163
 
164
164
  #ifndef SWIG_MSC_UNSUPPRESS_4505
165
165
  # if defined(_MSC_VER)
166
166
  # pragma warning(disable : 4505) /* unreferenced local function has been removed */
167
- # endif
167
+ # endif
168
168
  #endif
169
169
 
170
170
  #ifndef SWIGUNUSEDPARM
171
171
  # ifdef __cplusplus
172
172
  # define SWIGUNUSEDPARM(p)
173
173
  # else
174
- # define SWIGUNUSEDPARM(p) p SWIGUNUSED
174
+ # define SWIGUNUSEDPARM(p) p SWIGUNUSED
175
175
  # endif
176
176
  #endif
177
177
 
@@ -214,7 +214,7 @@
214
214
  # define SWIGSTDCALL __stdcall
215
215
  # else
216
216
  # define SWIGSTDCALL
217
- # endif
217
+ # endif
218
218
  #endif
219
219
 
220
220
  /* Deal with Microsoft's attempt at deprecating C standard runtime functions */
@@ -252,7 +252,7 @@
252
252
  You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for
253
253
  creating a static or dynamic library from the SWIG runtime code.
254
254
  In 99.9% of the cases, SWIG just needs to declare them as 'static'.
255
-
255
+
256
256
  But only do this if strictly necessary, ie, if you have problems
257
257
  with your compiler or suchlike.
258
258
  */
@@ -278,16 +278,16 @@
278
278
  #define SWIG_POINTER_OWN 0x1
279
279
 
280
280
 
281
- /*
281
+ /*
282
282
  Flags/methods for returning states.
283
-
284
- The SWIG conversion methods, as ConvertPtr, return an integer
283
+
284
+ The SWIG conversion methods, as ConvertPtr, return an integer
285
285
  that tells if the conversion was successful or not. And if not,
286
286
  an error code can be returned (see swigerrors.swg for the codes).
287
-
287
+
288
288
  Use the following macros/flags to set or process the returning
289
289
  states.
290
-
290
+
291
291
  In old versions of SWIG, code such as the following was usually written:
292
292
 
293
293
  if (SWIG_ConvertPtr(obj,vptr,ty.flags) != -1) {
@@ -320,23 +320,23 @@
320
320
  } else {
321
321
  // fail code
322
322
  }
323
-
323
+
324
324
  I.e., now SWIG_ConvertPtr can return new objects and you can
325
325
  identify the case and take care of the deallocation. Of course that
326
326
  also requires SWIG_ConvertPtr to return new result values, such as
327
327
 
328
- int SWIG_ConvertPtr(obj, ptr,...) {
329
- if (<obj is ok>) {
330
- if (<need new object>) {
331
- *ptr = <ptr to new allocated object>;
332
- return SWIG_NEWOBJ;
333
- } else {
334
- *ptr = <ptr to old object>;
335
- return SWIG_OLDOBJ;
336
- }
337
- } else {
338
- return SWIG_BADOBJ;
339
- }
328
+ int SWIG_ConvertPtr(obj, ptr,...) {
329
+ if (<obj is ok>) {
330
+ if (<need new object>) {
331
+ *ptr = <ptr to new allocated object>;
332
+ return SWIG_NEWOBJ;
333
+ } else {
334
+ *ptr = <ptr to old object>;
335
+ return SWIG_OLDOBJ;
336
+ }
337
+ } else {
338
+ return SWIG_BADOBJ;
339
+ }
340
340
  }
341
341
 
342
342
  Of course, returning the plain '0(success)/-1(fail)' still works, but you can be
@@ -350,17 +350,17 @@
350
350
  int fooi(int);
351
351
 
352
352
  and you call
353
-
353
+
354
354
  food(1) // cast rank '1' (1 -> 1.0)
355
355
  fooi(1) // cast rank '0'
356
356
 
357
357
  just use the SWIG_AddCast()/SWIG_CheckState()
358
358
  */
359
359
 
360
- #define SWIG_OK (0)
360
+ #define SWIG_OK (0)
361
361
  #define SWIG_ERROR (-1)
362
362
  #define SWIG_IsOK(r) (r >= 0)
363
- #define SWIG_ArgError(r) ((r != SWIG_ERROR) ? r : SWIG_TypeError)
363
+ #define SWIG_ArgError(r) ((r != SWIG_ERROR) ? r : SWIG_TypeError)
364
364
 
365
365
  /* The CastRankLimit says how many bits are used for the cast rank */
366
366
  #define SWIG_CASTRANKLIMIT (1 << 8)
@@ -391,14 +391,14 @@
391
391
  # endif
392
392
  # define SWIG_CASTRANKMASK ((SWIG_CASTRANKLIMIT) -1)
393
393
  # define SWIG_CastRank(r) (r & SWIG_CASTRANKMASK)
394
- SWIGINTERNINLINE int SWIG_AddCast(int r) {
394
+ SWIGINTERNINLINE int SWIG_AddCast(int r) {
395
395
  return SWIG_IsOK(r) ? ((SWIG_CastRank(r) < SWIG_MAXCASTRANK) ? (r + 1) : SWIG_ERROR) : r;
396
396
  }
397
- SWIGINTERNINLINE int SWIG_CheckState(int r) {
398
- return SWIG_IsOK(r) ? SWIG_CastRank(r) + 1 : 0;
397
+ SWIGINTERNINLINE int SWIG_CheckState(int r) {
398
+ return SWIG_IsOK(r) ? SWIG_CastRank(r) + 1 : 0;
399
399
  }
400
400
  #else /* no cast-rank mode */
401
- # define SWIG_AddCast
401
+ # define SWIG_AddCast(r) (r)
402
402
  # define SWIG_CheckState(r) (SWIG_IsOK(r) ? 1 : 0)
403
403
  #endif
404
404
 
@@ -442,7 +442,7 @@ typedef struct swig_module_info {
442
442
  void *clientdata; /* Language specific module data */
443
443
  } swig_module_info;
444
444
 
445
- /*
445
+ /*
446
446
  Compare two type names skipping the space characters, therefore
447
447
  "char*" == "char *" and "Class<int>" == "Class<int >", etc.
448
448
 
@@ -462,18 +462,18 @@ SWIG_TypeNameComp(const char *f1, const char *l1,
462
462
 
463
463
  /*
464
464
  Check type equivalence in a name list like <name1>|<name2>|...
465
- Return 0 if not equal, 1 if equal
465
+ Return 0 if equal, -1 if nb < tb, 1 if nb > tb
466
466
  */
467
467
  SWIGRUNTIME int
468
- SWIG_TypeEquiv(const char *nb, const char *tb) {
469
- int equiv = 0;
468
+ SWIG_TypeCmp(const char *nb, const char *tb) {
469
+ int equiv = 1;
470
470
  const char* te = tb + strlen(tb);
471
471
  const char* ne = nb;
472
- while (!equiv && *ne) {
472
+ while (equiv != 0 && *ne) {
473
473
  for (nb = ne; *ne; ++ne) {
474
474
  if (*ne == '|') break;
475
475
  }
476
- equiv = (SWIG_TypeNameComp(nb, ne, tb, te) == 0) ? 1 : 0;
476
+ equiv = SWIG_TypeNameComp(nb, ne, tb, te);
477
477
  if (*ne) ++ne;
478
478
  }
479
479
  return equiv;
@@ -481,24 +481,13 @@ SWIG_TypeEquiv(const char *nb, const char *tb) {
481
481
 
482
482
  /*
483
483
  Check type equivalence in a name list like <name1>|<name2>|...
484
- Return 0 if equal, -1 if nb < tb, 1 if nb > tb
484
+ Return 0 if not equal, 1 if equal
485
485
  */
486
486
  SWIGRUNTIME int
487
- SWIG_TypeCompare(const char *nb, const char *tb) {
488
- int equiv = 0;
489
- const char* te = tb + strlen(tb);
490
- const char* ne = nb;
491
- while (!equiv && *ne) {
492
- for (nb = ne; *ne; ++ne) {
493
- if (*ne == '|') break;
494
- }
495
- equiv = (SWIG_TypeNameComp(nb, ne, tb, te) == 0) ? 1 : 0;
496
- if (*ne) ++ne;
497
- }
498
- return equiv;
487
+ SWIG_TypeEquiv(const char *nb, const char *tb) {
488
+ return SWIG_TypeCmp(nb, tb) == 0 ? 1 : 0;
499
489
  }
500
490
 
501
-
502
491
  /*
503
492
  Check the typename
504
493
  */
@@ -526,7 +515,7 @@ SWIG_TypeCheck(const char *c, swig_type_info *ty) {
526
515
  return 0;
527
516
  }
528
517
 
529
- /*
518
+ /*
530
519
  Identical to SWIG_TypeCheck, except strcmp is replaced with a pointer comparison
531
520
  */
532
521
  SWIGRUNTIME swig_cast_info *
@@ -561,7 +550,7 @@ SWIG_TypeCast(swig_cast_info *ty, void *ptr, int *newmemory) {
561
550
  return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr, newmemory);
562
551
  }
563
552
 
564
- /*
553
+ /*
565
554
  Dynamic pointer casting. Down an inheritance hierarchy
566
555
  */
567
556
  SWIGRUNTIME swig_type_info *
@@ -605,7 +594,7 @@ SWIG_TypePrettyName(const swig_type_info *type) {
605
594
  return type->name;
606
595
  }
607
596
 
608
- /*
597
+ /*
609
598
  Set the clientdata field for a type
610
599
  */
611
600
  SWIGRUNTIME void
@@ -613,14 +602,14 @@ SWIG_TypeClientData(swig_type_info *ti, void *clientdata) {
613
602
  swig_cast_info *cast = ti->cast;
614
603
  /* if (ti->clientdata == clientdata) return; */
615
604
  ti->clientdata = clientdata;
616
-
605
+
617
606
  while (cast) {
618
607
  if (!cast->converter) {
619
608
  swig_type_info *tc = cast->type;
620
609
  if (!tc->clientdata) {
621
610
  SWIG_TypeClientData(tc, clientdata);
622
611
  }
623
- }
612
+ }
624
613
  cast = cast->next;
625
614
  }
626
615
  }
@@ -629,31 +618,31 @@ SWIG_TypeNewClientData(swig_type_info *ti, void *clientdata) {
629
618
  SWIG_TypeClientData(ti, clientdata);
630
619
  ti->owndata = 1;
631
620
  }
632
-
621
+
633
622
  /*
634
623
  Search for a swig_type_info structure only by mangled name
635
624
  Search is a O(log #types)
636
-
637
- We start searching at module start, and finish searching when start == end.
625
+
626
+ We start searching at module start, and finish searching when start == end.
638
627
  Note: if start == end at the beginning of the function, we go all the way around
639
628
  the circular list.
640
629
  */
641
630
  SWIGRUNTIME swig_type_info *
642
- SWIG_MangledTypeQueryModule(swig_module_info *start,
643
- swig_module_info *end,
631
+ SWIG_MangledTypeQueryModule(swig_module_info *start,
632
+ swig_module_info *end,
644
633
  const char *name) {
645
634
  swig_module_info *iter = start;
646
635
  do {
647
636
  if (iter->size) {
648
- register size_t l = 0;
649
- register size_t r = iter->size - 1;
637
+ size_t l = 0;
638
+ size_t r = iter->size - 1;
650
639
  do {
651
640
  /* since l+r >= 0, we can (>> 1) instead (/ 2) */
652
- register size_t i = (l + r) >> 1;
641
+ size_t i = (l + r) >> 1;
653
642
  const char *iname = iter->types[i]->name;
654
643
  if (iname) {
655
- register int compare = strcmp(name, iname);
656
- if (compare == 0) {
644
+ int compare = strcmp(name, iname);
645
+ if (compare == 0) {
657
646
  return iter->types[i];
658
647
  } else if (compare < 0) {
659
648
  if (i) {
@@ -678,14 +667,14 @@ SWIG_MangledTypeQueryModule(swig_module_info *start,
678
667
  Search for a swig_type_info structure for either a mangled name or a human readable name.
679
668
  It first searches the mangled names of the types, which is a O(log #types)
680
669
  If a type is not found it then searches the human readable names, which is O(#types).
681
-
682
- We start searching at module start, and finish searching when start == end.
670
+
671
+ We start searching at module start, and finish searching when start == end.
683
672
  Note: if start == end at the beginning of the function, we go all the way around
684
673
  the circular list.
685
674
  */
686
675
  SWIGRUNTIME swig_type_info *
687
- SWIG_TypeQueryModule(swig_module_info *start,
688
- swig_module_info *end,
676
+ SWIG_TypeQueryModule(swig_module_info *start,
677
+ swig_module_info *end,
689
678
  const char *name) {
690
679
  /* STEP 1: Search the name field using binary search */
691
680
  swig_type_info *ret = SWIG_MangledTypeQueryModule(start, end, name);
@@ -696,7 +685,7 @@ SWIG_TypeQueryModule(swig_module_info *start,
696
685
  of the str field (the human readable name) */
697
686
  swig_module_info *iter = start;
698
687
  do {
699
- register size_t i = 0;
688
+ size_t i = 0;
700
689
  for (; i < iter->size; ++i) {
701
690
  if (iter->types[i]->str && (SWIG_TypeEquiv(iter->types[i]->str, name)))
702
691
  return iter->types[i];
@@ -704,56 +693,56 @@ SWIG_TypeQueryModule(swig_module_info *start,
704
693
  iter = iter->next;
705
694
  } while (iter != end);
706
695
  }
707
-
696
+
708
697
  /* neither found a match */
709
698
  return 0;
710
699
  }
711
700
 
712
- /*
701
+ /*
713
702
  Pack binary data into a string
714
703
  */
715
704
  SWIGRUNTIME char *
716
705
  SWIG_PackData(char *c, void *ptr, size_t sz) {
717
706
  static const char hex[17] = "0123456789abcdef";
718
- register const unsigned char *u = (unsigned char *) ptr;
719
- register const unsigned char *eu = u + sz;
707
+ const unsigned char *u = (unsigned char *) ptr;
708
+ const unsigned char *eu = u + sz;
720
709
  for (; u != eu; ++u) {
721
- register unsigned char uu = *u;
710
+ unsigned char uu = *u;
722
711
  *(c++) = hex[(uu & 0xf0) >> 4];
723
712
  *(c++) = hex[uu & 0xf];
724
713
  }
725
714
  return c;
726
715
  }
727
716
 
728
- /*
717
+ /*
729
718
  Unpack binary data from a string
730
719
  */
731
720
  SWIGRUNTIME const char *
732
721
  SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
733
- register unsigned char *u = (unsigned char *) ptr;
734
- register const unsigned char *eu = u + sz;
722
+ unsigned char *u = (unsigned char *) ptr;
723
+ const unsigned char *eu = u + sz;
735
724
  for (; u != eu; ++u) {
736
- register char d = *(c++);
737
- register unsigned char uu;
725
+ char d = *(c++);
726
+ unsigned char uu;
738
727
  if ((d >= '0') && (d <= '9'))
739
728
  uu = ((d - '0') << 4);
740
729
  else if ((d >= 'a') && (d <= 'f'))
741
730
  uu = ((d - ('a'-10)) << 4);
742
- else
731
+ else
743
732
  return (char *) 0;
744
733
  d = *(c++);
745
734
  if ((d >= '0') && (d <= '9'))
746
735
  uu |= (d - '0');
747
736
  else if ((d >= 'a') && (d <= 'f'))
748
737
  uu |= (d - ('a'-10));
749
- else
738
+ else
750
739
  return (char *) 0;
751
740
  *u = uu;
752
741
  }
753
742
  return c;
754
743
  }
755
744
 
756
- /*
745
+ /*
757
746
  Pack 'void *' into a string buffer.
758
747
  */
759
748
  SWIGRUNTIME char *
@@ -813,18 +802,18 @@ SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
813
802
  #endif
814
803
 
815
804
  /* Errors in SWIG */
816
- #define SWIG_UnknownError -1
817
- #define SWIG_IOError -2
818
- #define SWIG_RuntimeError -3
819
- #define SWIG_IndexError -4
820
- #define SWIG_TypeError -5
821
- #define SWIG_DivisionByZero -6
822
- #define SWIG_OverflowError -7
823
- #define SWIG_SyntaxError -8
824
- #define SWIG_ValueError -9
805
+ #define SWIG_UnknownError -1
806
+ #define SWIG_IOError -2
807
+ #define SWIG_RuntimeError -3
808
+ #define SWIG_IndexError -4
809
+ #define SWIG_TypeError -5
810
+ #define SWIG_DivisionByZero -6
811
+ #define SWIG_OverflowError -7
812
+ #define SWIG_SyntaxError -8
813
+ #define SWIG_ValueError -9
825
814
  #define SWIG_SystemError -10
826
815
  #define SWIG_AttributeError -11
827
- #define SWIG_MemoryError -12
816
+ #define SWIG_MemoryError -12
828
817
  #define SWIG_NullReferenceError -13
829
818
 
830
819
 
@@ -1374,7 +1363,7 @@ SWIG_Ruby_AppendOutput(VALUE target, VALUE o) {
1374
1363
 
1375
1364
  /* Runtime API */
1376
1365
 
1377
- #define SWIG_GetModule(clientdata) SWIG_Ruby_GetModule()
1366
+ #define SWIG_GetModule(clientdata) SWIG_Ruby_GetModule(clientdata)
1378
1367
  #define SWIG_SetModule(clientdata, pointer) SWIG_Ruby_SetModule(pointer)
1379
1368
 
1380
1369
 
@@ -1490,14 +1479,13 @@ SWIG_Ruby_InitRuntime(void)
1490
1479
  SWIGRUNTIME void
1491
1480
  SWIG_Ruby_define_class(swig_type_info *type)
1492
1481
  {
1493
- VALUE klass;
1494
1482
  char *klass_name = (char *) malloc(4 + strlen(type->name) + 1);
1495
1483
  sprintf(klass_name, "TYPE%s", type->name);
1496
1484
  if (NIL_P(_cSWIG_Pointer)) {
1497
1485
  _cSWIG_Pointer = rb_define_class_under(_mSWIG, "Pointer", rb_cObject);
1498
1486
  rb_undef_method(CLASS_OF(_cSWIG_Pointer), "new");
1499
1487
  }
1500
- klass = rb_define_class_under(_mSWIG, klass_name, _cSWIG_Pointer);
1488
+ rb_define_class_under(_mSWIG, klass_name, _cSWIG_Pointer);
1501
1489
  free((void *) klass_name);
1502
1490
  }
1503
1491
 
@@ -1528,7 +1516,7 @@ SWIG_Ruby_NewPointerObj(void *ptr, swig_type_info *type, int flags)
1528
1516
  downcast methods. */
1529
1517
  if (obj != Qnil) {
1530
1518
  VALUE value = rb_iv_get(obj, "@__swigtype__");
1531
- char* type_name = RSTRING_PTR(value);
1519
+ const char* type_name = RSTRING_PTR(value);
1532
1520
 
1533
1521
  if (strcmp(type->name, type_name) == 0) {
1534
1522
  return obj;
@@ -1710,7 +1698,7 @@ SWIG_Ruby_ConvertPacked(VALUE obj, void *ptr, int sz, swig_type_info *ty) {
1710
1698
  }
1711
1699
 
1712
1700
  SWIGRUNTIME swig_module_info *
1713
- SWIG_Ruby_GetModule(void)
1701
+ SWIG_Ruby_GetModule(void *SWIGUNUSEDPARM(clientdata))
1714
1702
  {
1715
1703
  VALUE pointer;
1716
1704
  swig_module_info *ret = 0;
@@ -1750,7 +1738,7 @@ SWIG_Ruby_SetModule(swig_module_info *pointer)
1750
1738
  SWIGINTERN
1751
1739
  int SWIG_Ruby_isCallable( VALUE proc )
1752
1740
  {
1753
- if ( rb_respond_to( proc, swig_call_id ) == Qtrue )
1741
+ if ( rb_respond_to( proc, swig_call_id ) )
1754
1742
  return 1;
1755
1743
  return 0;
1756
1744
  }
@@ -1763,7 +1751,7 @@ int SWIG_Ruby_isCallable( VALUE proc )
1763
1751
  SWIGINTERN
1764
1752
  int SWIG_Ruby_arity( VALUE proc, int minimal )
1765
1753
  {
1766
- if ( rb_respond_to( proc, swig_arity_id ) == Qtrue )
1754
+ if ( rb_respond_to( proc, swig_arity_id ) )
1767
1755
  {
1768
1756
  VALUE num = rb_funcall( proc, swig_arity_id, 0 );
1769
1757
  int arity = NUM2INT(num);
@@ -1806,7 +1794,7 @@ static VALUE mGdalconst;
1806
1794
  #define SWIG_RUBY_THREAD_END_BLOCK
1807
1795
 
1808
1796
 
1809
- #define SWIGVERSION 0x020004
1797
+ #define SWIGVERSION 0x030005
1810
1798
  #define SWIG_VERSION SWIGVERSION
1811
1799
 
1812
1800
 
@@ -1896,18 +1884,18 @@ static swig_cast_info *swig_cast_initial[] = {
1896
1884
 
1897
1885
  /* -----------------------------------------------------------------------------
1898
1886
  * Type initialization:
1899
- * This problem is tough by the requirement that no dynamic
1900
- * memory is used. Also, since swig_type_info structures store pointers to
1887
+ * This problem is tough by the requirement that no dynamic
1888
+ * memory is used. Also, since swig_type_info structures store pointers to
1901
1889
  * swig_cast_info structures and swig_cast_info structures store pointers back
1902
- * to swig_type_info structures, we need some lookup code at initialization.
1903
- * The idea is that swig generates all the structures that are needed.
1904
- * The runtime then collects these partially filled structures.
1905
- * The SWIG_InitializeModule function takes these initial arrays out of
1890
+ * to swig_type_info structures, we need some lookup code at initialization.
1891
+ * The idea is that swig generates all the structures that are needed.
1892
+ * The runtime then collects these partially filled structures.
1893
+ * The SWIG_InitializeModule function takes these initial arrays out of
1906
1894
  * swig_module, and does all the lookup, filling in the swig_module.types
1907
1895
  * array with the correct data and linking the correct swig_cast_info
1908
1896
  * structures together.
1909
1897
  *
1910
- * The generated swig_type_info structures are assigned staticly to an initial
1898
+ * The generated swig_type_info structures are assigned statically to an initial
1911
1899
  * array. We just loop through that array, and handle each type individually.
1912
1900
  * First we lookup if this type has been already loaded, and if so, use the
1913
1901
  * loaded structure instead of the generated one. Then we have to fill in the
@@ -1917,17 +1905,17 @@ static swig_cast_info *swig_cast_initial[] = {
1917
1905
  * a column is one of the swig_cast_info structures for that type.
1918
1906
  * The cast_initial array is actually an array of arrays, because each row has
1919
1907
  * a variable number of columns. So to actually build the cast linked list,
1920
- * we find the array of casts associated with the type, and loop through it
1908
+ * we find the array of casts associated with the type, and loop through it
1921
1909
  * adding the casts to the list. The one last trick we need to do is making
1922
1910
  * sure the type pointer in the swig_cast_info struct is correct.
1923
1911
  *
1924
- * First off, we lookup the cast->type name to see if it is already loaded.
1912
+ * First off, we lookup the cast->type name to see if it is already loaded.
1925
1913
  * There are three cases to handle:
1926
1914
  * 1) If the cast->type has already been loaded AND the type we are adding
1927
1915
  * casting info to has not been loaded (it is in this module), THEN we
1928
1916
  * replace the cast->type pointer with the type pointer that has already
1929
1917
  * been loaded.
1930
- * 2) If BOTH types (the one we are adding casting info to, and the
1918
+ * 2) If BOTH types (the one we are adding casting info to, and the
1931
1919
  * cast->type) are loaded, THEN the cast info has already been loaded by
1932
1920
  * the previous module so we just ignore it.
1933
1921
  * 3) Finally, if cast->type has not already been loaded, then we add that
@@ -1951,9 +1939,7 @@ SWIGRUNTIME void
1951
1939
  SWIG_InitializeModule(void *clientdata) {
1952
1940
  size_t i;
1953
1941
  swig_module_info *module_head, *iter;
1954
- int found, init;
1955
-
1956
- clientdata = clientdata;
1942
+ int init;
1957
1943
 
1958
1944
  /* check to see if the circular list has been setup, if not, set it up */
1959
1945
  if (swig_module.next==0) {
@@ -1972,27 +1958,23 @@ SWIG_InitializeModule(void *clientdata) {
1972
1958
  /* This is the first module loaded for this interpreter */
1973
1959
  /* so set the swig module into the interpreter */
1974
1960
  SWIG_SetModule(clientdata, &swig_module);
1975
- module_head = &swig_module;
1976
1961
  } else {
1977
1962
  /* the interpreter has loaded a SWIG module, but has it loaded this one? */
1978
- found=0;
1979
1963
  iter=module_head;
1980
1964
  do {
1981
1965
  if (iter==&swig_module) {
1982
- found=1;
1983
- break;
1966
+ /* Our module is already in the list, so there's nothing more to do. */
1967
+ return;
1984
1968
  }
1985
1969
  iter=iter->next;
1986
1970
  } while (iter!= module_head);
1987
1971
 
1988
- /* if the is found in the list, then all is done and we may leave */
1989
- if (found) return;
1990
- /* otherwise we must add out module into the list */
1972
+ /* otherwise we must add our module into the list */
1991
1973
  swig_module.next = module_head->next;
1992
1974
  module_head->next = &swig_module;
1993
1975
  }
1994
1976
 
1995
- /* When multiple interpeters are used, a module could have already been initialized in
1977
+ /* When multiple interpreters are used, a module could have already been initialized in
1996
1978
  a different interpreter, but not yet have a pointer in this interpreter.
1997
1979
  In this case, we do not want to continue adding types... everything should be
1998
1980
  set up already */
@@ -2006,7 +1988,7 @@ SWIG_InitializeModule(void *clientdata) {
2006
1988
  swig_type_info *type = 0;
2007
1989
  swig_type_info *ret;
2008
1990
  swig_cast_info *cast;
2009
-
1991
+
2010
1992
  #ifdef SWIGRUNTIME_DEBUG
2011
1993
  printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
2012
1994
  #endif
@@ -2033,7 +2015,7 @@ SWIG_InitializeModule(void *clientdata) {
2033
2015
  /* Insert casting types */
2034
2016
  cast = swig_module.cast_initial[i];
2035
2017
  while (cast->type) {
2036
-
2018
+
2037
2019
  /* Don't need to add information already in the list */
2038
2020
  ret = 0;
2039
2021
  #ifdef SWIGRUNTIME_DEBUG
@@ -2189,6 +2171,8 @@ SWIGEXPORT void Init_gdalconst(void) {
2189
2171
  rb_define_const(mGdalconst, "GRA_CUBIC", SWIG_From_int((int)(GRA_Cubic)));
2190
2172
  rb_define_const(mGdalconst, "GRA_CUBICSPLINE", SWIG_From_int((int)(GRA_CubicSpline)));
2191
2173
  rb_define_const(mGdalconst, "GRA_LANCZOS", SWIG_From_int((int)(GRA_Lanczos)));
2174
+ rb_define_const(mGdalconst, "GRA_AVERAGE", SWIG_From_int((int)(GRA_Average)));
2175
+ rb_define_const(mGdalconst, "GRA_MODE", SWIG_From_int((int)(GRA_Mode)));
2192
2176
  rb_define_const(mGdalconst, "GPI_GRAY", SWIG_From_int((int)(GPI_Gray)));
2193
2177
  rb_define_const(mGdalconst, "GPI_RGB", SWIG_From_int((int)(GPI_RGB)));
2194
2178
  rb_define_const(mGdalconst, "GPI_CMYK", SWIG_From_int((int)(GPI_CMYK)));
@@ -2219,6 +2203,7 @@ SWIGEXPORT void Init_gdalconst(void) {
2219
2203
  rb_define_const(mGdalconst, "DMD_EXTENSION", SWIG_FromCharPtr(GDAL_DMD_EXTENSION));
2220
2204
  rb_define_const(mGdalconst, "DMD_CREATIONOPTIONLIST", SWIG_FromCharPtr(GDAL_DMD_CREATIONOPTIONLIST));
2221
2205
  rb_define_const(mGdalconst, "DMD_CREATIONDATATYPES", SWIG_FromCharPtr(GDAL_DMD_CREATIONDATATYPES));
2206
+ rb_define_const(mGdalconst, "DMD_SUBDATASETS", SWIG_FromCharPtr(GDAL_DMD_SUBDATASETS));
2222
2207
  rb_define_const(mGdalconst, "DCAP_CREATE", SWIG_FromCharPtr(GDAL_DCAP_CREATE));
2223
2208
  rb_define_const(mGdalconst, "DCAP_CREATECOPY", SWIG_FromCharPtr(GDAL_DCAP_CREATECOPY));
2224
2209
  rb_define_const(mGdalconst, "DCAP_VIRTUALIO", SWIG_FromCharPtr(GDAL_DCAP_VIRTUALIO));