PLplot  5.13.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
plplotcPYTHON_wrap.c
Go to the documentation of this file.
1 /* ----------------------------------------------------------------------------
2  * This file was automatically generated by SWIG (http://www.swig.org).
3  * Version 2.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 #define SWIGPYTHON
12 #define SWIG_PYTHON_DIRECTOR_NO_VTABLE
13 
14 /* -----------------------------------------------------------------------------
15  * This section contains generic SWIG labels for method/variable
16  * declarations/attributes, and other compiler dependent labels.
17  * ----------------------------------------------------------------------------- */
18 
19 /* template workaround for compilers that cannot correctly implement the C++ standard */
20 #ifndef SWIGTEMPLATEDISAMBIGUATOR
21 # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
22 # define SWIGTEMPLATEDISAMBIGUATOR template
23 # elif defined(__HP_aCC)
24 /* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
25 /* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
26 # define SWIGTEMPLATEDISAMBIGUATOR template
27 # else
28 # define SWIGTEMPLATEDISAMBIGUATOR
29 # endif
30 #endif
31 
32 /* inline attribute */
33 #ifndef SWIGINLINE
34 # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
35 # define SWIGINLINE inline
36 # else
37 # define SWIGINLINE
38 # endif
39 #endif
40 
41 /* attribute recognised by some compilers to avoid 'unused' warnings */
42 #ifndef SWIGUNUSED
43 # if defined(__GNUC__)
44 # if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
45 # define SWIGUNUSED __attribute__ ((__unused__))
46 # else
47 # define SWIGUNUSED
48 # endif
49 # elif defined(__ICC)
50 # define SWIGUNUSED __attribute__ ((__unused__))
51 # else
52 # define SWIGUNUSED
53 # endif
54 #endif
55 
56 #ifndef SWIG_MSC_UNSUPPRESS_4505
57 # if defined(_MSC_VER)
58 # pragma warning(disable : 4505) /* unreferenced local function has been removed */
59 # endif
60 #endif
61 
62 #ifndef SWIGUNUSEDPARM
63 # ifdef __cplusplus
64 # define SWIGUNUSEDPARM(p)
65 # else
66 # define SWIGUNUSEDPARM(p) p SWIGUNUSED
67 # endif
68 #endif
69 
70 /* internal SWIG method */
71 #ifndef SWIGINTERN
72 # define SWIGINTERN static SWIGUNUSED
73 #endif
74 
75 /* internal inline SWIG method */
76 #ifndef SWIGINTERNINLINE
77 # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
78 #endif
79 
80 /* exporting methods */
81 #if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
82 # ifndef GCC_HASCLASSVISIBILITY
83 # define GCC_HASCLASSVISIBILITY
84 # endif
85 #endif
86 
87 #ifndef SWIGEXPORT
88 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
89 # if defined(STATIC_LINKED)
90 # define SWIGEXPORT
91 # else
92 # define SWIGEXPORT __declspec(dllexport)
93 # endif
94 # else
95 # if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
96 # define SWIGEXPORT __attribute__ ((visibility("default")))
97 # else
98 # define SWIGEXPORT
99 # endif
100 # endif
101 #endif
102 
103 /* calling conventions for Windows */
104 #ifndef SWIGSTDCALL
105 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
106 # define SWIGSTDCALL __stdcall
107 # else
108 # define SWIGSTDCALL
109 # endif
110 #endif
111 
112 /* Deal with Microsoft's attempt at deprecating C standard runtime functions */
113 #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
114 # define _CRT_SECURE_NO_DEPRECATE
115 #endif
116 
117 /* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
118 #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
119 # define _SCL_SECURE_NO_DEPRECATE
120 #endif
121 
122 
123 
124 #if defined(_DEBUG) && defined(SWIG_PYTHON_INTERPRETER_NO_DEBUG)
125 /* Use debug wrappers with the Python release dll */
126 # undef _DEBUG
127 # include <Python.h>
128 # define _DEBUG
129 #else
130 # include <Python.h>
131 #endif
132 
133 /* -----------------------------------------------------------------------------
134  * swigrun.swg
135  *
136  * This file contains generic C API SWIG runtime support for pointer
137  * type checking.
138  * ----------------------------------------------------------------------------- */
139 
140 /* This should only be incremented when either the layout of swig_type_info changes,
141  or for whatever reason, the runtime changes incompatibly */
142 #define SWIG_RUNTIME_VERSION "4"
143 
144 /* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
145 #ifdef SWIG_TYPE_TABLE
146 # define SWIG_QUOTE_STRING(x) #x
147 # define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
148 # define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
149 #else
150 # define SWIG_TYPE_TABLE_NAME
151 #endif
152 
153 /*
154  You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for
155  creating a static or dynamic library from the SWIG runtime code.
156  In 99.9% of the cases, SWIG just needs to declare them as 'static'.
157 
158  But only do this if strictly necessary, ie, if you have problems
159  with your compiler or suchlike.
160 */
161 
162 #ifndef SWIGRUNTIME
163 # define SWIGRUNTIME SWIGINTERN
164 #endif
165 
166 #ifndef SWIGRUNTIMEINLINE
167 # define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
168 #endif
169 
170 /* Generic buffer size */
171 #ifndef SWIG_BUFFER_SIZE
172 # define SWIG_BUFFER_SIZE 1024
173 #endif
174 
175 /* Flags for pointer conversions */
176 #define SWIG_POINTER_DISOWN 0x1
177 #define SWIG_CAST_NEW_MEMORY 0x2
178 
179 /* Flags for new pointer objects */
180 #define SWIG_POINTER_OWN 0x1
181 
182 
183 /*
184  Flags/methods for returning states.
185 
186  The SWIG conversion methods, as ConvertPtr, return an integer
187  that tells if the conversion was successful or not. And if not,
188  an error code can be returned (see swigerrors.swg for the codes).
189 
190  Use the following macros/flags to set or process the returning
191  states.
192 
193  In old versions of SWIG, code such as the following was usually written:
194 
195  if (SWIG_ConvertPtr(obj,vptr,ty.flags) != -1) {
196  // success code
197  } else {
198  //fail code
199  }
200 
201  Now you can be more explicit:
202 
203  int res = SWIG_ConvertPtr(obj,vptr,ty.flags);
204  if (SWIG_IsOK(res)) {
205  // success code
206  } else {
207  // fail code
208  }
209 
210  which is the same really, but now you can also do
211 
212  Type *ptr;
213  int res = SWIG_ConvertPtr(obj,(void **)(&ptr),ty.flags);
214  if (SWIG_IsOK(res)) {
215  // success code
216  if (SWIG_IsNewObj(res) {
217  ...
218  delete *ptr;
219  } else {
220  ...
221  }
222  } else {
223  // fail code
224  }
225 
226  I.e., now SWIG_ConvertPtr can return new objects and you can
227  identify the case and take care of the deallocation. Of course that
228  also requires SWIG_ConvertPtr to return new result values, such as
229 
230  int SWIG_ConvertPtr(obj, ptr,...) {
231  if (<obj is ok>) {
232  if (<need new object>) {
233  *ptr = <ptr to new allocated object>;
234  return SWIG_NEWOBJ;
235  } else {
236  *ptr = <ptr to old object>;
237  return SWIG_OLDOBJ;
238  }
239  } else {
240  return SWIG_BADOBJ;
241  }
242  }
243 
244  Of course, returning the plain '0(success)/-1(fail)' still works, but you can be
245  more explicit by returning SWIG_BADOBJ, SWIG_ERROR or any of the
246  SWIG errors code.
247 
248  Finally, if the SWIG_CASTRANK_MODE is enabled, the result code
249  allows to return the 'cast rank', for example, if you have this
250 
251  int food(double)
252  int fooi(int);
253 
254  and you call
255 
256  food(1) // cast rank '1' (1 -> 1.0)
257  fooi(1) // cast rank '0'
258 
259  just use the SWIG_AddCast()/SWIG_CheckState()
260 */
261 
262 #define SWIG_OK (0)
263 #define SWIG_ERROR (-1)
264 #define SWIG_IsOK(r) (r >= 0)
265 #define SWIG_ArgError(r) ((r != SWIG_ERROR) ? r : SWIG_TypeError)
266 
267 /* The CastRankLimit says how many bits are used for the cast rank */
268 #define SWIG_CASTRANKLIMIT (1 << 8)
269 /* The NewMask denotes the object was created (using new/malloc) */
270 #define SWIG_NEWOBJMASK (SWIG_CASTRANKLIMIT << 1)
271 /* The TmpMask is for in/out typemaps that use temporal objects */
272 #define SWIG_TMPOBJMASK (SWIG_NEWOBJMASK << 1)
273 /* Simple returning values */
274 #define SWIG_BADOBJ (SWIG_ERROR)
275 #define SWIG_OLDOBJ (SWIG_OK)
276 #define SWIG_NEWOBJ (SWIG_OK | SWIG_NEWOBJMASK)
277 #define SWIG_TMPOBJ (SWIG_OK | SWIG_TMPOBJMASK)
278 /* Check, add and del mask methods */
279 #define SWIG_AddNewMask(r) (SWIG_IsOK(r) ? (r | SWIG_NEWOBJMASK) : r)
280 #define SWIG_DelNewMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_NEWOBJMASK) : r)
281 #define SWIG_IsNewObj(r) (SWIG_IsOK(r) && (r & SWIG_NEWOBJMASK))
282 #define SWIG_AddTmpMask(r) (SWIG_IsOK(r) ? (r | SWIG_TMPOBJMASK) : r)
283 #define SWIG_DelTmpMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_TMPOBJMASK) : r)
284 #define SWIG_IsTmpObj(r) (SWIG_IsOK(r) && (r & SWIG_TMPOBJMASK))
285 
286 /* Cast-Rank Mode */
287 #if defined(SWIG_CASTRANK_MODE)
288 # ifndef SWIG_TypeRank
289 # define SWIG_TypeRank unsigned long
290 # endif
291 # ifndef SWIG_MAXCASTRANK /* Default cast allowed */
292 # define SWIG_MAXCASTRANK (2)
293 # endif
294 # define SWIG_CASTRANKMASK ((SWIG_CASTRANKLIMIT) -1)
295 # define SWIG_CastRank(r) (r & SWIG_CASTRANKMASK)
296 SWIGINTERNINLINE int SWIG_AddCast(int r) {
297  return SWIG_IsOK(r) ? ((SWIG_CastRank(r) < SWIG_MAXCASTRANK) ? (r + 1) : SWIG_ERROR) : r;
298 }
300  return SWIG_IsOK(r) ? SWIG_CastRank(r) + 1 : 0;
301 }
302 #else /* no cast-rank mode */
303 # define SWIG_AddCast(r) (r)
304 # define SWIG_CheckState(r) (SWIG_IsOK(r) ? 1 : 0)
305 #endif
306 
307 
308 #include <string.h>
309 
310 #ifdef __cplusplus
311 extern "C" {
312 #endif
313 
314 typedef void *(*swig_converter_func)(void *, int *);
315 typedef struct swig_type_info *(*swig_dycast_func)(void **);
316 
317 /* Structure to store information on one type */
318 typedef struct swig_type_info {
319  const char *name; /* mangled name of this type */
320  const char *str; /* human readable name of this type */
321  swig_dycast_func dcast; /* dynamic cast function down a hierarchy */
322  struct swig_cast_info *cast; /* linked list of types that can cast into this type */
323  void *clientdata; /* language specific type data */
324  int owndata; /* flag if the structure owns the clientdata */
326 
327 /* Structure to store a type and conversion function used for casting */
328 typedef struct swig_cast_info {
329  swig_type_info *type; /* pointer to type that is equivalent to this type */
330  swig_converter_func converter; /* function to cast the void pointers */
331  struct swig_cast_info *next; /* pointer to next cast in linked list */
332  struct swig_cast_info *prev; /* pointer to the previous cast */
334 
335 /* Structure used to store module information
336  * Each module generates one structure like this, and the runtime collects
337  * all of these structures and stores them in a circularly linked list.*/
338 typedef struct swig_module_info {
339  swig_type_info **types; /* Array of pointers to swig_type_info structures that are in this module */
340  size_t size; /* Number of types in this module */
341  struct swig_module_info *next; /* Pointer to next element in circularly linked list */
342  swig_type_info **type_initial; /* Array of initially generated type structures */
343  swig_cast_info **cast_initial; /* Array of initially generated casting structures */
344  void *clientdata; /* Language specific module data */
346 
347 /*
348  Compare two type names skipping the space characters, therefore
349  "char*" == "char *" and "Class<int>" == "Class<int >", etc.
350 
351  Return 0 when the two name types are equivalent, as in
352  strncmp, but skipping ' '.
353 */
354 SWIGRUNTIME int
355 SWIG_TypeNameComp(const char *f1, const char *l1,
356  const char *f2, const char *l2) {
357  for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
358  while ((*f1 == ' ') && (f1 != l1)) ++f1;
359  while ((*f2 == ' ') && (f2 != l2)) ++f2;
360  if (*f1 != *f2) return (*f1 > *f2) ? 1 : -1;
361  }
362  return (int)((l1 - f1) - (l2 - f2));
363 }
364 
365 /*
366  Check type equivalence in a name list like <name1>|<name2>|...
367  Return 0 if equal, -1 if nb < tb, 1 if nb > tb
368 */
369 SWIGRUNTIME int
370 SWIG_TypeCmp(const char *nb, const char *tb) {
371  int equiv = 1;
372  const char* te = tb + strlen(tb);
373  const char* ne = nb;
374  while (equiv != 0 && *ne) {
375  for (nb = ne; *ne; ++ne) {
376  if (*ne == '|') break;
377  }
378  equiv = SWIG_TypeNameComp(nb, ne, tb, te);
379  if (*ne) ++ne;
380  }
381  return equiv;
382 }
383 
384 /*
385  Check type equivalence in a name list like <name1>|<name2>|...
386  Return 0 if not equal, 1 if equal
387 */
388 SWIGRUNTIME int
389 SWIG_TypeEquiv(const char *nb, const char *tb) {
390  return SWIG_TypeCmp(nb, tb) == 0 ? 1 : 0;
391 }
392 
393 /*
394  Check the typename
395 */
397 SWIG_TypeCheck(const char *c, swig_type_info *ty) {
398  if (ty) {
399  swig_cast_info *iter = ty->cast;
400  while (iter) {
401  if (strcmp(iter->type->name, c) == 0) {
402  if (iter == ty->cast)
403  return iter;
404  /* Move iter to the top of the linked list */
405  iter->prev->next = iter->next;
406  if (iter->next)
407  iter->next->prev = iter->prev;
408  iter->next = ty->cast;
409  iter->prev = 0;
410  if (ty->cast) ty->cast->prev = iter;
411  ty->cast = iter;
412  return iter;
413  }
414  iter = iter->next;
415  }
416  }
417  return 0;
418 }
419 
420 /*
421  Identical to SWIG_TypeCheck, except strcmp is replaced with a pointer comparison
422 */
425  if (ty) {
426  swig_cast_info *iter = ty->cast;
427  while (iter) {
428  if (iter->type == from) {
429  if (iter == ty->cast)
430  return iter;
431  /* Move iter to the top of the linked list */
432  iter->prev->next = iter->next;
433  if (iter->next)
434  iter->next->prev = iter->prev;
435  iter->next = ty->cast;
436  iter->prev = 0;
437  if (ty->cast) ty->cast->prev = iter;
438  ty->cast = iter;
439  return iter;
440  }
441  iter = iter->next;
442  }
443  }
444  return 0;
445 }
446 
447 /*
448  Cast a pointer up an inheritance hierarchy
449 */
450 SWIGRUNTIMEINLINE void *
451 SWIG_TypeCast(swig_cast_info *ty, void *ptr, int *newmemory) {
452  return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr, newmemory);
453 }
454 
455 /*
456  Dynamic pointer casting. Down an inheritance hierarchy
457 */
460  swig_type_info *lastty = ty;
461  if (!ty || !ty->dcast) return ty;
462  while (ty && (ty->dcast)) {
463  ty = (*ty->dcast)(ptr);
464  if (ty) lastty = ty;
465  }
466  return lastty;
467 }
468 
469 /*
470  Return the name associated with this type
471 */
472 SWIGRUNTIMEINLINE const char *
474  return ty->name;
475 }
476 
477 /*
478  Return the pretty name associated with this type,
479  that is an unmangled type name in a form presentable to the user.
480 */
481 SWIGRUNTIME const char *
483  /* The "str" field contains the equivalent pretty names of the
484  type, separated by vertical-bar characters. We choose
485  to print the last name, as it is often (?) the most
486  specific. */
487  if (!type) return NULL;
488  if (type->str != NULL) {
489  const char *last_name = type->str;
490  const char *s;
491  for (s = type->str; *s; s++)
492  if (*s == '|') last_name = s+1;
493  return last_name;
494  }
495  else
496  return type->name;
497 }
498 
499 /*
500  Set the clientdata field for a type
501 */
502 SWIGRUNTIME void
504  swig_cast_info *cast = ti->cast;
505  /* if (ti->clientdata == clientdata) return; */
506  ti->clientdata = clientdata;
507 
508  while (cast) {
509  if (!cast->converter) {
510  swig_type_info *tc = cast->type;
511  if (!tc->clientdata) {
512  SWIG_TypeClientData(tc, clientdata);
513  }
514  }
515  cast = cast->next;
516  }
517 }
518 SWIGRUNTIME void
520  SWIG_TypeClientData(ti, clientdata);
521  ti->owndata = 1;
522 }
523 
524 /*
525  Search for a swig_type_info structure only by mangled name
526  Search is a O(log #types)
527 
528  We start searching at module start, and finish searching when start == end.
529  Note: if start == end at the beginning of the function, we go all the way around
530  the circular list.
531 */
534  swig_module_info *end,
535  const char *name) {
536  swig_module_info *iter = start;
537  do {
538  if (iter->size) {
539  register size_t l = 0;
540  register size_t r = iter->size - 1;
541  do {
542  /* since l+r >= 0, we can (>> 1) instead (/ 2) */
543  register size_t i = (l + r) >> 1;
544  const char *iname = iter->types[i]->name;
545  if (iname) {
546  register int compare = strcmp(name, iname);
547  if (compare == 0) {
548  return iter->types[i];
549  } else if (compare < 0) {
550  if (i) {
551  r = i - 1;
552  } else {
553  break;
554  }
555  } else if (compare > 0) {
556  l = i + 1;
557  }
558  } else {
559  break; /* should never happen */
560  }
561  } while (l <= r);
562  }
563  iter = iter->next;
564  } while (iter != end);
565  return 0;
566 }
567 
568 /*
569  Search for a swig_type_info structure for either a mangled name or a human readable name.
570  It first searches the mangled names of the types, which is a O(log #types)
571  If a type is not found it then searches the human readable names, which is O(#types).
572 
573  We start searching at module start, and finish searching when start == end.
574  Note: if start == end at the beginning of the function, we go all the way around
575  the circular list.
576 */
579  swig_module_info *end,
580  const char *name) {
581  /* STEP 1: Search the name field using binary search */
582  swig_type_info *ret = SWIG_MangledTypeQueryModule(start, end, name);
583  if (ret) {
584  return ret;
585  } else {
586  /* STEP 2: If the type hasn't been found, do a complete search
587  of the str field (the human readable name) */
588  swig_module_info *iter = start;
589  do {
590  register size_t i = 0;
591  for (; i < iter->size; ++i) {
592  if (iter->types[i]->str && (SWIG_TypeEquiv(iter->types[i]->str, name)))
593  return iter->types[i];
594  }
595  iter = iter->next;
596  } while (iter != end);
597  }
598 
599  /* neither found a match */
600  return 0;
601 }
602 
603 /*
604  Pack binary data into a string
605 */
606 SWIGRUNTIME char *
607 SWIG_PackData(char *c, void *ptr, size_t sz) {
608  static const char hex[17] = "0123456789abcdef";
609  register const unsigned char *u = (unsigned char *) ptr;
610  register const unsigned char *eu = u + sz;
611  for (; u != eu; ++u) {
612  register unsigned char uu = *u;
613  *(c++) = hex[(uu & 0xf0) >> 4];
614  *(c++) = hex[uu & 0xf];
615  }
616  return c;
617 }
618 
619 /*
620  Unpack binary data from a string
621 */
622 SWIGRUNTIME const char *
623 SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
624  register unsigned char *u = (unsigned char *) ptr;
625  register const unsigned char *eu = u + sz;
626  for (; u != eu; ++u) {
627  register char d = *(c++);
628  register unsigned char uu;
629  if ((d >= '0') && (d <= '9'))
630  uu = ((d - '0') << 4);
631  else if ((d >= 'a') && (d <= 'f'))
632  uu = ((d - ('a'-10)) << 4);
633  else
634  return (char *) 0;
635  d = *(c++);
636  if ((d >= '0') && (d <= '9'))
637  uu |= (d - '0');
638  else if ((d >= 'a') && (d <= 'f'))
639  uu |= (d - ('a'-10));
640  else
641  return (char *) 0;
642  *u = uu;
643  }
644  return c;
645 }
646 
647 /*
648  Pack 'void *' into a string buffer.
649 */
650 SWIGRUNTIME char *
651 SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) {
652  char *r = buff;
653  if ((2*sizeof(void *) + 2) > bsz) return 0;
654  *(r++) = '_';
655  r = SWIG_PackData(r,&ptr,sizeof(void *));
656  if (strlen(name) + 1 > (bsz - (r - buff))) return 0;
657  strcpy(r,name);
658  return buff;
659 }
660 
661 SWIGRUNTIME const char *
662 SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) {
663  if (*c != '_') {
664  if (strcmp(c,"NULL") == 0) {
665  *ptr = (void *) 0;
666  return name;
667  } else {
668  return 0;
669  }
670  }
671  return SWIG_UnpackData(++c,ptr,sizeof(void *));
672 }
673 
674 SWIGRUNTIME char *
675 SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) {
676  char *r = buff;
677  size_t lname = (name ? strlen(name) : 0);
678  if ((2*sz + 2 + lname) > bsz) return 0;
679  *(r++) = '_';
680  r = SWIG_PackData(r,ptr,sz);
681  if (lname) {
682  strncpy(r,name,lname+1);
683  } else {
684  *r = 0;
685  }
686  return buff;
687 }
688 
689 SWIGRUNTIME const char *
690 SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
691  if (*c != '_') {
692  if (strcmp(c,"NULL") == 0) {
693  memset(ptr,0,sz);
694  return name;
695  } else {
696  return 0;
697  }
698  }
699  return SWIG_UnpackData(++c,ptr,sz);
700 }
701 
702 #ifdef __cplusplus
703 }
704 #endif
705 
706 /* Errors in SWIG */
707 #define SWIG_UnknownError -1
708 #define SWIG_IOError -2
709 #define SWIG_RuntimeError -3
710 #define SWIG_IndexError -4
711 #define SWIG_TypeError -5
712 #define SWIG_DivisionByZero -6
713 #define SWIG_OverflowError -7
714 #define SWIG_SyntaxError -8
715 #define SWIG_ValueError -9
716 #define SWIG_SystemError -10
717 #define SWIG_AttributeError -11
718 #define SWIG_MemoryError -12
719 #define SWIG_NullReferenceError -13
720 
721 
722 
723 /* Compatibility macros for Python 3 */
724 #if PY_VERSION_HEX >= 0x03000000
725 
726 #define PyClass_Check(obj) PyObject_IsInstance(obj, (PyObject *)&PyType_Type)
727 #define PyInt_Check(x) PyLong_Check(x)
728 #define PyInt_AsLong(x) PyLong_AsLong(x)
729 #define PyInt_FromLong(x) PyLong_FromLong(x)
730 #define PyInt_FromSize_t(x) PyLong_FromSize_t(x)
731 #define PyString_Check(name) PyBytes_Check(name)
732 #define PyString_FromString(x) PyUnicode_FromString(x)
733 #define PyString_Format(fmt, args) PyUnicode_Format(fmt, args)
734 #define PyString_AsString(str) PyBytes_AsString(str)
735 #define PyString_Size(str) PyBytes_Size(str)
736 #define PyString_InternFromString(key) PyUnicode_InternFromString(key)
737 #define Py_TPFLAGS_HAVE_CLASS Py_TPFLAGS_BASETYPE
738 #define PyString_AS_STRING(x) PyUnicode_AS_STRING(x)
739 #define _PyLong_FromSsize_t(x) PyLong_FromSsize_t(x)
740 
741 #endif
742 
743 #ifndef Py_TYPE
744 # define Py_TYPE(op) ((op)->ob_type)
745 #endif
746 
747 /* SWIG APIs for compatibility of both Python 2 & 3 */
748 
749 #if PY_VERSION_HEX >= 0x03000000
750 # define SWIG_Python_str_FromFormat PyUnicode_FromFormat
751 #else
752 # define SWIG_Python_str_FromFormat PyString_FromFormat
753 #endif
754 
755 
756 /* Warning: This function will allocate a new string in Python 3,
757  * so please call SWIG_Python_str_DelForPy3(x) to free the space.
758  */
759 SWIGINTERN char*
761 {
762 #if PY_VERSION_HEX >= 0x03000000
763  char *cstr;
764  char *newstr;
765  Py_ssize_t len;
766  str = PyUnicode_AsUTF8String(str);
767  PyBytes_AsStringAndSize(str, &cstr, &len);
768  newstr = (char *) malloc(len+1);
769  memcpy(newstr, cstr, len+1);
770  Py_XDECREF(str);
771  return newstr;
772 #else
773  return PyString_AsString(str);
774 #endif
775 }
776 
777 #if PY_VERSION_HEX >= 0x03000000
778 # define SWIG_Python_str_DelForPy3(x) free( (void*) (x) )
779 #else
780 # define SWIG_Python_str_DelForPy3(x)
781 #endif
782 
783 
784 SWIGINTERN PyObject*
786 {
787 #if PY_VERSION_HEX >= 0x03000000
788  return PyUnicode_FromString(c);
789 #else
790  return PyString_FromString(c);
791 #endif
792 }
793 
794 /* Add PyOS_snprintf for old Pythons */
795 #if PY_VERSION_HEX < 0x02020000
796 # if defined(_MSC_VER) || defined(__BORLANDC__) || defined(_WATCOM)
797 # define PyOS_snprintf _snprintf
798 # else
799 # define PyOS_snprintf snprintf
800 # endif
801 #endif
802 
803 /* A crude PyString_FromFormat implementation for old Pythons */
804 #if PY_VERSION_HEX < 0x02020000
805 
806 #ifndef SWIG_PYBUFFER_SIZE
807 # define SWIG_PYBUFFER_SIZE 1024
808 #endif
809 
810 static PyObject *
811 PyString_FromFormat(const char *fmt, ...) {
812  va_list ap;
813  char buf[SWIG_PYBUFFER_SIZE * 2];
814  int res;
815  va_start(ap, fmt);
816  res = vsnprintf(buf, sizeof(buf), fmt, ap);
817  va_end(ap);
818  return (res < 0 || res >= (int)sizeof(buf)) ? 0 : PyString_FromString(buf);
819 }
820 #endif
821 
822 /* Add PyObject_Del for old Pythons */
823 #if PY_VERSION_HEX < 0x01060000
824 # define PyObject_Del(op) PyMem_DEL((op))
825 #endif
826 #ifndef PyObject_DEL
827 # define PyObject_DEL PyObject_Del
828 #endif
829 
830 /* A crude PyExc_StopIteration exception for old Pythons */
831 #if PY_VERSION_HEX < 0x02020000
832 # ifndef PyExc_StopIteration
833 # define PyExc_StopIteration PyExc_RuntimeError
834 # endif
835 # ifndef PyObject_GenericGetAttr
836 # define PyObject_GenericGetAttr 0
837 # endif
838 #endif
839 
840 /* Py_NotImplemented is defined in 2.1 and up. */
841 #if PY_VERSION_HEX < 0x02010000
842 # ifndef Py_NotImplemented
843 # define Py_NotImplemented PyExc_RuntimeError
844 # endif
845 #endif
846 
847 /* A crude PyString_AsStringAndSize implementation for old Pythons */
848 #if PY_VERSION_HEX < 0x02010000
849 # ifndef PyString_AsStringAndSize
850 # define PyString_AsStringAndSize(obj, s, len) {*s = PyString_AsString(obj); *len = *s ? strlen(*s) : 0;}
851 # endif
852 #endif
853 
854 /* PySequence_Size for old Pythons */
855 #if PY_VERSION_HEX < 0x02000000
856 # ifndef PySequence_Size
857 # define PySequence_Size PySequence_Length
858 # endif
859 #endif
860 
861 /* PyBool_FromLong for old Pythons */
862 #if PY_VERSION_HEX < 0x02030000
863 static
864 PyObject *PyBool_FromLong(long ok)
865 {
866  PyObject *result = ok ? Py_True : Py_False;
867  Py_INCREF(result);
868  return result;
869 }
870 #endif
871 
872 /* Py_ssize_t for old Pythons */
873 /* This code is as recommended by: */
874 /* http://www.python.org/dev/peps/pep-0353/#conversion-guidelines */
875 #if PY_VERSION_HEX < 0x02050000 && !defined(PY_SSIZE_T_MIN)
876 typedef int Py_ssize_t;
877 # define PY_SSIZE_T_MAX INT_MAX
878 # define PY_SSIZE_T_MIN INT_MIN
879 typedef inquiry lenfunc;
880 typedef intargfunc ssizeargfunc;
881 typedef intintargfunc ssizessizeargfunc;
882 typedef intobjargproc ssizeobjargproc;
883 typedef intintobjargproc ssizessizeobjargproc;
884 typedef getreadbufferproc readbufferproc;
885 typedef getwritebufferproc writebufferproc;
886 typedef getsegcountproc segcountproc;
887 typedef getcharbufferproc charbufferproc;
888 static long PyNumber_AsSsize_t (PyObject *x, void *SWIGUNUSEDPARM(exc))
889 {
890  long result = 0;
891  PyObject *i = PyNumber_Int(x);
892  if (i) {
893  result = PyInt_AsLong(i);
894  Py_DECREF(i);
895  }
896  return result;
897 }
898 #endif
899 
900 #if PY_VERSION_HEX < 0x02050000
901 #define PyInt_FromSize_t(x) PyInt_FromLong((long)x)
902 #endif
903 
904 #if PY_VERSION_HEX < 0x02040000
905 #define Py_VISIT(op) \
906  do { \
907  if (op) { \
908  int vret = visit((op), arg); \
909  if (vret) \
910  return vret; \
911  } \
912  } while (0)
913 #endif
914 
915 #if PY_VERSION_HEX < 0x02030000
916 typedef struct {
917  PyTypeObject type;
918  PyNumberMethods as_number;
919  PyMappingMethods as_mapping;
920  PySequenceMethods as_sequence;
921  PyBufferProcs as_buffer;
922  PyObject *name, *slots;
924 #endif
925 
926 #if PY_VERSION_HEX < 0x02030000
927 typedef destructor freefunc;
928 #endif
929 
930 #if ((PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION > 6) || \
931  (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION > 0) || \
932  (PY_MAJOR_VERSION > 3))
933 # define SWIGPY_USE_CAPSULE
934 # define SWIGPY_CAPSULE_NAME ((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION ".type_pointer_capsule" SWIG_TYPE_TABLE_NAME)
935 #endif
936 
937 #if PY_VERSION_HEX < 0x03020000
938 #define PyDescr_TYPE(x) (((PyDescrObject *)(x))->d_type)
939 #define PyDescr_NAME(x) (((PyDescrObject *)(x))->d_name)
940 #endif
941 
942 /* -----------------------------------------------------------------------------
943  * error manipulation
944  * ----------------------------------------------------------------------------- */
945 
946 SWIGRUNTIME PyObject*
948  PyObject* type = 0;
949  switch(code) {
950  case SWIG_MemoryError:
951  type = PyExc_MemoryError;
952  break;
953  case SWIG_IOError:
954  type = PyExc_IOError;
955  break;
956  case SWIG_RuntimeError:
957  type = PyExc_RuntimeError;
958  break;
959  case SWIG_IndexError:
960  type = PyExc_IndexError;
961  break;
962  case SWIG_TypeError:
963  type = PyExc_TypeError;
964  break;
965  case SWIG_DivisionByZero:
966  type = PyExc_ZeroDivisionError;
967  break;
968  case SWIG_OverflowError:
969  type = PyExc_OverflowError;
970  break;
971  case SWIG_SyntaxError:
972  type = PyExc_SyntaxError;
973  break;
974  case SWIG_ValueError:
975  type = PyExc_ValueError;
976  break;
977  case SWIG_SystemError:
978  type = PyExc_SystemError;
979  break;
980  case SWIG_AttributeError:
981  type = PyExc_AttributeError;
982  break;
983  default:
984  type = PyExc_RuntimeError;
985  }
986  return type;
987 }
988 
989 
990 SWIGRUNTIME void
991 SWIG_Python_AddErrorMsg(const char* mesg)
992 {
993  PyObject *type = 0;
994  PyObject *value = 0;
995  PyObject *traceback = 0;
996 
997  if (PyErr_Occurred()) PyErr_Fetch(&type, &value, &traceback);
998  if (value) {
999  char *tmp;
1000  PyObject *old_str = PyObject_Str(value);
1001  PyErr_Clear();
1002  Py_XINCREF(type);
1003 
1004  PyErr_Format(type, "%s %s", tmp = SWIG_Python_str_AsChar(old_str), mesg);
1006  Py_DECREF(old_str);
1007  Py_DECREF(value);
1008  } else {
1009  PyErr_SetString(PyExc_RuntimeError, mesg);
1010  }
1011 }
1012 
1013 #if defined(SWIG_PYTHON_NO_THREADS)
1014 # if defined(SWIG_PYTHON_THREADS)
1015 # undef SWIG_PYTHON_THREADS
1016 # endif
1017 #endif
1018 #if defined(SWIG_PYTHON_THREADS) /* Threading support is enabled */
1019 # if !defined(SWIG_PYTHON_USE_GIL) && !defined(SWIG_PYTHON_NO_USE_GIL)
1020 # if (PY_VERSION_HEX >= 0x02030000) /* For 2.3 or later, use the PyGILState calls */
1021 # define SWIG_PYTHON_USE_GIL
1022 # endif
1023 # endif
1024 # if defined(SWIG_PYTHON_USE_GIL) /* Use PyGILState threads calls */
1025 # ifndef SWIG_PYTHON_INITIALIZE_THREADS
1026 # define SWIG_PYTHON_INITIALIZE_THREADS PyEval_InitThreads()
1027 # endif
1028 # ifdef __cplusplus /* C++ code */
1029  class SWIG_Python_Thread_Block {
1030  bool status;
1031  PyGILState_STATE state;
1032  public:
1033  void end() { if (status) { PyGILState_Release(state); status = false;} }
1034  SWIG_Python_Thread_Block() : status(true), state(PyGILState_Ensure()) {}
1035  ~SWIG_Python_Thread_Block() { end(); }
1036  };
1037  class SWIG_Python_Thread_Allow {
1038  bool status;
1039  PyThreadState *save;
1040  public:
1041  void end() { if (status) { PyEval_RestoreThread(save); status = false; }}
1042  SWIG_Python_Thread_Allow() : status(true), save(PyEval_SaveThread()) {}
1043  ~SWIG_Python_Thread_Allow() { end(); }
1044  };
1045 # define SWIG_PYTHON_THREAD_BEGIN_BLOCK SWIG_Python_Thread_Block _swig_thread_block
1046 # define SWIG_PYTHON_THREAD_END_BLOCK _swig_thread_block.end()
1047 # define SWIG_PYTHON_THREAD_BEGIN_ALLOW SWIG_Python_Thread_Allow _swig_thread_allow
1048 # define SWIG_PYTHON_THREAD_END_ALLOW _swig_thread_allow.end()
1049 # else /* C code */
1050 # define SWIG_PYTHON_THREAD_BEGIN_BLOCK PyGILState_STATE _swig_thread_block = PyGILState_Ensure()
1051 # define SWIG_PYTHON_THREAD_END_BLOCK PyGILState_Release(_swig_thread_block)
1052 # define SWIG_PYTHON_THREAD_BEGIN_ALLOW PyThreadState *_swig_thread_allow = PyEval_SaveThread()
1053 # define SWIG_PYTHON_THREAD_END_ALLOW PyEval_RestoreThread(_swig_thread_allow)
1054 # endif
1055 # else /* Old thread way, not implemented, user must provide it */
1056 # if !defined(SWIG_PYTHON_INITIALIZE_THREADS)
1057 # define SWIG_PYTHON_INITIALIZE_THREADS
1058 # endif
1059 # if !defined(SWIG_PYTHON_THREAD_BEGIN_BLOCK)
1060 # define SWIG_PYTHON_THREAD_BEGIN_BLOCK
1061 # endif
1062 # if !defined(SWIG_PYTHON_THREAD_END_BLOCK)
1063 # define SWIG_PYTHON_THREAD_END_BLOCK
1064 # endif
1065 # if !defined(SWIG_PYTHON_THREAD_BEGIN_ALLOW)
1066 # define SWIG_PYTHON_THREAD_BEGIN_ALLOW
1067 # endif
1068 # if !defined(SWIG_PYTHON_THREAD_END_ALLOW)
1069 # define SWIG_PYTHON_THREAD_END_ALLOW
1070 # endif
1071 # endif
1072 #else /* No thread support */
1073 # define SWIG_PYTHON_INITIALIZE_THREADS
1074 # define SWIG_PYTHON_THREAD_BEGIN_BLOCK
1075 # define SWIG_PYTHON_THREAD_END_BLOCK
1076 # define SWIG_PYTHON_THREAD_BEGIN_ALLOW
1077 # define SWIG_PYTHON_THREAD_END_ALLOW
1078 #endif
1079 
1080 /* -----------------------------------------------------------------------------
1081  * Python API portion that goes into the runtime
1082  * ----------------------------------------------------------------------------- */
1083 
1084 #ifdef __cplusplus
1085 extern "C" {
1086 #endif
1087 
1088 /* -----------------------------------------------------------------------------
1089  * Constant declarations
1090  * ----------------------------------------------------------------------------- */
1091 
1092 /* Constant Types */
1093 #define SWIG_PY_POINTER 4
1094 #define SWIG_PY_BINARY 5
1095 
1096 /* Constant information structure */
1097 typedef struct swig_const_info {
1098  int type;
1099  char *name;
1100  long lvalue;
1101  double dvalue;
1102  void *pvalue;
1104 } swig_const_info;
1105 
1106 
1107 /* -----------------------------------------------------------------------------
1108  * Wrapper of PyInstanceMethod_New() used in Python 3
1109  * It is exported to the generated module, used for -fastproxy
1110  * ----------------------------------------------------------------------------- */
1111 #if PY_VERSION_HEX >= 0x03000000
1112 SWIGRUNTIME PyObject* SWIG_PyInstanceMethod_New(PyObject *SWIGUNUSEDPARM(self), PyObject *func)
1113 {
1114  return PyInstanceMethod_New(func);
1115 }
1116 #else
1117 SWIGRUNTIME PyObject* SWIG_PyInstanceMethod_New(PyObject *SWIGUNUSEDPARM(self), PyObject *SWIGUNUSEDPARM(func))
1118 {
1119  return NULL;
1120 }
1121 #endif
1122 
1123 #ifdef __cplusplus
1124 }
1125 #endif
1126 
1127 
1128 /* -----------------------------------------------------------------------------
1129  * pyrun.swg
1130  *
1131  * This file contains the runtime support for Python modules
1132  * and includes code for managing global variables and pointer
1133  * type checking.
1134  *
1135  * ----------------------------------------------------------------------------- */
1136 
1137 /* Common SWIG API */
1138 
1139 /* for raw pointers */
1140 #define SWIG_Python_ConvertPtr(obj, pptr, type, flags) SWIG_Python_ConvertPtrAndOwn(obj, pptr, type, flags, 0)
1141 #define SWIG_ConvertPtr(obj, pptr, type, flags) SWIG_Python_ConvertPtr(obj, pptr, type, flags)
1142 #define SWIG_ConvertPtrAndOwn(obj,pptr,type,flags,own) SWIG_Python_ConvertPtrAndOwn(obj, pptr, type, flags, own)
1143 
1144 #ifdef SWIGPYTHON_BUILTIN
1145 #define SWIG_NewPointerObj(ptr, type, flags) SWIG_Python_NewPointerObj(self, ptr, type, flags)
1146 #else
1147 #define SWIG_NewPointerObj(ptr, type, flags) SWIG_Python_NewPointerObj(NULL, ptr, type, flags)
1148 #endif
1149 
1150 #define SWIG_InternalNewPointerObj(ptr, type, flags) SWIG_Python_NewPointerObj(NULL, ptr, type, flags)
1151 
1152 #define SWIG_CheckImplicit(ty) SWIG_Python_CheckImplicit(ty)
1153 #define SWIG_AcquirePtr(ptr, src) SWIG_Python_AcquirePtr(ptr, src)
1154 #define swig_owntype int
1155 
1156 /* for raw packed data */
1157 #define SWIG_ConvertPacked(obj, ptr, sz, ty) SWIG_Python_ConvertPacked(obj, ptr, sz, ty)
1158 #define SWIG_NewPackedObj(ptr, sz, type) SWIG_Python_NewPackedObj(ptr, sz, type)
1159 
1160 /* for class or struct pointers */
1161 #define SWIG_ConvertInstance(obj, pptr, type, flags) SWIG_ConvertPtr(obj, pptr, type, flags)
1162 #define SWIG_NewInstanceObj(ptr, type, flags) SWIG_NewPointerObj(ptr, type, flags)
1163 
1164 /* for C or C++ function pointers */
1165 #define SWIG_ConvertFunctionPtr(obj, pptr, type) SWIG_Python_ConvertFunctionPtr(obj, pptr, type)
1166 #define SWIG_NewFunctionPtrObj(ptr, type) SWIG_Python_NewPointerObj(NULL, ptr, type, 0)
1167 
1168 /* for C++ member pointers, ie, member methods */
1169 #define SWIG_ConvertMember(obj, ptr, sz, ty) SWIG_Python_ConvertPacked(obj, ptr, sz, ty)
1170 #define SWIG_NewMemberObj(ptr, sz, type) SWIG_Python_NewPackedObj(ptr, sz, type)
1171 
1172 
1173 /* Runtime API */
1174 
1175 #define SWIG_GetModule(clientdata) SWIG_Python_GetModule(clientdata)
1176 #define SWIG_SetModule(clientdata, pointer) SWIG_Python_SetModule(pointer)
1177 #define SWIG_NewClientData(obj) SwigPyClientData_New(obj)
1178 
1179 #define SWIG_SetErrorObj SWIG_Python_SetErrorObj
1180 #define SWIG_SetErrorMsg SWIG_Python_SetErrorMsg
1181 #define SWIG_ErrorType(code) SWIG_Python_ErrorType(code)
1182 #define SWIG_Error(code, msg) SWIG_Python_SetErrorMsg(SWIG_ErrorType(code), msg)
1183 #define SWIG_fail goto fail
1184 
1185 
1186 /* Runtime API implementation */
1187 
1188 /* Error manipulation */
1189 
1190 SWIGINTERN void
1191 SWIG_Python_SetErrorObj(PyObject *errtype, PyObject *obj) {
1193  PyErr_SetObject(errtype, obj);
1194  Py_DECREF(obj);
1196 }
1197 
1198 SWIGINTERN void
1199 SWIG_Python_SetErrorMsg(PyObject *errtype, const char *msg) {
1201  PyErr_SetString(errtype, msg);
1203 }
1204 
1205 #define SWIG_Python_Raise(obj, type, desc) SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(desc), obj)
1206 
1207 /* Set a constant value */
1208 
1209 #if defined(SWIGPYTHON_BUILTIN)
1210 
1211 SWIGINTERN void
1212 SwigPyBuiltin_AddPublicSymbol(PyObject *seq, const char *key) {
1213  PyObject *s = PyString_InternFromString(key);
1214  PyList_Append(seq, s);
1215  Py_DECREF(s);
1216 }
1217 
1218 SWIGINTERN void
1219 SWIG_Python_SetConstant(PyObject *d, PyObject *public_interface, const char *name, PyObject *obj) {
1220 #if PY_VERSION_HEX < 0x02030000
1221  PyDict_SetItemString(d, (char *)name, obj);
1222 #else
1223  PyDict_SetItemString(d, name, obj);
1224 #endif
1225  Py_DECREF(obj);
1226  if (public_interface)
1227  SwigPyBuiltin_AddPublicSymbol(public_interface, name);
1228 }
1229 
1230 #else
1231 
1232 SWIGINTERN void
1233 SWIG_Python_SetConstant(PyObject *d, const char *name, PyObject *obj) {
1234 #if PY_VERSION_HEX < 0x02030000
1235  PyDict_SetItemString(d, (char *)name, obj);
1236 #else
1237  PyDict_SetItemString(d, name, obj);
1238 #endif
1239  Py_DECREF(obj);
1240 }
1241 
1242 #endif
1243 
1244 /* Append a value to the result obj */
1245 
1246 SWIGINTERN PyObject*
1247 SWIG_Python_AppendOutput(PyObject* result, PyObject* obj) {
1248 #if !defined(SWIG_PYTHON_OUTPUT_TUPLE)
1249  if (!result) {
1250  result = obj;
1251  } else if (result == Py_None) {
1252  Py_DECREF(result);
1253  result = obj;
1254  } else {
1255  if (!PyList_Check(result)) {
1256  PyObject *o2 = result;
1257  result = PyList_New(1);
1258  PyList_SetItem(result, 0, o2);
1259  }
1260  PyList_Append(result,obj);
1261  Py_DECREF(obj);
1262  }
1263  return result;
1264 #else
1265  PyObject* o2;
1266  PyObject* o3;
1267  if (!result) {
1268  result = obj;
1269  } else if (result == Py_None) {
1270  Py_DECREF(result);
1271  result = obj;
1272  } else {
1273  if (!PyTuple_Check(result)) {
1274  o2 = result;
1275  result = PyTuple_New(1);
1276  PyTuple_SET_ITEM(result, 0, o2);
1277  }
1278  o3 = PyTuple_New(1);
1279  PyTuple_SET_ITEM(o3, 0, obj);
1280  o2 = result;
1281  result = PySequence_Concat(o2, o3);
1282  Py_DECREF(o2);
1283  Py_DECREF(o3);
1284  }
1285  return result;
1286 #endif
1287 }
1288 
1289 /* Unpack the argument tuple */
1290 
1291 SWIGINTERN int
1292 SWIG_Python_UnpackTuple(PyObject *args, const char *name, Py_ssize_t min, Py_ssize_t max, PyObject **objs)
1293 {
1294  if (!args) {
1295  if (!min && !max) {
1296  return 1;
1297  } else {
1298  PyErr_Format(PyExc_TypeError, "%s expected %s%d arguments, got none",
1299  name, (min == max ? "" : "at least "), (int)min);
1300  return 0;
1301  }
1302  }
1303  if (!PyTuple_Check(args)) {
1304  if (min <= 1 && max >= 1) {
1305  register int i;
1306  objs[0] = args;
1307  for (i = 1; i < max; ++i) {
1308  objs[i] = 0;
1309  }
1310  return 2;
1311  }
1312  PyErr_SetString(PyExc_SystemError, "UnpackTuple() argument list is not a tuple");
1313  return 0;
1314  } else {
1315  register Py_ssize_t l = PyTuple_GET_SIZE(args);
1316  if (l < min) {
1317  PyErr_Format(PyExc_TypeError, "%s expected %s%d arguments, got %d",
1318  name, (min == max ? "" : "at least "), (int)min, (int)l);
1319  return 0;
1320  } else if (l > max) {
1321  PyErr_Format(PyExc_TypeError, "%s expected %s%d arguments, got %d",
1322  name, (min == max ? "" : "at most "), (int)max, (int)l);
1323  return 0;
1324  } else {
1325  register int i;
1326  for (i = 0; i < l; ++i) {
1327  objs[i] = PyTuple_GET_ITEM(args, i);
1328  }
1329  for (; l < max; ++l) {
1330  objs[l] = 0;
1331  }
1332  return i + 1;
1333  }
1334  }
1335 }
1336 
1337 /* A functor is a function object with one single object argument */
1338 #if PY_VERSION_HEX >= 0x02020000
1339 #define SWIG_Python_CallFunctor(functor, obj) PyObject_CallFunctionObjArgs(functor, obj, NULL);
1340 #else
1341 #define SWIG_Python_CallFunctor(functor, obj) PyObject_CallFunction(functor, "O", obj);
1342 #endif
1343 
1344 /*
1345  Helper for static pointer initialization for both C and C++ code, for example
1346  static PyObject *SWIG_STATIC_POINTER(MyVar) = NewSomething(...);
1347 */
1348 #ifdef __cplusplus
1349 #define SWIG_STATIC_POINTER(var) var
1350 #else
1351 #define SWIG_STATIC_POINTER(var) var = 0; if (!var) var
1352 #endif
1353 
1354 /* -----------------------------------------------------------------------------
1355  * Pointer declarations
1356  * ----------------------------------------------------------------------------- */
1357 
1358 /* Flags for new pointer objects */
1359 #define SWIG_POINTER_NOSHADOW (SWIG_POINTER_OWN << 1)
1360 #define SWIG_POINTER_NEW (SWIG_POINTER_NOSHADOW | SWIG_POINTER_OWN)
1361 
1362 #define SWIG_POINTER_IMPLICIT_CONV (SWIG_POINTER_DISOWN << 1)
1363 
1364 #define SWIG_BUILTIN_TP_INIT (SWIG_POINTER_OWN << 2)
1365 #define SWIG_BUILTIN_INIT (SWIG_BUILTIN_TP_INIT | SWIG_POINTER_OWN)
1366 
1367 #ifdef __cplusplus
1368 extern "C" {
1369 #endif
1370 
1371 /* How to access Py_None */
1372 #if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
1373 # ifndef SWIG_PYTHON_NO_BUILD_NONE
1374 # ifndef SWIG_PYTHON_BUILD_NONE
1375 # define SWIG_PYTHON_BUILD_NONE
1376 # endif
1377 # endif
1378 #endif
1379 
1380 #ifdef SWIG_PYTHON_BUILD_NONE
1381 # ifdef Py_None
1382 # undef Py_None
1383 # define Py_None SWIG_Py_None()
1384 # endif
1385 SWIGRUNTIMEINLINE PyObject *
1386 _SWIG_Py_None(void)
1387 {
1388  PyObject *none = Py_BuildValue((char*)"");
1389  Py_DECREF(none);
1390  return none;
1391 }
1392 SWIGRUNTIME PyObject *
1393 SWIG_Py_None(void)
1394 {
1395  static PyObject *SWIG_STATIC_POINTER(none) = _SWIG_Py_None();
1396  return none;
1397 }
1398 #endif
1399 
1400 /* The python void return value */
1401 
1402 SWIGRUNTIMEINLINE PyObject *
1404 {
1405  PyObject *none = Py_None;
1406  Py_INCREF(none);
1407  return none;
1408 }
1409 
1410 /* SwigPyClientData */
1411 
1412 typedef struct {
1413  PyObject *klass;
1414  PyObject *newraw;
1415  PyObject *newargs;
1416  PyObject *destroy;
1417  int delargs;
1419  PyTypeObject *pytype;
1421 
1422 SWIGRUNTIMEINLINE int
1424 {
1426  return data ? data->implicitconv : 0;
1427 }
1428 
1429 SWIGRUNTIMEINLINE PyObject *
1431  SwigPyClientData *data = desc ? (SwigPyClientData *) desc->clientdata : 0;
1432  PyObject *klass = data ? data->klass : 0;
1433  return (klass ? klass : PyExc_RuntimeError);
1434 }
1435 
1436 
1438 SwigPyClientData_New(PyObject* obj)
1439 {
1440  if (!obj) {
1441  return 0;
1442  } else {
1443  SwigPyClientData *data = (SwigPyClientData *)malloc(sizeof(SwigPyClientData));
1444  /* the klass element */
1445  data->klass = obj;
1446  Py_INCREF(data->klass);
1447  /* the newraw method and newargs arguments used to create a new raw instance */
1448  if (PyClass_Check(obj)) {
1449  data->newraw = 0;
1450  data->newargs = obj;
1451  Py_INCREF(obj);
1452  } else {
1453 #if (PY_VERSION_HEX < 0x02020000)
1454  data->newraw = 0;
1455 #else
1456  data->newraw = PyObject_GetAttrString(data->klass, (char *)"__new__");
1457 #endif
1458  if (data->newraw) {
1459  Py_INCREF(data->newraw);
1460  data->newargs = PyTuple_New(1);
1461  PyTuple_SetItem(data->newargs, 0, obj);
1462  } else {
1463  data->newargs = obj;
1464  }
1465  Py_INCREF(data->newargs);
1466  }
1467  /* the destroy method, aka as the C++ delete method */
1468  data->destroy = PyObject_GetAttrString(data->klass, (char *)"__swig_destroy__");
1469  if (PyErr_Occurred()) {
1470  PyErr_Clear();
1471  data->destroy = 0;
1472  }
1473  if (data->destroy) {
1474  int flags;
1475  Py_INCREF(data->destroy);
1476  flags = PyCFunction_GET_FLAGS(data->destroy);
1477 #ifdef METH_O
1478  data->delargs = !(flags & (METH_O));
1479 #else
1480  data->delargs = 0;
1481 #endif
1482  } else {
1483  data->delargs = 0;
1484  }
1485  data->implicitconv = 0;
1486  data->pytype = 0;
1487  return data;
1488  }
1489 }
1490 
1491 SWIGRUNTIME void
1493  Py_XDECREF(data->newraw);
1494  Py_XDECREF(data->newargs);
1495  Py_XDECREF(data->destroy);
1496 }
1497 
1498 /* =============== SwigPyObject =====================*/
1499 
1500 typedef struct {
1501  PyObject_HEAD
1502  void *ptr;
1504  int own;
1505  PyObject *next;
1506 #ifdef SWIGPYTHON_BUILTIN
1507  PyObject *dict;
1508 #endif
1509 } SwigPyObject;
1510 
1511 SWIGRUNTIME PyObject *
1513 {
1514  return PyLong_FromVoidPtr(v->ptr);
1515 }
1516 
1517 SWIGRUNTIME PyObject *
1518 SwigPyObject_format(const char* fmt, SwigPyObject *v)
1519 {
1520  PyObject *res = NULL;
1521  PyObject *args = PyTuple_New(1);
1522  if (args) {
1523  if (PyTuple_SetItem(args, 0, SwigPyObject_long(v)) == 0) {
1524  PyObject *ofmt = SWIG_Python_str_FromChar(fmt);
1525  if (ofmt) {
1526 #if PY_VERSION_HEX >= 0x03000000
1527  res = PyUnicode_Format(ofmt,args);
1528 #else
1529  res = PyString_Format(ofmt,args);
1530 #endif
1531  Py_DECREF(ofmt);
1532  }
1533  Py_DECREF(args);
1534  }
1535  }
1536  return res;
1537 }
1538 
1539 SWIGRUNTIME PyObject *
1541 {
1542  return SwigPyObject_format("%o",v);
1543 }
1544 
1545 SWIGRUNTIME PyObject *
1547 {
1548  return SwigPyObject_format("%x",v);
1549 }
1550 
1551 SWIGRUNTIME PyObject *
1552 #ifdef METH_NOARGS
1554 #else
1555 SwigPyObject_repr(SwigPyObject *v, PyObject *args)
1556 #endif
1557 {
1558  const char *name = SWIG_TypePrettyName(v->ty);
1559  PyObject *repr = SWIG_Python_str_FromFormat("<Swig Object of type '%s' at %p>", (name ? name : "unknown"), (void *)v);
1560  if (v->next) {
1561 # ifdef METH_NOARGS
1562  PyObject *nrep = SwigPyObject_repr((SwigPyObject *)v->next);
1563 # else
1564  PyObject *nrep = SwigPyObject_repr((SwigPyObject *)v->next, args);
1565 # endif
1566 # if PY_VERSION_HEX >= 0x03000000
1567  PyObject *joined = PyUnicode_Concat(repr, nrep);
1568  Py_DecRef(repr);
1569  Py_DecRef(nrep);
1570  repr = joined;
1571 # else
1572  PyString_ConcatAndDel(&repr,nrep);
1573 # endif
1574  }
1575  return repr;
1576 }
1577 
1578 SWIGRUNTIME int
1580 {
1581  void *i = v->ptr;
1582  void *j = w->ptr;
1583  return (i < j) ? -1 : ((i > j) ? 1 : 0);
1584 }
1585 
1586 /* Added for Python 3.x, would it also be useful for Python 2.x? */
1587 SWIGRUNTIME PyObject*
1589 {
1590  PyObject* res;
1591  if( op != Py_EQ && op != Py_NE ) {
1592  Py_INCREF(Py_NotImplemented);
1593  return Py_NotImplemented;
1594  }
1595  res = PyBool_FromLong( (SwigPyObject_compare(v, w)==0) == (op == Py_EQ) ? 1 : 0);
1596  return res;
1597 }
1598 
1599 
1600 SWIGRUNTIME PyTypeObject* SwigPyObject_TypeOnce(void);
1601 
1602 #ifdef SWIGPYTHON_BUILTIN
1603 static swig_type_info *SwigPyObject_stype = 0;
1604 SWIGRUNTIME PyTypeObject*
1605 SwigPyObject_type(void) {
1606  SwigPyClientData *cd;
1607  assert(SwigPyObject_stype);
1608  cd = (SwigPyClientData*) SwigPyObject_stype->clientdata;
1609  assert(cd);
1610  assert(cd->pytype);
1611  return cd->pytype;
1612 }
1613 #else
1614 SWIGRUNTIME PyTypeObject*
1616  static PyTypeObject *SWIG_STATIC_POINTER(type) = SwigPyObject_TypeOnce();
1617  return type;
1618 }
1619 #endif
1620 
1622 SwigPyObject_Check(PyObject *op) {
1623 #ifdef SWIGPYTHON_BUILTIN
1624  PyTypeObject *target_tp = SwigPyObject_type();
1625  if (PyType_IsSubtype(op->ob_type, target_tp))
1626  return 1;
1627  return (strcmp(op->ob_type->tp_name, "SwigPyObject") == 0);
1628 #else
1629  return (Py_TYPE(op) == SwigPyObject_type())
1630  || (strcmp(Py_TYPE(op)->tp_name,"SwigPyObject") == 0);
1631 #endif
1632 }
1633 
1634 SWIGRUNTIME PyObject *
1635 SwigPyObject_New(void *ptr, swig_type_info *ty, int own);
1636 
1637 SWIGRUNTIME void
1639 {
1640  SwigPyObject *sobj = (SwigPyObject *) v;
1641  PyObject *next = sobj->next;
1642  if (sobj->own == SWIG_POINTER_OWN) {
1643  swig_type_info *ty = sobj->ty;
1644  SwigPyClientData *data = ty ? (SwigPyClientData *) ty->clientdata : 0;
1645  PyObject *destroy = data ? data->destroy : 0;
1646  if (destroy) {
1647  /* destroy is always a VARARGS method */
1648  PyObject *res;
1649  if (data->delargs) {
1650  /* we need to create a temporary object to carry the destroy operation */
1651  PyObject *tmp = SwigPyObject_New(sobj->ptr, ty, 0);
1652  res = SWIG_Python_CallFunctor(destroy, tmp);
1653  Py_DECREF(tmp);
1654  } else {
1655  PyCFunction meth = PyCFunction_GET_FUNCTION(destroy);
1656  PyObject *mself = PyCFunction_GET_SELF(destroy);
1657  res = ((*meth)(mself, v));
1658  }
1659  Py_XDECREF(res);
1660  }
1661 #if !defined(SWIG_PYTHON_SILENT_MEMLEAK)
1662  else {
1663  const char *name = SWIG_TypePrettyName(ty);
1664  printf("swig/python detected a memory leak of type '%s', no destructor found.\n", (name ? name : "unknown"));
1665  }
1666 #endif
1667  }
1668  Py_XDECREF(next);
1669  PyObject_DEL(v);
1670 }
1671 
1672 SWIGRUNTIME PyObject*
1673 SwigPyObject_append(PyObject* v, PyObject* next)
1674 {
1675  SwigPyObject *sobj = (SwigPyObject *) v;
1676 #ifndef METH_O
1677  PyObject *tmp = 0;
1678  if (!PyArg_ParseTuple(next,(char *)"O:append", &tmp)) return NULL;
1679  next = tmp;
1680 #endif
1681  if (!SwigPyObject_Check(next)) {
1682  return NULL;
1683  }
1684  sobj->next = next;
1685  Py_INCREF(next);
1686  return SWIG_Py_Void();
1687 }
1688 
1689 SWIGRUNTIME PyObject*
1690 #ifdef METH_NOARGS
1691 SwigPyObject_next(PyObject* v)
1692 #else
1693 SwigPyObject_next(PyObject* v, PyObject *SWIGUNUSEDPARM(args))
1694 #endif
1695 {
1696  SwigPyObject *sobj = (SwigPyObject *) v;
1697  if (sobj->next) {
1698  Py_INCREF(sobj->next);
1699  return sobj->next;
1700  } else {
1701  return SWIG_Py_Void();
1702  }
1703 }
1704 
1705 SWIGINTERN PyObject*
1706 #ifdef METH_NOARGS
1707 SwigPyObject_disown(PyObject *v)
1708 #else
1709 SwigPyObject_disown(PyObject* v, PyObject *SWIGUNUSEDPARM(args))
1710 #endif
1711 {
1712  SwigPyObject *sobj = (SwigPyObject *)v;
1713  sobj->own = 0;
1714  return SWIG_Py_Void();
1715 }
1716 
1717 SWIGINTERN PyObject*
1718 #ifdef METH_NOARGS
1719 SwigPyObject_acquire(PyObject *v)
1720 #else
1721 SwigPyObject_acquire(PyObject* v, PyObject *SWIGUNUSEDPARM(args))
1722 #endif
1723 {
1724  SwigPyObject *sobj = (SwigPyObject *)v;
1725  sobj->own = SWIG_POINTER_OWN;
1726  return SWIG_Py_Void();
1727 }
1728 
1729 SWIGINTERN PyObject*
1730 SwigPyObject_own(PyObject *v, PyObject *args)
1731 {
1732  PyObject *val = 0;
1733 #if (PY_VERSION_HEX < 0x02020000)
1734  if (!PyArg_ParseTuple(args,(char *)"|O:own",&val))
1735 #elif (PY_VERSION_HEX < 0x02050000)
1736  if (!PyArg_UnpackTuple(args, (char *)"own", 0, 1, &val))
1737 #else
1738  if (!PyArg_UnpackTuple(args, "own", 0, 1, &val))
1739 #endif
1740  {
1741  return NULL;
1742  }
1743  else
1744  {
1745  SwigPyObject *sobj = (SwigPyObject *)v;
1746  PyObject *obj = PyBool_FromLong(sobj->own);
1747  if (val) {
1748 #ifdef METH_NOARGS
1749  if (PyObject_IsTrue(val)) {
1751  } else {
1753  }
1754 #else
1755  if (PyObject_IsTrue(val)) {
1756  SwigPyObject_acquire(v,args);
1757  } else {
1758  SwigPyObject_disown(v,args);
1759  }
1760 #endif
1761  }
1762  return obj;
1763  }
1764 }
1765 
1766 #ifdef METH_O
1767 static PyMethodDef
1768 swigobject_methods[] = {
1769  {(char *)"disown", (PyCFunction)SwigPyObject_disown, METH_NOARGS, (char *)"releases ownership of the pointer"},
1770  {(char *)"acquire", (PyCFunction)SwigPyObject_acquire, METH_NOARGS, (char *)"acquires ownership of the pointer"},
1771  {(char *)"own", (PyCFunction)SwigPyObject_own, METH_VARARGS, (char *)"returns/sets ownership of the pointer"},
1772  {(char *)"append", (PyCFunction)SwigPyObject_append, METH_O, (char *)"appends another 'this' object"},
1773  {(char *)"next", (PyCFunction)SwigPyObject_next, METH_NOARGS, (char *)"returns the next 'this' object"},
1774  {(char *)"__repr__",(PyCFunction)SwigPyObject_repr, METH_NOARGS, (char *)"returns object representation"},
1775  {0, 0, 0, 0}
1776 };
1777 #else
1778 static PyMethodDef
1779 swigobject_methods[] = {
1780  {(char *)"disown", (PyCFunction)SwigPyObject_disown, METH_VARARGS, (char *)"releases ownership of the pointer"},
1781  {(char *)"acquire", (PyCFunction)SwigPyObject_acquire, METH_VARARGS, (char *)"aquires ownership of the pointer"},
1782  {(char *)"own", (PyCFunction)SwigPyObject_own, METH_VARARGS, (char *)"returns/sets ownership of the pointer"},
1783  {(char *)"append", (PyCFunction)SwigPyObject_append, METH_VARARGS, (char *)"appends another 'this' object"},
1784  {(char *)"next", (PyCFunction)SwigPyObject_next, METH_VARARGS, (char *)"returns the next 'this' object"},
1785  {(char *)"__repr__",(PyCFunction)SwigPyObject_repr, METH_VARARGS, (char *)"returns object representation"},
1786  {0, 0, 0, 0}
1787 };
1788 #endif
1789 
1790 #if PY_VERSION_HEX < 0x02020000
1791 SWIGINTERN PyObject *
1793 {
1794  return Py_FindMethod(swigobject_methods, (PyObject *)sobj, name);
1795 }
1796 #endif
1797 
1798 SWIGRUNTIME PyTypeObject*
1800  static char swigobject_doc[] = "Swig object carries a C/C++ instance pointer";
1801 
1802  static PyNumberMethods SwigPyObject_as_number = {
1803  (binaryfunc)0, /*nb_add*/
1804  (binaryfunc)0, /*nb_subtract*/
1805  (binaryfunc)0, /*nb_multiply*/
1806  /* nb_divide removed in Python 3 */
1807 #if PY_VERSION_HEX < 0x03000000
1808  (binaryfunc)0, /*nb_divide*/
1809 #endif
1810  (binaryfunc)0, /*nb_remainder*/
1811  (binaryfunc)0, /*nb_divmod*/
1812  (ternaryfunc)0,/*nb_power*/
1813  (unaryfunc)0, /*nb_negative*/
1814  (unaryfunc)0, /*nb_positive*/
1815  (unaryfunc)0, /*nb_absolute*/
1816  (inquiry)0, /*nb_nonzero*/
1817  0, /*nb_invert*/
1818  0, /*nb_lshift*/
1819  0, /*nb_rshift*/
1820  0, /*nb_and*/
1821  0, /*nb_xor*/
1822  0, /*nb_or*/
1823 #if PY_VERSION_HEX < 0x03000000
1824  0, /*nb_coerce*/
1825 #endif
1826  (unaryfunc)SwigPyObject_long, /*nb_int*/
1827 #if PY_VERSION_HEX < 0x03000000
1828  (unaryfunc)SwigPyObject_long, /*nb_long*/
1829 #else
1830  0, /*nb_reserved*/
1831 #endif
1832  (unaryfunc)0, /*nb_float*/
1833 #if PY_VERSION_HEX < 0x03000000
1834  (unaryfunc)SwigPyObject_oct, /*nb_oct*/
1835  (unaryfunc)SwigPyObject_hex, /*nb_hex*/
1836 #endif
1837 #if PY_VERSION_HEX >= 0x03000000 /* 3.0 */
1838  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_index, nb_inplace_divide removed */
1839 #elif PY_VERSION_HEX >= 0x02050000 /* 2.5.0 */
1840  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_index */
1841 #elif PY_VERSION_HEX >= 0x02020000 /* 2.2.0 */
1842  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_true_divide */
1843 #elif PY_VERSION_HEX >= 0x02000000 /* 2.0.0 */
1844  0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_or */
1845 #endif
1846  };
1847 
1848  static PyTypeObject swigpyobject_type;
1849  static int type_init = 0;
1850  if (!type_init) {
1851  const PyTypeObject tmp = {
1852  /* PyObject header changed in Python 3 */
1853 #if PY_VERSION_HEX >= 0x03000000
1854  PyVarObject_HEAD_INIT(NULL, 0)
1855 #else
1856  PyObject_HEAD_INIT(NULL)
1857  0, /* ob_size */
1858 #endif
1859  (char *)"SwigPyObject", /* tp_name */
1860  sizeof(SwigPyObject), /* tp_basicsize */
1861  0, /* tp_itemsize */
1862  (destructor)SwigPyObject_dealloc, /* tp_dealloc */
1863  0, /* tp_print */
1864 #if PY_VERSION_HEX < 0x02020000
1865  (getattrfunc)SwigPyObject_getattr, /* tp_getattr */
1866 #else
1867  (getattrfunc)0, /* tp_getattr */
1868 #endif
1869  (setattrfunc)0, /* tp_setattr */
1870 #if PY_VERSION_HEX >= 0x03000000
1871  0, /* tp_reserved in 3.0.1, tp_compare in 3.0.0 but not used */
1872 #else
1873  (cmpfunc)SwigPyObject_compare, /* tp_compare */
1874 #endif
1875  (reprfunc)SwigPyObject_repr, /* tp_repr */
1876  &SwigPyObject_as_number, /* tp_as_number */
1877  0, /* tp_as_sequence */
1878  0, /* tp_as_mapping */
1879  (hashfunc)0, /* tp_hash */
1880  (ternaryfunc)0, /* tp_call */
1881  0, /* tp_str */
1882  PyObject_GenericGetAttr, /* tp_getattro */
1883  0, /* tp_setattro */
1884  0, /* tp_as_buffer */
1885  Py_TPFLAGS_DEFAULT, /* tp_flags */
1886  swigobject_doc, /* tp_doc */
1887  0, /* tp_traverse */
1888  0, /* tp_clear */
1889  (richcmpfunc)SwigPyObject_richcompare,/* tp_richcompare */
1890  0, /* tp_weaklistoffset */
1891 #if PY_VERSION_HEX >= 0x02020000
1892  0, /* tp_iter */
1893  0, /* tp_iternext */
1894  swigobject_methods, /* tp_methods */
1895  0, /* tp_members */
1896  0, /* tp_getset */
1897  0, /* tp_base */
1898  0, /* tp_dict */
1899  0, /* tp_descr_get */
1900  0, /* tp_descr_set */
1901  0, /* tp_dictoffset */
1902  0, /* tp_init */
1903  0, /* tp_alloc */
1904  0, /* tp_new */
1905  0, /* tp_free */
1906  0, /* tp_is_gc */
1907  0, /* tp_bases */
1908  0, /* tp_mro */
1909  0, /* tp_cache */
1910  0, /* tp_subclasses */
1911  0, /* tp_weaklist */
1912 #endif
1913 #if PY_VERSION_HEX >= 0x02030000
1914  0, /* tp_del */
1915 #endif
1916 #if PY_VERSION_HEX >= 0x02060000
1917  0, /* tp_version */
1918 #endif
1919 #ifdef COUNT_ALLOCS
1920  0,0,0,0 /* tp_alloc -> tp_next */
1921 #endif
1922  };
1923  swigpyobject_type = tmp;
1924  type_init = 1;
1925 #if PY_VERSION_HEX < 0x02020000
1926  swigpyobject_type.ob_type = &PyType_Type;
1927 #else
1928  if (PyType_Ready(&swigpyobject_type) < 0)
1929  return NULL;
1930 #endif
1931  }
1932  return &swigpyobject_type;
1933 }
1934 
1935 SWIGRUNTIME PyObject *
1936 SwigPyObject_New(void *ptr, swig_type_info *ty, int own)
1937 {
1938  SwigPyObject *sobj = PyObject_NEW(SwigPyObject, SwigPyObject_type());
1939  if (sobj) {
1940  sobj->ptr = ptr;
1941  sobj->ty = ty;
1942  sobj->own = own;
1943  sobj->next = 0;
1944  }
1945  return (PyObject *)sobj;
1946 }
1947 
1948 /* -----------------------------------------------------------------------------
1949  * Implements a simple Swig Packed type, and use it instead of string
1950  * ----------------------------------------------------------------------------- */
1951 
1952 typedef struct {
1953  PyObject_HEAD
1954  void *pack;
1956  size_t size;
1957 } SwigPyPacked;
1958 
1959 SWIGRUNTIME int
1961 {
1962  char result[SWIG_BUFFER_SIZE];
1963  fputs("<Swig Packed ", fp);
1964  if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) {
1965  fputs("at ", fp);
1966  fputs(result, fp);
1967  }
1968  fputs(v->ty->name,fp);
1969  fputs(">", fp);
1970  return 0;
1971 }
1972 
1973 SWIGRUNTIME PyObject *
1975 {
1976  char result[SWIG_BUFFER_SIZE];
1977  if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) {
1978  return SWIG_Python_str_FromFormat("<Swig Packed at %s%s>", result, v->ty->name);
1979  } else {
1980  return SWIG_Python_str_FromFormat("<Swig Packed %s>", v->ty->name);
1981  }
1982 }
1983 
1984 SWIGRUNTIME PyObject *
1986 {
1987  char result[SWIG_BUFFER_SIZE];
1988  if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))){
1989  return SWIG_Python_str_FromFormat("%s%s", result, v->ty->name);
1990  } else {
1991  return SWIG_Python_str_FromChar(v->ty->name);
1992  }
1993 }
1994 
1995 SWIGRUNTIME int
1997 {
1998  size_t i = v->size;
1999  size_t j = w->size;
2000  int s = (i < j) ? -1 : ((i > j) ? 1 : 0);
2001  return s ? s : strncmp((char *)v->pack, (char *)w->pack, 2*v->size);
2002 }
2003 
2004 SWIGRUNTIME PyTypeObject* SwigPyPacked_TypeOnce(void);
2005 
2006 SWIGRUNTIME PyTypeObject*
2008  static PyTypeObject *SWIG_STATIC_POINTER(type) = SwigPyPacked_TypeOnce();
2009  return type;
2010 }
2011 
2013 SwigPyPacked_Check(PyObject *op) {
2014  return ((op)->ob_type == SwigPyPacked_TypeOnce())
2015  || (strcmp((op)->ob_type->tp_name,"SwigPyPacked") == 0);
2016 }
2017 
2018 SWIGRUNTIME void
2020 {
2021  if (SwigPyPacked_Check(v)) {
2022  SwigPyPacked *sobj = (SwigPyPacked *) v;
2023  free(sobj->pack);
2024  }
2025  PyObject_DEL(v);
2026 }
2027 
2028 SWIGRUNTIME PyTypeObject*
2030  static char swigpacked_doc[] = "Swig object carries a C/C++ instance pointer";
2031  static PyTypeObject swigpypacked_type;
2032  static int type_init = 0;
2033  if (!type_init) {
2034  const PyTypeObject tmp = {
2035  /* PyObject header changed in Python 3 */
2036 #if PY_VERSION_HEX>=0x03000000
2037  PyVarObject_HEAD_INIT(NULL, 0)
2038 #else
2039  PyObject_HEAD_INIT(NULL)
2040  0, /* ob_size */
2041 #endif
2042  (char *)"SwigPyPacked", /* tp_name */
2043  sizeof(SwigPyPacked), /* tp_basicsize */
2044  0, /* tp_itemsize */
2045  (destructor)SwigPyPacked_dealloc, /* tp_dealloc */
2046  (printfunc)SwigPyPacked_print, /* tp_print */
2047  (getattrfunc)0, /* tp_getattr */
2048  (setattrfunc)0, /* tp_setattr */
2049 #if PY_VERSION_HEX>=0x03000000
2050  0, /* tp_reserved in 3.0.1 */
2051 #else
2052  (cmpfunc)SwigPyPacked_compare, /* tp_compare */
2053 #endif
2054  (reprfunc)SwigPyPacked_repr, /* tp_repr */
2055  0, /* tp_as_number */
2056  0, /* tp_as_sequence */
2057  0, /* tp_as_mapping */
2058  (hashfunc)0, /* tp_hash */
2059  (ternaryfunc)0, /* tp_call */
2060  (reprfunc)SwigPyPacked_str, /* tp_str */
2061  PyObject_GenericGetAttr, /* tp_getattro */
2062  0, /* tp_setattro */
2063  0, /* tp_as_buffer */
2064  Py_TPFLAGS_DEFAULT, /* tp_flags */
2065  swigpacked_doc, /* tp_doc */
2066  0, /* tp_traverse */
2067  0, /* tp_clear */
2068  0, /* tp_richcompare */
2069  0, /* tp_weaklistoffset */
2070 #if PY_VERSION_HEX >= 0x02020000
2071  0, /* tp_iter */
2072  0, /* tp_iternext */
2073  0, /* tp_methods */
2074  0, /* tp_members */
2075  0, /* tp_getset */
2076  0, /* tp_base */
2077  0, /* tp_dict */
2078  0, /* tp_descr_get */
2079  0, /* tp_descr_set */
2080  0, /* tp_dictoffset */
2081  0, /* tp_init */
2082  0, /* tp_alloc */
2083  0, /* tp_new */
2084  0, /* tp_free */
2085  0, /* tp_is_gc */
2086  0, /* tp_bases */
2087  0, /* tp_mro */
2088  0, /* tp_cache */
2089  0, /* tp_subclasses */
2090  0, /* tp_weaklist */
2091 #endif
2092 #if PY_VERSION_HEX >= 0x02030000
2093  0, /* tp_del */
2094 #endif
2095 #if PY_VERSION_HEX >= 0x02060000
2096  0, /* tp_version */
2097 #endif
2098 #ifdef COUNT_ALLOCS
2099  0,0,0,0 /* tp_alloc -> tp_next */
2100 #endif
2101  };
2102  swigpypacked_type = tmp;
2103  type_init = 1;
2104 #if PY_VERSION_HEX < 0x02020000
2105  swigpypacked_type.ob_type = &PyType_Type;
2106 #else
2107  if (PyType_Ready(&swigpypacked_type) < 0)
2108  return NULL;
2109 #endif
2110  }
2111  return &swigpypacked_type;
2112 }
2113 
2114 SWIGRUNTIME PyObject *
2115 SwigPyPacked_New(void *ptr, size_t size, swig_type_info *ty)
2116 {
2117  SwigPyPacked *sobj = PyObject_NEW(SwigPyPacked, SwigPyPacked_type());
2118  if (sobj) {
2119  void *pack = malloc(size);
2120  if (pack) {
2121  memcpy(pack, ptr, size);
2122  sobj->pack = pack;
2123  sobj->ty = ty;
2124  sobj->size = size;
2125  } else {
2126  PyObject_DEL((PyObject *) sobj);
2127  sobj = 0;
2128  }
2129  }
2130  return (PyObject *) sobj;
2131 }
2132 
2134 SwigPyPacked_UnpackData(PyObject *obj, void *ptr, size_t size)
2135 {
2136  if (SwigPyPacked_Check(obj)) {
2137  SwigPyPacked *sobj = (SwigPyPacked *)obj;
2138  if (sobj->size != size) return 0;
2139  memcpy(ptr, sobj->pack, size);
2140  return sobj->ty;
2141  } else {
2142  return 0;
2143  }
2144 }
2145 
2146 /* -----------------------------------------------------------------------------
2147  * pointers/data manipulation
2148  * ----------------------------------------------------------------------------- */
2149 
2150 SWIGRUNTIMEINLINE PyObject *
2152 {
2153  return SWIG_Python_str_FromChar("this");
2154 }
2155 
2156 static PyObject *swig_this = NULL;
2157 
2158 SWIGRUNTIME PyObject *
2160 {
2161  if (swig_this == NULL)
2162  swig_this = _SWIG_This();
2163  return swig_this;
2164 }
2165 
2166 /* #define SWIG_PYTHON_SLOW_GETSET_THIS */
2167 
2168 /* TODO: I don't know how to implement the fast getset in Python 3 right now */
2169 #if PY_VERSION_HEX>=0x03000000
2170 #define SWIG_PYTHON_SLOW_GETSET_THIS
2171 #endif
2172 
2174 SWIG_Python_GetSwigThis(PyObject *pyobj)
2175 {
2176  PyObject *obj;
2177 
2178  if (SwigPyObject_Check(pyobj))
2179  return (SwigPyObject *) pyobj;
2180 
2181 #ifdef SWIGPYTHON_BUILTIN
2182  (void)obj;
2183 # ifdef PyWeakref_CheckProxy
2184  if (PyWeakref_CheckProxy(pyobj)) {
2185  pyobj = PyWeakref_GET_OBJECT(pyobj);
2186  if (pyobj && SwigPyObject_Check(pyobj))
2187  return (SwigPyObject*) pyobj;
2188  }
2189 # endif
2190  return NULL;
2191 #else
2192 
2193  obj = 0;
2194 
2195 #if (!defined(SWIG_PYTHON_SLOW_GETSET_THIS) && (PY_VERSION_HEX >= 0x02030000))
2196  if (PyInstance_Check(pyobj)) {
2197  obj = _PyInstance_Lookup(pyobj, SWIG_This());
2198  } else {
2199  PyObject **dictptr = _PyObject_GetDictPtr(pyobj);
2200  if (dictptr != NULL) {
2201  PyObject *dict = *dictptr;
2202  obj = dict ? PyDict_GetItem(dict, SWIG_This()) : 0;
2203  } else {
2204 #ifdef PyWeakref_CheckProxy
2205  if (PyWeakref_CheckProxy(pyobj)) {
2206  PyObject *wobj = PyWeakref_GET_OBJECT(pyobj);
2207  return wobj ? SWIG_Python_GetSwigThis(wobj) : 0;
2208  }
2209 #endif
2210  obj = PyObject_GetAttr(pyobj,SWIG_This());
2211  if (obj) {
2212  Py_DECREF(obj);
2213  } else {
2214  if (PyErr_Occurred()) PyErr_Clear();
2215  return 0;
2216  }
2217  }
2218  }
2219 #else
2220  obj = PyObject_GetAttr(pyobj,SWIG_This());
2221  if (obj) {
2222  Py_DECREF(obj);
2223  } else {
2224  if (PyErr_Occurred()) PyErr_Clear();
2225  return 0;
2226  }
2227 #endif
2228  if (obj && !SwigPyObject_Check(obj)) {
2229  /* a PyObject is called 'this', try to get the 'real this'
2230  SwigPyObject from it */
2231  return SWIG_Python_GetSwigThis(obj);
2232  }
2233  return (SwigPyObject *)obj;
2234 #endif
2235 }
2236 
2237 /* Acquire a pointer value */
2238 
2239 SWIGRUNTIME int
2240 SWIG_Python_AcquirePtr(PyObject *obj, int own) {
2241  if (own == SWIG_POINTER_OWN) {
2243  if (sobj) {
2244  int oldown = sobj->own;
2245  sobj->own = own;
2246  return oldown;
2247  }
2248  }
2249  return 0;
2250 }
2251 
2252 /* Convert a pointer value */
2253 
2254 SWIGRUNTIME int
2255 SWIG_Python_ConvertPtrAndOwn(PyObject *obj, void **ptr, swig_type_info *ty, int flags, int *own) {
2256  int res;
2257  SwigPyObject *sobj;
2258  int implicit_conv = (flags & SWIG_POINTER_IMPLICIT_CONV) != 0;
2259 
2260  if (!obj)
2261  return SWIG_ERROR;
2262  if (obj == Py_None && !implicit_conv) {
2263  if (ptr)
2264  *ptr = 0;
2265  return SWIG_OK;
2266  }
2267 
2268  res = SWIG_ERROR;
2269 
2270  sobj = SWIG_Python_GetSwigThis(obj);
2271  if (own)
2272  *own = 0;
2273  while (sobj) {
2274  void *vptr = sobj->ptr;
2275  if (ty) {
2276  swig_type_info *to = sobj->ty;
2277  if (to == ty) {
2278  /* no type cast needed */
2279  if (ptr) *ptr = vptr;
2280  break;
2281  } else {
2282  swig_cast_info *tc = SWIG_TypeCheck(to->name,ty);
2283  if (!tc) {
2284  sobj = (SwigPyObject *)sobj->next;
2285  } else {
2286  if (ptr) {
2287  int newmemory = 0;
2288  *ptr = SWIG_TypeCast(tc,vptr,&newmemory);
2289  if (newmemory == SWIG_CAST_NEW_MEMORY) {
2290  assert(own); /* badly formed typemap which will lead to a memory leak - it must set and use own to delete *ptr */
2291  if (own)
2292  *own = *own | SWIG_CAST_NEW_MEMORY;
2293  }
2294  }
2295  break;
2296  }
2297  }
2298  } else {
2299  if (ptr) *ptr = vptr;
2300  break;
2301  }
2302  }
2303  if (sobj) {
2304  if (own)
2305  *own = *own | sobj->own;
2306  if (flags & SWIG_POINTER_DISOWN) {
2307  sobj->own = 0;
2308  }
2309  res = SWIG_OK;
2310  } else {
2311  if (implicit_conv) {
2312  SwigPyClientData *data = ty ? (SwigPyClientData *) ty->clientdata : 0;
2313  if (data && !data->implicitconv) {
2314  PyObject *klass = data->klass;
2315  if (klass) {
2316  PyObject *impconv;
2317  data->implicitconv = 1; /* avoid recursion and call 'explicit' constructors*/
2318  impconv = SWIG_Python_CallFunctor(klass, obj);
2319  data->implicitconv = 0;
2320  if (PyErr_Occurred()) {
2321  PyErr_Clear();
2322  impconv = 0;
2323  }
2324  if (impconv) {
2325  SwigPyObject *iobj = SWIG_Python_GetSwigThis(impconv);
2326  if (iobj) {
2327  void *vptr;
2328  res = SWIG_Python_ConvertPtrAndOwn((PyObject*)iobj, &vptr, ty, 0, 0);
2329  if (SWIG_IsOK(res)) {
2330  if (ptr) {
2331  *ptr = vptr;
2332  /* transfer the ownership to 'ptr' */
2333  iobj->own = 0;
2334  res = SWIG_AddCast(res);
2335  res = SWIG_AddNewMask(res);
2336  } else {
2337  res = SWIG_AddCast(res);
2338  }
2339  }
2340  }
2341  Py_DECREF(impconv);
2342  }
2343  }
2344  }
2345  }
2346  if (!SWIG_IsOK(res) && obj == Py_None) {
2347  if (ptr)
2348  *ptr = 0;
2349  if (PyErr_Occurred())
2350  PyErr_Clear();
2351  res = SWIG_OK;
2352  }
2353  }
2354  return res;
2355 }
2356 
2357 /* Convert a function ptr value */
2358 
2359 SWIGRUNTIME int
2360 SWIG_Python_ConvertFunctionPtr(PyObject *obj, void **ptr, swig_type_info *ty) {
2361  if (!PyCFunction_Check(obj)) {
2362  return SWIG_ConvertPtr(obj, ptr, ty, 0);
2363  } else {
2364  void *vptr = 0;
2365 
2366  /* here we get the method pointer for callbacks */
2367  const char *doc = (((PyCFunctionObject *)obj) -> m_ml -> ml_doc);
2368  const char *desc = doc ? strstr(doc, "swig_ptr: ") : 0;
2369  if (desc)
2370  desc = ty ? SWIG_UnpackVoidPtr(desc + 10, &vptr, ty->name) : 0;
2371  if (!desc)
2372  return SWIG_ERROR;
2373  if (ty) {
2374  swig_cast_info *tc = SWIG_TypeCheck(desc,ty);
2375  if (tc) {
2376  int newmemory = 0;
2377  *ptr = SWIG_TypeCast(tc,vptr,&newmemory);
2378  assert(!newmemory); /* newmemory handling not yet implemented */
2379  } else {
2380  return SWIG_ERROR;
2381  }
2382  } else {
2383  *ptr = vptr;
2384  }
2385  return SWIG_OK;
2386  }
2387 }
2388 
2389 /* Convert a packed value value */
2390 
2391 SWIGRUNTIME int
2392 SWIG_Python_ConvertPacked(PyObject *obj, void *ptr, size_t sz, swig_type_info *ty) {
2393  swig_type_info *to = SwigPyPacked_UnpackData(obj, ptr, sz);
2394  if (!to) return SWIG_ERROR;
2395  if (ty) {
2396  if (to != ty) {
2397  /* check type cast? */
2398  swig_cast_info *tc = SWIG_TypeCheck(to->name,ty);
2399  if (!tc) return SWIG_ERROR;
2400  }
2401  }
2402  return SWIG_OK;
2403 }
2404 
2405 /* -----------------------------------------------------------------------------
2406  * Create a new pointer object
2407  * ----------------------------------------------------------------------------- */
2408 
2409 /*
2410  Create a new instance object, without calling __init__, and set the
2411  'this' attribute.
2412 */
2413 
2414 SWIGRUNTIME PyObject*
2416 {
2417 #if (PY_VERSION_HEX >= 0x02020000)
2418  PyObject *inst = 0;
2419  PyObject *newraw = data->newraw;
2420  if (newraw) {
2421  inst = PyObject_Call(newraw, data->newargs, NULL);
2422  if (inst) {
2423 #if !defined(SWIG_PYTHON_SLOW_GETSET_THIS)
2424  PyObject **dictptr = _PyObject_GetDictPtr(inst);
2425  if (dictptr != NULL) {
2426  PyObject *dict = *dictptr;
2427  if (dict == NULL) {
2428  dict = PyDict_New();
2429  *dictptr = dict;
2430  PyDict_SetItem(dict, SWIG_This(), swig_this);
2431  }
2432  }
2433 #else
2434  PyObject *key = SWIG_This();
2435  PyObject_SetAttr(inst, key, swig_this);
2436 #endif
2437  }
2438  } else {
2439 #if PY_VERSION_HEX >= 0x03000000
2440  inst = PyBaseObject_Type.tp_new((PyTypeObject*) data->newargs, Py_None, Py_None);
2441  if (inst) {
2442  PyObject_SetAttr(inst, SWIG_This(), swig_this);
2443  Py_TYPE(inst)->tp_flags &= ~Py_TPFLAGS_VALID_VERSION_TAG;
2444  }
2445 #else
2446  PyObject *dict = PyDict_New();
2447  if (dict) {
2448  PyDict_SetItem(dict, SWIG_This(), swig_this);
2449  inst = PyInstance_NewRaw(data->newargs, dict);
2450  Py_DECREF(dict);
2451  }
2452 #endif
2453  }
2454  return inst;
2455 #else
2456 #if (PY_VERSION_HEX >= 0x02010000)
2457  PyObject *inst = 0;
2458  PyObject *dict = PyDict_New();
2459  if (dict) {
2460  PyDict_SetItem(dict, SWIG_This(), swig_this);
2461  inst = PyInstance_NewRaw(data->newargs, dict);
2462  Py_DECREF(dict);
2463  }
2464  return (PyObject *) inst;
2465 #else
2466  PyInstanceObject *inst = PyObject_NEW(PyInstanceObject, &PyInstance_Type);
2467  if (inst == NULL) {
2468  return NULL;
2469  }
2470  inst->in_class = (PyClassObject *)data->newargs;
2471  Py_INCREF(inst->in_class);
2472  inst->in_dict = PyDict_New();
2473  if (inst->in_dict == NULL) {
2474  Py_DECREF(inst);
2475  return NULL;
2476  }
2477 #ifdef Py_TPFLAGS_HAVE_WEAKREFS
2478  inst->in_weakreflist = NULL;
2479 #endif
2480 #ifdef Py_TPFLAGS_GC
2481  PyObject_GC_Init(inst);
2482 #endif
2483  PyDict_SetItem(inst->in_dict, SWIG_This(), swig_this);
2484  return (PyObject *) inst;
2485 #endif
2486 #endif
2487 }
2488 
2489 SWIGRUNTIME void
2490 SWIG_Python_SetSwigThis(PyObject *inst, PyObject *swig_this)
2491 {
2492  PyObject *dict;
2493 #if (PY_VERSION_HEX >= 0x02020000) && !defined(SWIG_PYTHON_SLOW_GETSET_THIS)
2494  PyObject **dictptr = _PyObject_GetDictPtr(inst);
2495  if (dictptr != NULL) {
2496  dict = *dictptr;
2497  if (dict == NULL) {
2498  dict = PyDict_New();
2499  *dictptr = dict;
2500  }
2501  PyDict_SetItem(dict, SWIG_This(), swig_this);
2502  return;
2503  }
2504 #endif
2505  dict = PyObject_GetAttrString(inst, (char*)"__dict__");
2506  PyDict_SetItem(dict, SWIG_This(), swig_this);
2507  Py_DECREF(dict);
2508 }
2509 
2510 
2511 SWIGINTERN PyObject *
2513  PyObject *obj[2];
2514  if (!SWIG_Python_UnpackTuple(args, "swiginit", 2, 2, obj)) {
2515  return NULL;
2516  } else {
2517  SwigPyObject *sthis = SWIG_Python_GetSwigThis(obj[0]);
2518  if (sthis) {
2519  SwigPyObject_append((PyObject*) sthis, obj[1]);
2520  } else {
2521  SWIG_Python_SetSwigThis(obj[0], obj[1]);
2522  }
2523  return SWIG_Py_Void();
2524  }
2525 }
2526 
2527 /* Create a new pointer object */
2528 
2529 SWIGRUNTIME PyObject *
2530 SWIG_Python_NewPointerObj(PyObject *self, void *ptr, swig_type_info *type, int flags) {
2531  SwigPyClientData *clientdata;
2532  PyObject * robj;
2533  int own;
2534 
2535  if (!ptr)
2536  return SWIG_Py_Void();
2537 
2538  clientdata = type ? (SwigPyClientData *)(type->clientdata) : 0;
2539  own = (flags & SWIG_POINTER_OWN) ? SWIG_POINTER_OWN : 0;
2540  if (clientdata && clientdata->pytype) {
2541  SwigPyObject *newobj;
2542  if (flags & SWIG_BUILTIN_TP_INIT) {
2543  newobj = (SwigPyObject*) self;
2544  if (newobj->ptr) {
2545  PyObject *next_self = clientdata->pytype->tp_alloc(clientdata->pytype, 0);
2546  while (newobj->next)
2547  newobj = (SwigPyObject *) newobj->next;
2548  newobj->next = next_self;
2549  newobj = (SwigPyObject *)next_self;
2550  }
2551  } else {
2552  newobj = PyObject_New(SwigPyObject, clientdata->pytype);
2553  }
2554  if (newobj) {
2555  newobj->ptr = ptr;
2556  newobj->ty = type;
2557  newobj->own = own;
2558  newobj->next = 0;
2559 #ifdef SWIGPYTHON_BUILTIN
2560  newobj->dict = 0;
2561 #endif
2562  return (PyObject*) newobj;
2563  }
2564  return SWIG_Py_Void();
2565  }
2566 
2567  assert(!(flags & SWIG_BUILTIN_TP_INIT));
2568 
2569  robj = SwigPyObject_New(ptr, type, own);
2570  if (robj && clientdata && !(flags & SWIG_POINTER_NOSHADOW)) {
2571  PyObject *inst = SWIG_Python_NewShadowInstance(clientdata, robj);
2572  Py_DECREF(robj);
2573  robj = inst;
2574  }
2575  return robj;
2576 }
2577 
2578 /* Create a new packed object */
2579 
2580 SWIGRUNTIMEINLINE PyObject *
2581 SWIG_Python_NewPackedObj(void *ptr, size_t sz, swig_type_info *type) {
2582  return ptr ? SwigPyPacked_New((void *) ptr, sz, type) : SWIG_Py_Void();
2583 }
2584 
2585 /* -----------------------------------------------------------------------------*
2586  * Get type list
2587  * -----------------------------------------------------------------------------*/
2588 
2589 #ifdef SWIG_LINK_RUNTIME
2590 void *SWIG_ReturnGlobalTypeList(void *);
2591 #endif
2592 
2595  static void *type_pointer = (void *)0;
2596  /* first check if module already created */
2597  if (!type_pointer) {
2598 #ifdef SWIG_LINK_RUNTIME
2599  type_pointer = SWIG_ReturnGlobalTypeList((void *)0);
2600 #else
2601 # ifdef SWIGPY_USE_CAPSULE
2602  type_pointer = PyCapsule_Import(SWIGPY_CAPSULE_NAME, 0);
2603 # else
2604  type_pointer = PyCObject_Import((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION,
2605  (char*)"type_pointer" SWIG_TYPE_TABLE_NAME);
2606 # endif
2607  if (PyErr_Occurred()) {
2608  PyErr_Clear();
2609  type_pointer = (void *)0;
2610  }
2611 #endif
2612  }
2613  return (swig_module_info *) type_pointer;
2614 }
2615 
2616 #if PY_MAJOR_VERSION < 2
2617 /* PyModule_AddObject function was introduced in Python 2.0. The following function
2618  is copied out of Python/modsupport.c in python version 2.3.4 */
2619 SWIGINTERN int
2620 PyModule_AddObject(PyObject *m, char *name, PyObject *o)
2621 {
2622  PyObject *dict;
2623  if (!PyModule_Check(m)) {
2624  PyErr_SetString(PyExc_TypeError,
2625  "PyModule_AddObject() needs module as first arg");
2626  return SWIG_ERROR;
2627  }
2628  if (!o) {
2629  PyErr_SetString(PyExc_TypeError,
2630  "PyModule_AddObject() needs non-NULL value");
2631  return SWIG_ERROR;
2632  }
2633 
2634  dict = PyModule_GetDict(m);
2635  if (dict == NULL) {
2636  /* Internal error -- modules must have a dict! */
2637  PyErr_Format(PyExc_SystemError, "module '%s' has no __dict__",
2638  PyModule_GetName(m));
2639  return SWIG_ERROR;
2640  }
2641  if (PyDict_SetItemString(dict, name, o))
2642  return SWIG_ERROR;
2643  Py_DECREF(o);
2644  return SWIG_OK;
2645 }
2646 #endif
2647 
2648 SWIGRUNTIME void
2649 #ifdef SWIGPY_USE_CAPSULE
2650 SWIG_Python_DestroyModule(PyObject *obj)
2651 #else
2653 #endif
2654 {
2655 #ifdef SWIGPY_USE_CAPSULE
2656  swig_module_info *swig_module = (swig_module_info *) PyCapsule_GetPointer(obj, SWIGPY_CAPSULE_NAME);
2657 #else
2658  swig_module_info *swig_module = (swig_module_info *) vptr;
2659 #endif
2660  swig_type_info **types = swig_module->types;
2661  size_t i;
2662  for (i =0; i < swig_module->size; ++i) {
2663  swig_type_info *ty = types[i];
2664  if (ty->owndata) {
2666  if (data) SwigPyClientData_Del(data);
2667  }
2668  }
2669  Py_DECREF(SWIG_This());
2670  swig_this = NULL;
2671 }
2672 
2673 SWIGRUNTIME void
2675 #if PY_VERSION_HEX >= 0x03000000
2676  /* Add a dummy module object into sys.modules */
2677  PyObject *module = PyImport_AddModule((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION);
2678 #else
2679  static PyMethodDef swig_empty_runtime_method_table[] = { {NULL, NULL, 0, NULL} }; /* Sentinel */
2680  PyObject *module = Py_InitModule((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION, swig_empty_runtime_method_table);
2681 #endif
2682 #ifdef SWIGPY_USE_CAPSULE
2683  PyObject *pointer = PyCapsule_New((void *) swig_module, SWIGPY_CAPSULE_NAME, SWIG_Python_DestroyModule);
2684  if (pointer && module) {
2685  PyModule_AddObject(module, (char*)"type_pointer_capsule" SWIG_TYPE_TABLE_NAME, pointer);
2686  } else {
2687  Py_XDECREF(pointer);
2688  }
2689 #else
2690  PyObject *pointer = PyCObject_FromVoidPtr((void *) swig_module, SWIG_Python_DestroyModule);
2691  if (pointer && module) {
2692  PyModule_AddObject(module, (char*)"type_pointer" SWIG_TYPE_TABLE_NAME, pointer);
2693  } else {
2694  Py_XDECREF(pointer);
2695  }
2696 #endif
2697 }
2698 
2699 /* The python cached type query */
2700 SWIGRUNTIME PyObject *
2702  static PyObject *SWIG_STATIC_POINTER(cache) = PyDict_New();
2703  return cache;
2704 }
2705 
2707 SWIG_Python_TypeQuery(const char *type)
2708 {
2709  PyObject *cache = SWIG_Python_TypeCache();
2710  PyObject *key = SWIG_Python_str_FromChar(type);
2711  PyObject *obj = PyDict_GetItem(cache, key);
2712  swig_type_info *descriptor;
2713  if (obj) {
2714 #ifdef SWIGPY_USE_CAPSULE
2715  descriptor = (swig_type_info *) PyCapsule_GetPointer(obj, NULL);
2716 #else
2717  descriptor = (swig_type_info *) PyCObject_AsVoidPtr(obj);
2718 #endif
2719  } else {
2721  descriptor = SWIG_TypeQueryModule(swig_module, swig_module, type);
2722  if (descriptor) {
2723 #ifdef SWIGPY_USE_CAPSULE
2724  obj = PyCapsule_New((void*) descriptor, NULL, NULL);
2725 #else
2726  obj = PyCObject_FromVoidPtr(descriptor, NULL);
2727 #endif
2728  PyDict_SetItem(cache, key, obj);
2729  Py_DECREF(obj);
2730  }
2731  }
2732  Py_DECREF(key);
2733  return descriptor;
2734 }
2735 
2736 /*
2737  For backward compatibility only
2738 */
2739 #define SWIG_POINTER_EXCEPTION 0
2740 #define SWIG_arg_fail(arg) SWIG_Python_ArgFail(arg)
2741 #define SWIG_MustGetPtr(p, type, argnum, flags) SWIG_Python_MustGetPtr(p, type, argnum, flags)
2742 
2743 SWIGRUNTIME int
2744 SWIG_Python_AddErrMesg(const char* mesg, int infront)
2745 {
2746  if (PyErr_Occurred()) {
2747  PyObject *type = 0;
2748  PyObject *value = 0;
2749  PyObject *traceback = 0;
2750  PyErr_Fetch(&type, &value, &traceback);
2751  if (value) {
2752  char *tmp;
2753  PyObject *old_str = PyObject_Str(value);
2754  Py_XINCREF(type);
2755  PyErr_Clear();
2756  if (infront) {
2757  PyErr_Format(type, "%s %s", mesg, tmp = SWIG_Python_str_AsChar(old_str));
2758  } else {
2759  PyErr_Format(type, "%s %s", tmp = SWIG_Python_str_AsChar(old_str), mesg);
2760  }
2762  Py_DECREF(old_str);
2763  }
2764  return 1;
2765  } else {
2766  return 0;
2767  }
2768 }
2769 
2770 SWIGRUNTIME int
2772 {
2773  if (PyErr_Occurred()) {
2774  /* add information about failing argument */
2775  char mesg[256];
2776  PyOS_snprintf(mesg, sizeof(mesg), "argument number %d:", argnum);
2777  return SWIG_Python_AddErrMesg(mesg, 1);
2778  } else {
2779  return 0;
2780  }
2781 }
2782 
2783 SWIGRUNTIMEINLINE const char *
2784 SwigPyObject_GetDesc(PyObject *self)
2785 {
2786  SwigPyObject *v = (SwigPyObject *)self;
2787  swig_type_info *ty = v ? v->ty : 0;
2788  return ty ? ty->str : "";
2789 }
2790 
2791 SWIGRUNTIME void
2792 SWIG_Python_TypeError(const char *type, PyObject *obj)
2793 {
2794  if (type) {
2795 #if defined(SWIG_COBJECT_TYPES)
2796  if (obj && SwigPyObject_Check(obj)) {
2797  const char *otype = (const char *) SwigPyObject_GetDesc(obj);
2798  if (otype) {
2799  PyErr_Format(PyExc_TypeError, "a '%s' is expected, 'SwigPyObject(%s)' is received",
2800  type, otype);
2801  return;
2802  }
2803  } else
2804 #endif
2805  {
2806  const char *otype = (obj ? obj->ob_type->tp_name : 0);
2807  if (otype) {
2808  PyObject *str = PyObject_Str(obj);
2809  const char *cstr = str ? SWIG_Python_str_AsChar(str) : 0;
2810  if (cstr) {
2811  PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s(%s)' is received",
2812  type, otype, cstr);
2814  } else {
2815  PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s' is received",
2816  type, otype);
2817  }
2818  Py_XDECREF(str);
2819  return;
2820  }
2821  }
2822  PyErr_Format(PyExc_TypeError, "a '%s' is expected", type);
2823  } else {
2824  PyErr_Format(PyExc_TypeError, "unexpected type is received");
2825  }
2826 }
2827 
2828 
2829 /* Convert a pointer value, signal an exception on a type mismatch */
2830 SWIGRUNTIME void *
2831 SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int SWIGUNUSEDPARM(argnum), int flags) {
2832  void *result;
2833  if (SWIG_Python_ConvertPtr(obj, &result, ty, flags) == -1) {
2834  PyErr_Clear();
2835 #if SWIG_POINTER_EXCEPTION
2836  if (flags) {
2838  SWIG_Python_ArgFail(argnum);
2839  }
2840 #endif
2841  }
2842  return result;
2843 }
2844 
2845 #ifdef SWIGPYTHON_BUILTIN
2846 SWIGRUNTIME int
2847 SWIG_Python_NonDynamicSetAttr(PyObject *obj, PyObject *name, PyObject *value) {
2848  PyTypeObject *tp = obj->ob_type;
2849  PyObject *descr;
2850  PyObject *encoded_name;
2851  descrsetfunc f;
2852  int res = -1;
2853 
2854 # ifdef Py_USING_UNICODE
2855  if (PyString_Check(name)) {
2856  name = PyUnicode_Decode(PyString_AsString(name), PyString_Size(name), NULL, NULL);
2857  if (!name)
2858  return -1;
2859  } else if (!PyUnicode_Check(name))
2860 # else
2861  if (!PyString_Check(name))
2862 # endif
2863  {
2864  PyErr_Format(PyExc_TypeError, "attribute name must be string, not '%.200s'", name->ob_type->tp_name);
2865  return -1;
2866  } else {
2867  Py_INCREF(name);
2868  }
2869 
2870  if (!tp->tp_dict) {
2871  if (PyType_Ready(tp) < 0)
2872  goto done;
2873  }
2874 
2875  descr = _PyType_Lookup(tp, name);
2876  f = NULL;
2877  if (descr != NULL)
2878  f = descr->ob_type->tp_descr_set;
2879  if (!f) {
2880  if (PyString_Check(name)) {
2881  encoded_name = name;
2882  Py_INCREF(name);
2883  } else {
2884  encoded_name = PyUnicode_AsUTF8String(name);
2885  }
2886  PyErr_Format(PyExc_AttributeError, "'%.100s' object has no attribute '%.200s'", tp->tp_name, PyString_AsString(encoded_name));
2887  Py_DECREF(encoded_name);
2888  } else {
2889  res = f(descr, obj, value);
2890  }
2891 
2892  done:
2893  Py_DECREF(name);
2894  return res;
2895 }
2896 #endif
2897 
2898 
2899 #ifdef __cplusplus
2900 }
2901 #endif
2902 
2903 
2904 
2905 #define SWIG_exception_fail(code, msg) do { SWIG_Error(code, msg); SWIG_fail; } while(0)
2906 
2907 #define SWIG_contract_assert(expr, msg) if (!(expr)) { SWIG_Error(SWIG_RuntimeError, msg); SWIG_fail; } else
2908 
2909 
2910 
2911 /* -------- TYPES TABLE (BEGIN) -------- */
2912 
2913 #define SWIGTYPE_p_PLGraphicsIn swig_types[0]
2914 #define SWIGTYPE_p_PLcGrid swig_types[1]
2915 #define SWIGTYPE_p_PLcGrid2 swig_types[2]
2916 #define SWIGTYPE_p_char swig_types[3]
2917 #define SWIGTYPE_p_double swig_types[4]
2918 #define SWIGTYPE_p_f_double_double__int swig_types[5]
2919 #define SWIGTYPE_p_f_double_double_p_double_p_double_p_void__void swig_types[6]
2920 #define SWIGTYPE_p_f_int_double_p_char_int_p_void__void swig_types[7]
2921 #define SWIGTYPE_p_f_int_p_double_p_double__void swig_types[8]
2922 #define SWIGTYPE_p_f_int_p_q_const__double_p_q_const__double__void swig_types[9]
2923 #define SWIGTYPE_p_int swig_types[10]
2924 #define SWIGTYPE_p_p_char swig_types[11]
2925 #define SWIGTYPE_p_p_double swig_types[12]
2926 #define SWIGTYPE_p_unsigned_int swig_types[13]
2928 static swig_module_info swig_module = {swig_types, 14, 0, 0, 0, 0};
2929 #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
2930 #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
2931 
2932 /* -------- TYPES TABLE (END) -------- */
2933 
2934 #if (PY_VERSION_HEX <= 0x02000000)
2935 # if !defined(SWIG_PYTHON_CLASSIC)
2936 # error "This python version requires swig to be run with the '-classic' option"
2937 # endif
2938 #endif
2939 
2940 /*-----------------------------------------------
2941  @(target):= _plplotc.so
2942  ------------------------------------------------*/
2943 #if PY_VERSION_HEX >= 0x03000000
2944 # define SWIG_init PyInit__plplotc
2945 
2946 #else
2947 # define SWIG_init init_plplotc
2948 
2949 #endif
2950 #define SWIG_name "_plplotc"
2951 
2952 #define SWIGVERSION 0x020012
2953 #define SWIG_VERSION SWIGVERSION
2954 
2955 
2956 #define SWIG_as_voidptr(a) (void *)((const void *)(a))
2957 #define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),(void**)(a))
2958 
2959 
2960 #define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION
2961 #include <arrayobject.h>
2962 #include "plplot.h"
2963 #include "plplotP.h"
2964 
2965 #define NPY_PLINT NPY_INT32
2966 
2967 #ifdef PL_DOUBLE
2968 #define NPY_PLFLT NPY_FLOAT64
2969 #else
2970 #define NPY_PLFLT NPY_FLOAT32
2971 #endif
2972 
2973 // python-1.5 compatibility mode?
2974 #if !defined ( PySequence_Fast_GET_ITEM )
2975  #define PySequence_Fast_GET_ITEM PySequence_GetItem
2976 #endif
2977 #define PySequence_Size PySequence_Length
2978 
2979 
2980  static PLINT Alen = 0;
2981  static PLINT Xlen = 0, Ylen = 0;
2982 
2983 
2984 SWIGINTERN int
2985 SWIG_AsVal_double (PyObject *obj, double *val)
2986 {
2987  int res = SWIG_TypeError;
2988  if (PyFloat_Check(obj)) {
2989  if (val) *val = PyFloat_AsDouble(obj);
2990  return SWIG_OK;
2991  } else if (PyInt_Check(obj)) {
2992  if (val) *val = PyInt_AsLong(obj);
2993  return SWIG_OK;
2994  } else if (PyLong_Check(obj)) {
2995  double v = PyLong_AsDouble(obj);
2996  if (!PyErr_Occurred()) {
2997  if (val) *val = v;
2998  return SWIG_OK;
2999  } else {
3000  PyErr_Clear();
3001  }
3002  }
3003 #ifdef SWIG_PYTHON_CAST_MODE
3004  {
3005  int dispatch = 0;
3006  double d = PyFloat_AsDouble(obj);
3007  if (!PyErr_Occurred()) {
3008  if (val) *val = d;
3009  return SWIG_AddCast(SWIG_OK);
3010  } else {
3011  PyErr_Clear();
3012  }
3013  if (!dispatch) {
3014  long v = PyLong_AsLong(obj);
3015  if (!PyErr_Occurred()) {
3016  if (val) *val = v;
3018  } else {
3019  PyErr_Clear();
3020  }
3021  }
3022  }
3023 #endif
3024  return res;
3025 }
3026 
3027 
3028  #define SWIG_From_double PyFloat_FromDouble
3029 
3030 
3031  typedef PLINT ( *defined_func )( PLFLT, PLFLT );
3032  typedef void ( *fill_func )( PLINT, const PLFLT*, const PLFLT* );
3033  typedef void ( *pltr_func )( PLFLT, PLFLT, PLFLT *, PLFLT*, PLPointer );
3034  typedef void ( *ct_func )( PLFLT, PLFLT, PLFLT *, PLFLT*, PLPointer );
3035  typedef void ( *mapform_func )( PLINT, PLFLT *, PLFLT* );
3037  typedef void ( *label_func )( PLINT, PLFLT, char *, PLINT, PLPointer );
3038 
3039 
3040 SWIGINTERNINLINE PyObject*
3041  SWIG_From_int (int value)
3042 {
3043  return PyInt_FromLong((long) value);
3044 }
3045 
3046 
3047 #include <limits.h>
3048 #if !defined(SWIG_NO_LLONG_MAX)
3049 # if !defined(LLONG_MAX) && defined(__GNUC__) && defined (__LONG_LONG_MAX__)
3050 # define LLONG_MAX __LONG_LONG_MAX__
3051 # define LLONG_MIN (-LLONG_MAX - 1LL)
3052 # define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL)
3053 # endif
3054 #endif
3055 
3056 
3057 #include <float.h>
3058 
3059 
3060 #include <math.h>
3061 
3062 
3063 SWIGINTERNINLINE int
3064 SWIG_CanCastAsInteger(double *d, double min, double max) {
3065  double x = *d;
3066  if ((min <= x && x <= max)) {
3067  double fx = floor(x);
3068  double cx = ceil(x);
3069  double rd = ((x - fx) < 0.5) ? fx : cx; /* simple rint */
3070  if ((errno == EDOM) || (errno == ERANGE)) {
3071  errno = 0;
3072  } else {
3073  double summ, reps, diff;
3074  if (rd < x) {
3075  diff = x - rd;
3076  } else if (rd > x) {
3077  diff = rd - x;
3078  } else {
3079  return 1;
3080  }
3081  summ = rd + x;
3082  reps = diff/summ;
3083  if (reps < 8*DBL_EPSILON) {
3084  *d = rd;
3085  return 1;
3086  }
3087  }
3088  }
3089  return 0;
3090 }
3091 
3092 
3093 SWIGINTERN int
3094 SWIG_AsVal_long (PyObject *obj, long* val)
3095 {
3096  if (PyInt_Check(obj)) {
3097  if (val) *val = PyInt_AsLong(obj);
3098  return SWIG_OK;
3099  } else if (PyLong_Check(obj)) {
3100  long v = PyLong_AsLong(obj);
3101  if (!PyErr_Occurred()) {
3102  if (val) *val = v;
3103  return SWIG_OK;
3104  } else {
3105  PyErr_Clear();
3106  }
3107  }
3108 #ifdef SWIG_PYTHON_CAST_MODE
3109  {
3110  int dispatch = 0;
3111  long v = PyInt_AsLong(obj);
3112  if (!PyErr_Occurred()) {
3113  if (val) *val = v;
3114  return SWIG_AddCast(SWIG_OK);
3115  } else {
3116  PyErr_Clear();
3117  }
3118  if (!dispatch) {
3119  double d;
3120  int res = SWIG_AddCast(SWIG_AsVal_double (obj,&d));
3121  if (SWIG_IsOK(res) && SWIG_CanCastAsInteger(&d, LONG_MIN, LONG_MAX)) {
3122  if (val) *val = (long)(d);
3123  return res;
3124  }
3125  }
3126  }
3127 #endif
3128  return SWIG_TypeError;
3129 }
3130 
3131 
3132 SWIGINTERN int
3133 SWIG_AsVal_int (PyObject * obj, int *val)
3134 {
3135  long v;
3136  int res = SWIG_AsVal_long (obj, &v);
3137  if (SWIG_IsOK(res)) {
3138  if ((v < INT_MIN || v > INT_MAX)) {
3139  return SWIG_OverflowError;
3140  } else {
3141  if (val) *val = (int)(v);
3142  }
3143  }
3144  return res;
3145 }
3146 
3147 
3148 SWIGINTERN int
3149 SWIG_AsVal_unsigned_SS_long (PyObject *obj, unsigned long *val)
3150 {
3151 #if PY_VERSION_HEX < 0x03000000
3152  if (PyInt_Check(obj)) {
3153  long v = PyInt_AsLong(obj);
3154  if (v >= 0) {
3155  if (val) *val = v;
3156  return SWIG_OK;
3157  } else {
3158  return SWIG_OverflowError;
3159  }
3160  } else
3161 #endif
3162  if (PyLong_Check(obj)) {
3163  unsigned long v = PyLong_AsUnsignedLong(obj);
3164  if (!PyErr_Occurred()) {
3165  if (val) *val = v;
3166  return SWIG_OK;
3167  } else {
3168  PyErr_Clear();
3169 #if PY_VERSION_HEX >= 0x03000000
3170  {
3171  long v = PyLong_AsLong(obj);
3172  if (!PyErr_Occurred()) {
3173  if (v < 0) {
3174  return SWIG_OverflowError;
3175  }
3176  } else {
3177  PyErr_Clear();
3178  }
3179  }
3180 #endif
3181  }
3182  }
3183 #ifdef SWIG_PYTHON_CAST_MODE
3184  {
3185  int dispatch = 0;
3186  unsigned long v = PyLong_AsUnsignedLong(obj);
3187  if (!PyErr_Occurred()) {
3188  if (val) *val = v;
3189  return SWIG_AddCast(SWIG_OK);
3190  } else {
3191  PyErr_Clear();
3192  }
3193  if (!dispatch) {
3194  double d;
3195  int res = SWIG_AddCast(SWIG_AsVal_double (obj,&d));
3196  if (SWIG_IsOK(res) && SWIG_CanCastAsInteger(&d, 0, ULONG_MAX)) {
3197  if (val) *val = (unsigned long)(d);
3198  return res;
3199  }
3200  }
3201  }
3202 #endif
3203  return SWIG_TypeError;
3204 }
3205 
3206 
3207 SWIGINTERN int
3208 SWIG_AsVal_unsigned_SS_int (PyObject * obj, unsigned int *val)
3209 {
3210  unsigned long v;
3211  int res = SWIG_AsVal_unsigned_SS_long (obj, &v);
3212  if (SWIG_IsOK(res)) {
3213  if ((v > UINT_MAX)) {
3214  return SWIG_OverflowError;
3215  } else {
3216  if (val) *val = (unsigned int)(v);
3217  }
3218  }
3219  return res;
3220 }
3221 
3222 
3223 SWIGINTERNINLINE PyObject*
3224  SWIG_From_unsigned_SS_int (unsigned int value)
3225 {
3226  return PyInt_FromSize_t((size_t) value);
3227 }
3228 
3229 
3232 {
3233  static int init = 0;
3234  static swig_type_info* info = 0;
3235  if (!init) {
3236  info = SWIG_TypeQuery("_p_char");
3237  init = 1;
3238  }
3239  return info;
3240 }
3241 
3242 
3243 SWIGINTERN int
3244 SWIG_AsCharPtrAndSize(PyObject *obj, char** cptr, size_t* psize, int *alloc)
3245 {
3246 #if PY_VERSION_HEX>=0x03000000
3247  if (PyUnicode_Check(obj))
3248 #else
3249  if (PyString_Check(obj))
3250 #endif
3251  {
3252  char *cstr; Py_ssize_t len;
3253 #if PY_VERSION_HEX>=0x03000000
3254  if (!alloc && cptr) {
3255  /* We can't allow converting without allocation, since the internal
3256  representation of string in Python 3 is UCS-2/UCS-4 but we require
3257  a UTF-8 representation.
3258  TODO(bhy) More detailed explanation */
3259  return SWIG_RuntimeError;
3260  }
3261  obj = PyUnicode_AsUTF8String(obj);
3262  PyBytes_AsStringAndSize(obj, &cstr, &len);
3263  if(alloc) *alloc = SWIG_NEWOBJ;
3264 #else
3265  PyString_AsStringAndSize(obj, &cstr, &len);
3266 #endif
3267  if (cptr) {
3268  if (alloc) {
3269  /*
3270  In python the user should not be able to modify the inner
3271  string representation. To warranty that, if you define
3272  SWIG_PYTHON_SAFE_CSTRINGS, a new/copy of the python string
3273  buffer is always returned.
3274 
3275  The default behavior is just to return the pointer value,
3276  so, be careful.
3277  */
3278 #if defined(SWIG_PYTHON_SAFE_CSTRINGS)
3279  if (*alloc != SWIG_OLDOBJ)
3280 #else
3281  if (*alloc == SWIG_NEWOBJ)
3282 #endif
3283  {
3284  *cptr = (char *)memcpy((char *)malloc((len + 1)*sizeof(char)), cstr, sizeof(char)*(len + 1));
3285  *alloc = SWIG_NEWOBJ;
3286  }
3287  else {
3288  *cptr = cstr;
3289  *alloc = SWIG_OLDOBJ;
3290  }
3291  } else {
3292  #if PY_VERSION_HEX>=0x03000000
3293  assert(0); /* Should never reach here in Python 3 */
3294  #endif
3295  *cptr = SWIG_Python_str_AsChar(obj);
3296  }
3297  }
3298  if (psize) *psize = len + 1;
3299 #if PY_VERSION_HEX>=0x03000000
3300  Py_XDECREF(obj);
3301 #endif
3302  return SWIG_OK;
3303  } else {
3304  swig_type_info* pchar_descriptor = SWIG_pchar_descriptor();
3305  if (pchar_descriptor) {
3306  void* vptr = 0;
3307  if (SWIG_ConvertPtr(obj, &vptr, pchar_descriptor, 0) == SWIG_OK) {
3308  if (cptr) *cptr = (char *) vptr;
3309  if (psize) *psize = vptr ? (strlen((char *)vptr) + 1) : 0;
3310  if (alloc) *alloc = SWIG_OLDOBJ;
3311  return SWIG_OK;
3312  }
3313  }
3314  }
3315  return SWIG_TypeError;
3316 }
3317 
3318 
3319 SWIGINTERN int
3320 SWIG_AsCharArray(PyObject * obj, char *val, size_t size)
3321 {
3322  char* cptr = 0; size_t csize = 0; int alloc = SWIG_OLDOBJ;
3323  int res = SWIG_AsCharPtrAndSize(obj, &cptr, &csize, &alloc);
3324  if (SWIG_IsOK(res)) {
3325  if ((csize == size + 1) && cptr && !(cptr[csize-1])) --csize;
3326  if (csize <= size) {
3327  if (val) {
3328  if (csize) memcpy(val, cptr, csize*sizeof(char));
3329  if (csize < size) memset(val + csize, 0, (size - csize)*sizeof(char));
3330  }
3331  if (alloc == SWIG_NEWOBJ) {
3332  free((char*)cptr);
3333  res = SWIG_DelNewMask(res);
3334  }
3335  return res;
3336  }
3337  if (alloc == SWIG_NEWOBJ) free((char*)cptr);
3338  }
3339  return SWIG_TypeError;
3340 }
3341 
3342 
3343 SWIGINTERNINLINE PyObject *
3344 SWIG_FromCharPtrAndSize(const char* carray, size_t size)
3345 {
3346  if (carray) {
3347  if (size > INT_MAX) {
3348  swig_type_info* pchar_descriptor = SWIG_pchar_descriptor();
3349  return pchar_descriptor ?
3350  SWIG_InternalNewPointerObj((char *)(carray), pchar_descriptor, 0) : SWIG_Py_Void();
3351  } else {
3352 #if PY_VERSION_HEX >= 0x03000000
3353  return PyUnicode_FromStringAndSize(carray, (int)(size));
3354 #else
3355  return PyString_FromStringAndSize(carray, (int)(size));
3356 #endif
3357  }
3358  } else {
3359  return SWIG_Py_Void();
3360  }
3361 }
3362 
3363 
3364 
3365 
3366 
3367 #define t_output_helper SWIG_Python_AppendOutput
3368 
3369 
3370 SWIGINTERN int
3371 SWIG_AsVal_char (PyObject * obj, char *val)
3372 {
3373  int res = SWIG_AsCharArray(obj, val, 1);
3374  if (!SWIG_IsOK(res)) {
3375  long v;
3376  res = SWIG_AddCast(SWIG_AsVal_long (obj, &v));
3377  if (SWIG_IsOK(res)) {
3378  if ((CHAR_MIN <= v) && (v <= CHAR_MAX)) {
3379  if (val) *val = (char)(v);
3380  } else {
3381  res = SWIG_OverflowError;
3382  }
3383  }
3384  }
3385  return res;
3386 }
3387 
3388 #ifdef __cplusplus
3389 extern "C" {
3390 #endif
3391 
3392  PyArrayObject* myIntArray_ContiguousFromObject( PyObject* in, int type, int mindims, int maxdims );
3393 
3394 // some really twisted stuff to allow calling a single precision library from python
3395  PyArrayObject* myIntArray_ContiguousFromObject( PyObject* in, int PL_UNUSED( type ), int mindims, int maxdims )
3396  {
3397  PyArrayObject* tmp = (PyArrayObject *) PyArray_ContiguousFromObject( in, NPY_PLINT,
3398  mindims, maxdims );
3399  if ( !tmp )
3400  {
3401  // could be an incoming long array which can't be "safely" converted, do it anyway
3402  if ( PyArray_Check( in ) )
3403  {
3404  PyErr_Clear();
3405  tmp = (PyArrayObject *) PyArray_Cast( (PyArrayObject *) in, NPY_PLINT );
3406  }
3407  }
3408  return tmp;
3409  }
3410 
3411 
3412 #define myArray_ContiguousFromObject PyArray_ContiguousFromObject
3413 
3414 SWIGINTERN PyObject *_wrap_pltr0(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3415  PyObject *resultobj = 0;
3416  PLFLT arg1 ;
3417  PLFLT arg2 ;
3418  PLFLT *arg3 = (PLFLT *) 0 ;
3419  PLFLT *arg4 = (PLFLT *) 0 ;
3420  PLPointer arg5 = (PLPointer) 0 ;
3421  double val1 ;
3422  int ecode1 = 0 ;
3423  double val2 ;
3424  int ecode2 = 0 ;
3425  PLFLT temp3 ;
3426  int res3 = SWIG_TMPOBJ ;
3427  PLFLT temp4 ;
3428  int res4 = SWIG_TMPOBJ ;
3429  PyObject * obj0 = 0 ;
3430  PyObject * obj1 = 0 ;
3431 
3432  arg3 = &temp3;
3433  arg4 = &temp4;
3434  {
3435  arg5 = NULL;
3436  }
3437  if (!PyArg_ParseTuple(args,(char *)"OO:pltr0",&obj0,&obj1)) SWIG_fail;
3438  ecode1 = SWIG_AsVal_double(obj0, &val1);
3439  if (!SWIG_IsOK(ecode1)) {
3440  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "pltr0" "', argument " "1"" of type '" "PLFLT""'");
3441  }
3442  arg1 = (PLFLT)(val1);
3443  ecode2 = SWIG_AsVal_double(obj1, &val2);
3444  if (!SWIG_IsOK(ecode2)) {
3445  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "pltr0" "', argument " "2"" of type '" "PLFLT""'");
3446  }
3447  arg2 = (PLFLT)(val2);
3448  pltr0(arg1,arg2,arg3,arg4,arg5);
3449  resultobj = SWIG_Py_Void();
3450  if (SWIG_IsTmpObj(res3)) {
3451  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
3452  } else {
3453  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
3454  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
3455  }
3456  if (SWIG_IsTmpObj(res4)) {
3457  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg4)));
3458  } else {
3459  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
3460  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_double, new_flags));
3461  }
3462  return resultobj;
3463 fail:
3464  return NULL;
3465 }
3466 
3467 
3468 
3469  PyArrayObject *pltr_xg, *pltr_yg;
3472 
3473  PLcGrid* marshal_PLcGrid1( PyObject* input, int isimg );
3474  void cleanup_PLcGrid1( void );
3475  PLcGrid2* marshal_PLcGrid2( PyObject* input, int isimg );
3476  void cleanup_PLcGrid2( void );
3477 
3478  PLcGrid* marshal_PLcGrid1( PyObject* input, int isimg )
3479  {
3480  // fprintf(stderr, "marshal PLcGrid1\n");
3481  if ( !PySequence_Check( input ) || PySequence_Size( input ) != 2 )
3482  {
3483  PyErr_SetString( PyExc_ValueError, "Expected a sequence of two arrays." );
3484  return NULL;
3485  }
3486  pltr_xg = (PyArrayObject *) myArray_ContiguousFromObject( PySequence_Fast_GET_ITEM( input, 0 ),
3487  NPY_PLFLT, 1, 1 );
3488  pltr_yg = (PyArrayObject *) myArray_ContiguousFromObject( PySequence_Fast_GET_ITEM( input, 1 ),
3489  NPY_PLFLT, 1, 1 );
3490  if ( pltr_xg == 0 || pltr_yg == 0 )
3491  {
3492  PyErr_SetString( PyExc_ValueError, "Expected a sequence to two 1D arrays." );
3493  return NULL;
3494  }
3495  tmpGrid1.nx = (PLINT) PyArray_DIMS( pltr_xg )[0];
3496  tmpGrid1.ny = (PLINT) PyArray_DIMS( pltr_yg )[0];
3497  if ( isimg == 0 )
3498  {
3499  if ( Xlen != tmpGrid1.nx || Ylen != tmpGrid1.ny )
3500  {
3501  PyErr_SetString( PyExc_ValueError, "pltr arguments must have X and Y dimensions of first arg." );
3502  return NULL;
3503  }
3504  }
3505  else
3506  {
3507  if ( Xlen != tmpGrid1.nx - 1 || Ylen != tmpGrid1.ny - 1 )
3508  {
3509  PyErr_SetString( PyExc_ValueError, "pltr arguments must have X and Y dimensions of first arg + 1." );
3510  return NULL;
3511  }
3512  }
3513  tmpGrid1.xg = (PLFLT *) PyArray_DATA( pltr_xg );
3514  tmpGrid1.yg = (PLFLT *) PyArray_DATA( pltr_yg );
3515  return &tmpGrid1;
3516  }
3517 
3518  void cleanup_PLcGrid1( void )
3519  {
3520  // fprintf(stderr, "cleanup PLcGrid1\n");
3521  Py_CLEAR( pltr_xg );
3522  Py_CLEAR( pltr_yg );
3523  }
3524 
3525  PLcGrid2* marshal_PLcGrid2( PyObject* input, int isimg )
3526  {
3527  int i, size;
3528  // fprintf(stderr, "marshal PLcGrid2\n");
3529  if ( !PySequence_Check( input ) || PySequence_Size( input ) != 2 )
3530  {
3531  PyErr_SetString( PyExc_ValueError, "Expected a sequence of two arrays." );
3532  return NULL;
3533  }
3534  pltr_xg = (PyArrayObject *) myArray_ContiguousFromObject( PySequence_Fast_GET_ITEM( input, 0 ),
3535  NPY_PLFLT, 2, 2 );
3536  pltr_yg = (PyArrayObject *) myArray_ContiguousFromObject( PySequence_Fast_GET_ITEM( input, 1 ),
3537  NPY_PLFLT, 2, 2 );
3538  if ( pltr_xg == 0 || pltr_yg == 0 )
3539  {
3540  PyErr_SetString( PyExc_ValueError, "Expected a sequence of two 2D arrays." );
3541  return NULL;
3542  }
3543  if ( PyArray_DIMS( pltr_xg )[0] != PyArray_DIMS( pltr_yg )[0] ||
3544  PyArray_DIMS( pltr_xg )[1] != PyArray_DIMS( pltr_yg )[1] )
3545  {
3546  PyErr_SetString( PyExc_ValueError, "Arrays must be same size." );
3547  return NULL;
3548  }
3549  tmpGrid2.nx = (PLINT) PyArray_DIMS( pltr_xg )[0];
3550  tmpGrid2.ny = (PLINT) PyArray_DIMS( pltr_xg )[1];
3551  if ( isimg == 0 )
3552  {
3553  if ( Xlen != tmpGrid2.nx || Ylen != tmpGrid2.ny )
3554  {
3555  PyErr_SetString( PyExc_ValueError, "pltr arguments must have X and Y dimensions of first arg." );
3556  return NULL;
3557  }
3558  }
3559  else
3560  {
3561  if ( Xlen != tmpGrid2.nx - 1 || Ylen != tmpGrid2.ny - 1 )
3562  {
3563  PyErr_SetString( PyExc_ValueError, "pltr arguments must have X and Y dimensions of first arg + 1." );
3564  return NULL;
3565  }
3566  }
3567  size = tmpGrid2.ny;
3568  tmpGrid2.xg = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) tmpGrid2.nx );
3569  for ( i = 0; i < tmpGrid2.nx; i++ )
3570  tmpGrid2.xg[i] = ( (PLFLT *) PyArray_DATA( pltr_xg ) + i * size );
3571  tmpGrid2.yg = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) tmpGrid2.nx );
3572  for ( i = 0; i < tmpGrid2.nx; i++ )
3573  tmpGrid2.yg[i] = ( (PLFLT *) PyArray_DATA( pltr_yg ) + i * size );
3574  return &tmpGrid2;
3575  }
3576 
3577  void cleanup_PLcGrid2( void )
3578  {
3579  // fprintf(stderr, "cleanup PLcGrid2\n");
3580  free( tmpGrid2.xg );
3581  free( tmpGrid2.yg );
3582  Py_CLEAR( pltr_xg );
3583  Py_CLEAR( pltr_yg );
3584  }
3585 
3586 SWIGINTERN PyObject *_wrap_pltr1(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3587  PyObject *resultobj = 0;
3588  PLFLT arg1 ;
3589  PLFLT arg2 ;
3590  PLFLT *arg3 = (PLFLT *) 0 ;
3591  PLFLT *arg4 = (PLFLT *) 0 ;
3592  PLcGrid *arg5 = (PLcGrid *) 0 ;
3593  double val1 ;
3594  int ecode1 = 0 ;
3595  double val2 ;
3596  int ecode2 = 0 ;
3597  PLFLT temp3 ;
3598  int res3 = SWIG_TMPOBJ ;
3599  PLFLT temp4 ;
3600  int res4 = SWIG_TMPOBJ ;
3601  PyObject * obj0 = 0 ;
3602  PyObject * obj1 = 0 ;
3603  PyObject * obj2 = 0 ;
3604 
3605  arg3 = &temp3;
3606  arg4 = &temp4;
3607  if (!PyArg_ParseTuple(args,(char *)"OOO:pltr1",&obj0,&obj1,&obj2)) SWIG_fail;
3608  ecode1 = SWIG_AsVal_double(obj0, &val1);
3609  if (!SWIG_IsOK(ecode1)) {
3610  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "pltr1" "', argument " "1"" of type '" "PLFLT""'");
3611  }
3612  arg1 = (PLFLT)(val1);
3613  ecode2 = SWIG_AsVal_double(obj1, &val2);
3614  if (!SWIG_IsOK(ecode2)) {
3615  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "pltr1" "', argument " "2"" of type '" "PLFLT""'");
3616  }
3617  arg2 = (PLFLT)(val2);
3618  {
3619  arg5 = marshal_PLcGrid1( obj2, 0 );
3620  if ( !arg5 )
3621  return NULL;
3622  }
3623  pltr1(arg1,arg2,arg3,arg4,arg5);
3624  resultobj = SWIG_Py_Void();
3625  if (SWIG_IsTmpObj(res3)) {
3626  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
3627  } else {
3628  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
3629  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
3630  }
3631  if (SWIG_IsTmpObj(res4)) {
3632  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg4)));
3633  } else {
3634  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
3635  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_double, new_flags));
3636  }
3637  {
3638  cleanup_PLcGrid1();
3639  }
3640  return resultobj;
3641 fail:
3642  {
3643  cleanup_PLcGrid1();
3644  }
3645  return NULL;
3646 }
3647 
3648 
3649 SWIGINTERN PyObject *_wrap_pltr2(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3650  PyObject *resultobj = 0;
3651  PLFLT arg1 ;
3652  PLFLT arg2 ;
3653  PLFLT *arg3 = (PLFLT *) 0 ;
3654  PLFLT *arg4 = (PLFLT *) 0 ;
3655  PLcGrid2 *arg5 = (PLcGrid2 *) 0 ;
3656  double val1 ;
3657  int ecode1 = 0 ;
3658  double val2 ;
3659  int ecode2 = 0 ;
3660  PLFLT temp3 ;
3661  int res3 = SWIG_TMPOBJ ;
3662  PLFLT temp4 ;
3663  int res4 = SWIG_TMPOBJ ;
3664  PyObject * obj0 = 0 ;
3665  PyObject * obj1 = 0 ;
3666  PyObject * obj2 = 0 ;
3667 
3668  arg3 = &temp3;
3669  arg4 = &temp4;
3670  if (!PyArg_ParseTuple(args,(char *)"OOO:pltr2",&obj0,&obj1,&obj2)) SWIG_fail;
3671  ecode1 = SWIG_AsVal_double(obj0, &val1);
3672  if (!SWIG_IsOK(ecode1)) {
3673  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "pltr2" "', argument " "1"" of type '" "PLFLT""'");
3674  }
3675  arg1 = (PLFLT)(val1);
3676  ecode2 = SWIG_AsVal_double(obj1, &val2);
3677  if (!SWIG_IsOK(ecode2)) {
3678  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "pltr2" "', argument " "2"" of type '" "PLFLT""'");
3679  }
3680  arg2 = (PLFLT)(val2);
3681  {
3682  arg5 = marshal_PLcGrid2( obj2, 0 );
3683  if ( !arg5 )
3684  return NULL;
3685  }
3686  pltr2(arg1,arg2,arg3,arg4,arg5);
3687  resultobj = SWIG_Py_Void();
3688  if (SWIG_IsTmpObj(res3)) {
3689  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
3690  } else {
3691  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
3692  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
3693  }
3694  if (SWIG_IsTmpObj(res4)) {
3695  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg4)));
3696  } else {
3697  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
3698  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_double, new_flags));
3699  }
3700  {
3701  cleanup_PLcGrid2();
3702  }
3703  return resultobj;
3704 fail:
3705  {
3706  cleanup_PLcGrid2();
3707  }
3708  return NULL;
3709 }
3710 
3711 
3712 
3713  // helper code for handling the callback
3714 #if 0
3715  static PyInterpreterState *save_interp = NULL;
3716 #endif
3718  PyObject* python_pltr = NULL;
3719  PyObject* python_f2eval = NULL;
3720  PyObject* python_ct = NULL;
3721  PyObject* python_mapform = NULL;
3722  PyObject* python_label = NULL;
3723 
3724 #if 0
3725 #define MY_BLOCK_THREADS { \
3726  PyThreadState *prev_state, *new_state; \
3727  /* need to have started a thread at some stage */ \
3728  /* for the following to work */ \
3729  PyEval_AcquireLock(); \
3730  new_state = PyThreadState_New( save_interp ); \
3731  prev_state = PyThreadState_Swap( new_state );
3732 #define MY_UNBLOCK_THREADS \
3733  new_state = PyThreadState_Swap( prev_state ); \
3734  PyThreadState_Clear( new_state ); \
3735  PyEval_ReleaseLock(); \
3736  PyThreadState_Delete( new_state ); \
3737  }
3738 #else
3739 #define MY_BLOCK_THREADS
3740 #define MY_UNBLOCK_THREADS
3741 #endif
3742 
3743 // Function prototypes
3744  void do_pltr_callback( PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer data );
3745  PLFLT do_f2eval_callback( PLINT x, PLINT y, PLPointer data );
3746  void do_label_callback( PLINT axis, PLFLT value, char *string, PLINT len, PLPointer data );
3747  void do_ct_callback( PLFLT x, PLFLT y, PLFLT *xt, PLFLT *yt, PLPointer data );
3748  void do_mapform_callback( PLINT n, PLFLT *x, PLFLT *y );
3749  pltr_func marshal_pltr( PyObject* input );
3750  void cleanup_pltr( void );
3751  ct_func marshal_ct( PyObject* input );
3752  void cleanup_ct( void );
3753  mapform_func marshal_mapform( PyObject* input );
3754  void cleanup_mapform( void );
3755  PLPointer marshal_PLPointer( PyObject* input, int isimg );
3756  void cleanup_PLPointer( void );
3757 
3758 
3759 // This is the callback that gets handed to the C code. It, in turn, calls the Python callback
3760 
3761  void do_pltr_callback( PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer data )
3762  {
3763  PyObject *pdata, *arglist, *result;
3764  PyArrayObject *tmp;
3765 
3766  // the data argument is acutally a pointer to a python object
3767  pdata = (PyObject *) data;
3768  if ( data == NULL )
3769  {
3770  pdata = Py_None;
3771  }
3772  if ( python_pltr ) // if not something is terribly wrong
3773  { // hold a reference to the data object
3774  Py_XINCREF( pdata );
3775  // grab the Global Interpreter Lock to be sure threads don't mess us up
3777  // build the argument list
3778 #ifdef PL_DOUBLE
3779  arglist = Py_BuildValue( "(ddO)", x, y, pdata );
3780 #else
3781  arglist = Py_BuildValue( "(ffO)", x, y, pdata );
3782 #endif
3783  if ( arglist == NULL )
3784  {
3785  fprintf( stderr, "Py_BuildValue failed to make argument list.\n" );
3786  *tx = *ty = 0;
3787  return;
3788  }
3789  // call the python function
3790  result = PyEval_CallObject( python_pltr, arglist );
3791  // release the argument list
3792  Py_CLEAR( arglist );
3793  // check and unpack the result
3794  if ( result == NULL )
3795  {
3796  fprintf( stderr, "call to python pltr function with 3 arguments failed\n" );
3797  PyErr_SetString( PyExc_RuntimeError, "pltr callback must take 3 arguments." );
3798  *tx = *ty = 0;
3799  }
3800  else
3801  {
3802  tmp = (PyArrayObject *) myArray_ContiguousFromObject( result, NPY_PLFLT, 1, 1 );
3803  if ( tmp == 0 || PyArray_DIMS( tmp )[0] != 2 )
3804  {
3805  fprintf( stderr, "pltr callback must return a 2 element array or sequence\n" );
3806  PyErr_SetString( PyExc_RuntimeError, "pltr callback must return a 2-sequence." );
3807  *tx = *ty = 0;
3808  }
3809  else
3810  {
3811  PLFLT* t = (PLFLT *) PyArray_DATA( tmp );
3812  *tx = t[0];
3813  *ty = t[1];
3814  Py_CLEAR( tmp );
3815  }
3816  }
3817  // release the result
3818  Py_CLEAR( result );
3819  // release the global interpreter lock
3821  }
3822  }
3823 
3824  PLFLT do_f2eval_callback( PLINT x, PLINT y, PLPointer data )
3825  {
3826  PyObject *pdata, *arglist, *result;
3827  PLFLT fresult = 0.0;
3828 
3829  // the data argument is acutally a pointer to a python object
3830  pdata = (PyObject *) data;
3831  if ( python_f2eval ) // if not something is terribly wrong
3832  { // hold a reference to the data object
3833  Py_XINCREF( pdata );
3834  // grab the Global Interpreter Lock to be sure threads don't mess us up
3836  // build the argument list
3837  arglist = Py_BuildValue( "(iiO)", x, y, pdata );
3838  // call the python function
3839  result = PyEval_CallObject( python_f2eval, arglist );
3840  // release the argument list
3841  Py_CLEAR( arglist );
3842  // check and unpack the result
3843  if ( !PyFloat_Check( result ) )
3844  {
3845  fprintf( stderr, "f2eval callback must return a float\n" );
3846  PyErr_SetString( PyExc_RuntimeError, "f2eval callback must return a float." );
3847  }
3848  else
3849  {
3850  // should I test the type here?
3851  fresult = (PLFLT) PyFloat_AsDouble( result );
3852  }
3853  // release the result
3854  Py_CLEAR( result );
3855  // release the global interpreter lock
3857  }
3858  return fresult;
3859  }
3860 
3861  void do_label_callback( PLINT axis, PLFLT value, char *string, PLINT len, PLPointer data )
3862  {
3863  PyObject *pdata, *arglist, *result, *unicode_string;
3864  char *pystring;
3865 
3866  // the data argument is acutally a pointer to a python object
3867  if ( data )
3868  pdata = (PyObject *) data;
3869  else
3870  pdata = Py_None;
3871  if ( python_label ) // if not something is terribly wrong
3872  { // hold a reference to the data object
3873  Py_XINCREF( pdata );
3874  // grab the Global Interpreter Lock to be sure threads don't mess us up
3876  // build the argument list
3877 #ifdef PL_DOUBLE
3878  arglist = Py_BuildValue( "(ldO)", axis, value, pdata );
3879 #else
3880  arglist = Py_BuildValue( "(lfO)", axis, value, pdata );
3881 #endif
3882  // call the python function
3883  result = PyEval_CallObject( python_label, arglist );
3884  // release the argument list
3885  //Py_CLEAR(arglist);
3886  // check and unpack the result
3887  if ( result == NULL )
3888  {
3889  fprintf( stderr, "label callback failed with 3 arguments\n" );
3890  PyErr_SetString( PyExc_RuntimeError, "label callback must take 3 arguments." );
3891  }
3892  else if ( PyString_Check( result ) )
3893  {
3894  // should I test the type here?
3895  pystring = PyString_AsString( result );
3896  strncpy( string, pystring, len );
3897  }
3898  else if ( PyUnicode_Check( result ) )
3899  {
3900  // unicode_string is never freed? memory leak here?
3901  unicode_string = PyUnicode_AsEncodedString( result, "utf-8", "Error ~" );
3902  pystring = PyBytes_AS_STRING( unicode_string );
3903  // len may be different then the byte string length w/ unicode?
3904  strncpy( string, pystring, len );
3905  }
3906  else
3907  {
3908  fprintf( stderr, "label callback must return a string\n" );
3909  PyErr_SetString( PyExc_RuntimeError, "label callback must return a string." );
3910  }
3911  // release the result
3912  Py_CLEAR( result );
3913  // release the global interpreter lock
3915  }
3916  }
3917 
3918  void do_ct_callback( PLFLT x, PLFLT y, PLFLT *xt, PLFLT *yt, PLPointer data )
3919  {
3920  PyObject *px, *py, *pdata, *arglist, *result;
3921  npy_intp n;
3922  n = 1;
3923 
3924  // the data argument is acutally a pointer to a python object
3925  pdata = (PyObject *) data;
3926  if ( data == NULL )
3927  {
3928  pdata = Py_None;
3929  }
3930  if ( python_ct ) // if not something is terribly wrong
3931  { // hold a reference to the data object
3932  Py_XINCREF( pdata );
3933  // grab the Global Interpreter Lock to be sure threads don't mess us up
3935  // build the argument list
3936  px = PyArray_SimpleNewFromData( 1, &n, NPY_PLFLT, (void *) xt );
3937  py = PyArray_SimpleNewFromData( 1, &n, NPY_PLFLT, (void *) yt );
3938  arglist = Py_BuildValue( "(ddOOO)", x, y, px, py, pdata );
3939  // call the python function
3940  result = PyEval_CallObject( python_ct, arglist );
3941  // release the argument list
3942  Py_CLEAR( arglist );
3943  Py_CLEAR( px );
3944  Py_CLEAR( py );
3945  Py_CLEAR( pdata );
3946  // check and unpack the result
3947  if ( result == NULL )
3948  {
3949  fprintf( stderr, "call to python coordinate transform function with 5 arguments failed\n" );
3950  PyErr_SetString( PyExc_RuntimeError, "coordinate transform callback must take 5 arguments." );
3951  }
3952  // release the result
3953  Py_CLEAR( result );
3954  // release the global interpreter lock
3956  }
3957  }
3958 
3959  void do_mapform_callback( PLINT n, PLFLT *x, PLFLT *y )
3960  {
3961  PyObject *px, *py, *arglist, *result;
3962  // PyArrayObject *tmpx, *tmpy;
3963 // PLFLT *xx, *yy;
3964 // PLINT i;
3965  npy_intp nn;
3966  nn = n;
3967 
3968  if ( python_mapform ) // if not something is terribly wrong
3969  { // grab the Global Interpreter Lock to be sure threads don't mess us up
3971  // build the argument list
3972 #ifdef PL_HAVE_PTHREAD
3973  px = PyArray_SimpleNewFromData( 1, &nn, NPY_PLFLT, (void *) x );
3974  py = PyArray_SimpleNewFromData( 1, &nn, NPY_PLFLT, (void *) y );
3975 #else
3976  px = PyArray_FromDimsAndData( 1, &n, NPY_PLFLT, (char *) x );
3977  py = PyArray_FromDimsAndData( 1, &n, NPY_PLFLT, (char *) y );
3978 #endif
3979  arglist = Py_BuildValue( "(iOO)", n, px, py );
3980  // call the python function
3981  result = PyEval_CallObject( python_mapform, arglist );
3982  // release the argument list
3983  Py_CLEAR( arglist );
3984  Py_CLEAR( px );
3985  Py_CLEAR( py );
3986  // check and unpack the result
3987  if ( result == NULL )
3988  {
3989  fprintf( stderr, "call to python mapform function with 3 arguments failed\n" );
3990  PyErr_SetString( PyExc_RuntimeError, "mapform callback must take 3 arguments." );
3991  }
3992  // release the result
3993  Py_CLEAR( result );
3994  // release the global interpreter lock
3996  }
3997  }
3998 
3999 // marshal the pltr function pointer argument
4000  pltr_func marshal_pltr( PyObject* input )
4001  {
4002  pltr_func result = do_pltr_callback;
4003  PyObject * rep = PyObject_Repr( input );
4004  if ( rep )
4005  {
4006  // Memory leaks here? str and uni_str are not freed?
4007  char* str;
4008  if ( PyUnicode_Check( rep ) )
4009  {
4010  PyObject *uni_str = PyUnicode_AsEncodedString( rep, "utf-8", "Error ~" );
4011  str = PyBytes_AS_STRING( uni_str );
4012  }
4013  else
4014  {
4015  str = PyString_AsString( rep );
4016  }
4017  if ( strcmp( str, "<built-in function pltr0>" ) == 0 )
4018  {
4019  result = pltr0;
4020  pltr_type = CB_0;
4021  python_pltr = NULL;
4022  }
4023  else if ( strcmp( str, "<built-in function pltr1>" ) == 0 )
4024  {
4025  result = pltr1;
4026  pltr_type = CB_1;
4027  python_pltr = NULL;
4028  }
4029  else if ( strcmp( str, "<built-in function pltr2>" ) == 0 )
4030  {
4031  result = pltr2;
4032  pltr_type = CB_2;
4033  python_pltr = NULL;
4034  }
4035  else
4036  {
4037  python_pltr = input;
4038  pltr_type = CB_Python;
4039  Py_XINCREF( input );
4040  }
4041  Py_CLEAR( rep );
4042  }
4043  else
4044  {
4045  python_pltr = input;
4046  pltr_type = CB_Python;
4047  Py_XINCREF( input );
4048  }
4049  return result;
4050  }
4051 
4052  void cleanup_pltr( void )
4053  {
4054  Py_CLEAR( python_pltr );
4055  python_pltr = 0;
4056  }
4057 
4058 // marshal the ct function pointer argument
4059  ct_func marshal_ct( PyObject* input )
4060  {
4061  ct_func result = do_ct_callback;
4062  python_ct = input;
4063  Py_XINCREF( input );
4064  return result;
4065  }
4066 
4067  void cleanup_ct( void )
4068  {
4069  Py_CLEAR( python_ct );
4070  python_ct = 0;
4071  }
4072 
4073 // marshal the mapform function pointer argument
4074  mapform_func marshal_mapform( PyObject* input )
4075  {
4077  python_mapform = input;
4078  Py_XINCREF( input );
4079  return result;
4080  }
4081 
4082  void cleanup_mapform( void )
4083  {
4084  Py_CLEAR( python_mapform );
4085  python_mapform = 0;
4086  }
4087 
4088  PLPointer marshal_PLPointer( PyObject* input, int isimg )
4089  {
4090  PLPointer result = NULL;
4091  switch ( pltr_type )
4092  {
4093  case CB_0:
4094  break;
4095  case CB_1:
4096  if ( input != Py_None )
4097  result = marshal_PLcGrid1( input, isimg );
4098  break;
4099  case CB_2:
4100  if ( input != Py_None )
4101  result = marshal_PLcGrid2( input, isimg );
4102  break;
4103  case CB_Python:
4104  Py_XINCREF( input );
4105  result = (PLPointer *) input;
4106  break;
4107  default:
4108  fprintf( stderr, "pltr_type is invalid\n" );
4109  }
4110  return result;
4111  }
4112 
4113  void cleanup_PLPointer( void )
4114  {
4115  switch ( pltr_type )
4116  {
4117  case CB_0:
4118  break;
4119  case CB_1:
4120  cleanup_PLcGrid1();
4121  break;
4122  case CB_2:
4123  cleanup_PLcGrid2();
4124  break;
4125  case CB_Python:
4126  Py_CLEAR( python_pltr );
4127  break;
4128  default:
4129  fprintf( stderr, "pltr_type is invalid\n" );
4130  }
4131  python_pltr = 0;
4132  pltr_type = CB_0;
4133  }
4134 
4135 
4136 
4137 SWIGINTERN PyObject *_wrap_PLGraphicsIn_type_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4138  PyObject *resultobj = 0;
4139  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4140  int arg2 ;
4141  void *argp1 = 0 ;
4142  int res1 = 0 ;
4143  int val2 ;
4144  int ecode2 = 0 ;
4145  PyObject * obj0 = 0 ;
4146  PyObject * obj1 = 0 ;
4147 
4148  if (!PyArg_ParseTuple(args,(char *)"OO:PLGraphicsIn_type_set",&obj0,&obj1)) SWIG_fail;
4149  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4150  if (!SWIG_IsOK(res1)) {
4151  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_type_set" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4152  }
4153  arg1 = (PLGraphicsIn *)(argp1);
4154  ecode2 = SWIG_AsVal_int(obj1, &val2);
4155  if (!SWIG_IsOK(ecode2)) {
4156  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "PLGraphicsIn_type_set" "', argument " "2"" of type '" "int""'");
4157  }
4158  arg2 = (int)(val2);
4159  if (arg1) (arg1)->type = arg2;
4160  resultobj = SWIG_Py_Void();
4161  return resultobj;
4162 fail:
4163  return NULL;
4164 }
4165 
4166 
4167 SWIGINTERN PyObject *_wrap_PLGraphicsIn_type_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4168  PyObject *resultobj = 0;
4169  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4170  void *argp1 = 0 ;
4171  int res1 = 0 ;
4172  PyObject * obj0 = 0 ;
4173  int result;
4174 
4175  if (!PyArg_ParseTuple(args,(char *)"O:PLGraphicsIn_type_get",&obj0)) SWIG_fail;
4176  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4177  if (!SWIG_IsOK(res1)) {
4178  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_type_get" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4179  }
4180  arg1 = (PLGraphicsIn *)(argp1);
4181  result = (int) ((arg1)->type);
4182  resultobj = SWIG_From_int((int)(result));
4183  return resultobj;
4184 fail:
4185  return NULL;
4186 }
4187 
4188 
4189 SWIGINTERN PyObject *_wrap_PLGraphicsIn_state_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4190  PyObject *resultobj = 0;
4191  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4192  unsigned int arg2 ;
4193  void *argp1 = 0 ;
4194  int res1 = 0 ;
4195  unsigned int val2 ;
4196  int ecode2 = 0 ;
4197  PyObject * obj0 = 0 ;
4198  PyObject * obj1 = 0 ;
4199 
4200  if (!PyArg_ParseTuple(args,(char *)"OO:PLGraphicsIn_state_set",&obj0,&obj1)) SWIG_fail;
4201  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4202  if (!SWIG_IsOK(res1)) {
4203  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_state_set" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4204  }
4205  arg1 = (PLGraphicsIn *)(argp1);
4206  ecode2 = SWIG_AsVal_unsigned_SS_int(obj1, &val2);
4207  if (!SWIG_IsOK(ecode2)) {
4208  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "PLGraphicsIn_state_set" "', argument " "2"" of type '" "unsigned int""'");
4209  }
4210  arg2 = (unsigned int)(val2);
4211  if (arg1) (arg1)->state = arg2;
4212  resultobj = SWIG_Py_Void();
4213  return resultobj;
4214 fail:
4215  return NULL;
4216 }
4217 
4218 
4219 SWIGINTERN PyObject *_wrap_PLGraphicsIn_state_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4220  PyObject *resultobj = 0;
4221  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4222  void *argp1 = 0 ;
4223  int res1 = 0 ;
4224  PyObject * obj0 = 0 ;
4225  unsigned int result;
4226 
4227  if (!PyArg_ParseTuple(args,(char *)"O:PLGraphicsIn_state_get",&obj0)) SWIG_fail;
4228  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4229  if (!SWIG_IsOK(res1)) {
4230  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_state_get" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4231  }
4232  arg1 = (PLGraphicsIn *)(argp1);
4233  result = (unsigned int) ((arg1)->state);
4234  resultobj = SWIG_From_unsigned_SS_int((unsigned int)(result));
4235  return resultobj;
4236 fail:
4237  return NULL;
4238 }
4239 
4240 
4241 SWIGINTERN PyObject *_wrap_PLGraphicsIn_keysym_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4242  PyObject *resultobj = 0;
4243  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4244  unsigned int arg2 ;
4245  void *argp1 = 0 ;
4246  int res1 = 0 ;
4247  unsigned int val2 ;
4248  int ecode2 = 0 ;
4249  PyObject * obj0 = 0 ;
4250  PyObject * obj1 = 0 ;
4251 
4252  if (!PyArg_ParseTuple(args,(char *)"OO:PLGraphicsIn_keysym_set",&obj0,&obj1)) SWIG_fail;
4253  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4254  if (!SWIG_IsOK(res1)) {
4255  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_keysym_set" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4256  }
4257  arg1 = (PLGraphicsIn *)(argp1);
4258  ecode2 = SWIG_AsVal_unsigned_SS_int(obj1, &val2);
4259  if (!SWIG_IsOK(ecode2)) {
4260  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "PLGraphicsIn_keysym_set" "', argument " "2"" of type '" "unsigned int""'");
4261  }
4262  arg2 = (unsigned int)(val2);
4263  if (arg1) (arg1)->keysym = arg2;
4264  resultobj = SWIG_Py_Void();
4265  return resultobj;
4266 fail:
4267  return NULL;
4268 }
4269 
4270 
4271 SWIGINTERN PyObject *_wrap_PLGraphicsIn_keysym_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4272  PyObject *resultobj = 0;
4273  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4274  void *argp1 = 0 ;
4275  int res1 = 0 ;
4276  PyObject * obj0 = 0 ;
4277  unsigned int result;
4278 
4279  if (!PyArg_ParseTuple(args,(char *)"O:PLGraphicsIn_keysym_get",&obj0)) SWIG_fail;
4280  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4281  if (!SWIG_IsOK(res1)) {
4282  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_keysym_get" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4283  }
4284  arg1 = (PLGraphicsIn *)(argp1);
4285  result = (unsigned int) ((arg1)->keysym);
4286  resultobj = SWIG_From_unsigned_SS_int((unsigned int)(result));
4287  return resultobj;
4288 fail:
4289  return NULL;
4290 }
4291 
4292 
4293 SWIGINTERN PyObject *_wrap_PLGraphicsIn_button_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4294  PyObject *resultobj = 0;
4295  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4296  unsigned int arg2 ;
4297  void *argp1 = 0 ;
4298  int res1 = 0 ;
4299  unsigned int val2 ;
4300  int ecode2 = 0 ;
4301  PyObject * obj0 = 0 ;
4302  PyObject * obj1 = 0 ;
4303 
4304  if (!PyArg_ParseTuple(args,(char *)"OO:PLGraphicsIn_button_set",&obj0,&obj1)) SWIG_fail;
4305  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4306  if (!SWIG_IsOK(res1)) {
4307  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_button_set" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4308  }
4309  arg1 = (PLGraphicsIn *)(argp1);
4310  ecode2 = SWIG_AsVal_unsigned_SS_int(obj1, &val2);
4311  if (!SWIG_IsOK(ecode2)) {
4312  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "PLGraphicsIn_button_set" "', argument " "2"" of type '" "unsigned int""'");
4313  }
4314  arg2 = (unsigned int)(val2);
4315  if (arg1) (arg1)->button = arg2;
4316  resultobj = SWIG_Py_Void();
4317  return resultobj;
4318 fail:
4319  return NULL;
4320 }
4321 
4322 
4323 SWIGINTERN PyObject *_wrap_PLGraphicsIn_button_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4324  PyObject *resultobj = 0;
4325  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4326  void *argp1 = 0 ;
4327  int res1 = 0 ;
4328  PyObject * obj0 = 0 ;
4329  unsigned int result;
4330 
4331  if (!PyArg_ParseTuple(args,(char *)"O:PLGraphicsIn_button_get",&obj0)) SWIG_fail;
4332  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4333  if (!SWIG_IsOK(res1)) {
4334  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_button_get" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4335  }
4336  arg1 = (PLGraphicsIn *)(argp1);
4337  result = (unsigned int) ((arg1)->button);
4338  resultobj = SWIG_From_unsigned_SS_int((unsigned int)(result));
4339  return resultobj;
4340 fail:
4341  return NULL;
4342 }
4343 
4344 
4345 SWIGINTERN PyObject *_wrap_PLGraphicsIn_subwindow_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4346  PyObject *resultobj = 0;
4347  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4348  PLINT arg2 ;
4349  void *argp1 = 0 ;
4350  int res1 = 0 ;
4351  int val2 ;
4352  int ecode2 = 0 ;
4353  PyObject * obj0 = 0 ;
4354  PyObject * obj1 = 0 ;
4355 
4356  if (!PyArg_ParseTuple(args,(char *)"OO:PLGraphicsIn_subwindow_set",&obj0,&obj1)) SWIG_fail;
4357  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4358  if (!SWIG_IsOK(res1)) {
4359  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_subwindow_set" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4360  }
4361  arg1 = (PLGraphicsIn *)(argp1);
4362  ecode2 = SWIG_AsVal_int(obj1, &val2);
4363  if (!SWIG_IsOK(ecode2)) {
4364  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "PLGraphicsIn_subwindow_set" "', argument " "2"" of type '" "PLINT""'");
4365  }
4366  arg2 = (PLINT)(val2);
4367  if (arg1) (arg1)->subwindow = arg2;
4368  resultobj = SWIG_Py_Void();
4369  return resultobj;
4370 fail:
4371  return NULL;
4372 }
4373 
4374 
4375 SWIGINTERN PyObject *_wrap_PLGraphicsIn_subwindow_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4376  PyObject *resultobj = 0;
4377  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4378  void *argp1 = 0 ;
4379  int res1 = 0 ;
4380  PyObject * obj0 = 0 ;
4381  PLINT result;
4382 
4383  if (!PyArg_ParseTuple(args,(char *)"O:PLGraphicsIn_subwindow_get",&obj0)) SWIG_fail;
4384  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4385  if (!SWIG_IsOK(res1)) {
4386  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_subwindow_get" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4387  }
4388  arg1 = (PLGraphicsIn *)(argp1);
4389  result = (PLINT) ((arg1)->subwindow);
4390  resultobj = SWIG_From_int((int)(result));
4391  return resultobj;
4392 fail:
4393  return NULL;
4394 }
4395 
4396 
4397 SWIGINTERN PyObject *_wrap_PLGraphicsIn_string_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4398  PyObject *resultobj = 0;
4399  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4400  char *arg2 ;
4401  void *argp1 = 0 ;
4402  int res1 = 0 ;
4403  char temp2[16] ;
4404  int res2 ;
4405  PyObject * obj0 = 0 ;
4406  PyObject * obj1 = 0 ;
4407 
4408  if (!PyArg_ParseTuple(args,(char *)"OO:PLGraphicsIn_string_set",&obj0,&obj1)) SWIG_fail;
4409  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4410  if (!SWIG_IsOK(res1)) {
4411  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_string_set" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4412  }
4413  arg1 = (PLGraphicsIn *)(argp1);
4414  res2 = SWIG_AsCharArray(obj1, temp2, 16);
4415  if (!SWIG_IsOK(res2)) {
4416  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "PLGraphicsIn_string_set" "', argument " "2"" of type '" "char [16]""'");
4417  }
4418  arg2 = (char *)(temp2);
4419  if (arg2) memcpy(arg1->string,arg2,16*sizeof(char));
4420  else memset(arg1->string,0,16*sizeof(char));
4421  resultobj = SWIG_Py_Void();
4422  return resultobj;
4423 fail:
4424  return NULL;
4425 }
4426 
4427 
4428 SWIGINTERN PyObject *_wrap_PLGraphicsIn_string_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4429  PyObject *resultobj = 0;
4430  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4431  void *argp1 = 0 ;
4432  int res1 = 0 ;
4433  PyObject * obj0 = 0 ;
4434  char *result = 0 ;
4435 
4436  if (!PyArg_ParseTuple(args,(char *)"O:PLGraphicsIn_string_get",&obj0)) SWIG_fail;
4437  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4438  if (!SWIG_IsOK(res1)) {
4439  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_string_get" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4440  }
4441  arg1 = (PLGraphicsIn *)(argp1);
4442  result = (char *)(char *) ((arg1)->string);
4443  {
4444  size_t size = 16;
4445 
4446  while (size && (result[size - 1] == '\0')) --size;
4447 
4448  resultobj = SWIG_FromCharPtrAndSize(result, size);
4449  }
4450  return resultobj;
4451 fail:
4452  return NULL;
4453 }
4454 
4455 
4456 SWIGINTERN PyObject *_wrap_PLGraphicsIn_pX_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4457  PyObject *resultobj = 0;
4458  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4459  int arg2 ;
4460  void *argp1 = 0 ;
4461  int res1 = 0 ;
4462  int val2 ;
4463  int ecode2 = 0 ;
4464  PyObject * obj0 = 0 ;
4465  PyObject * obj1 = 0 ;
4466 
4467  if (!PyArg_ParseTuple(args,(char *)"OO:PLGraphicsIn_pX_set",&obj0,&obj1)) SWIG_fail;
4468  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4469  if (!SWIG_IsOK(res1)) {
4470  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_pX_set" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4471  }
4472  arg1 = (PLGraphicsIn *)(argp1);
4473  ecode2 = SWIG_AsVal_int(obj1, &val2);
4474  if (!SWIG_IsOK(ecode2)) {
4475  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "PLGraphicsIn_pX_set" "', argument " "2"" of type '" "int""'");
4476  }
4477  arg2 = (int)(val2);
4478  if (arg1) (arg1)->pX = arg2;
4479  resultobj = SWIG_Py_Void();
4480  return resultobj;
4481 fail:
4482  return NULL;
4483 }
4484 
4485 
4486 SWIGINTERN PyObject *_wrap_PLGraphicsIn_pX_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4487  PyObject *resultobj = 0;
4488  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4489  void *argp1 = 0 ;
4490  int res1 = 0 ;
4491  PyObject * obj0 = 0 ;
4492  int result;
4493 
4494  if (!PyArg_ParseTuple(args,(char *)"O:PLGraphicsIn_pX_get",&obj0)) SWIG_fail;
4495  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4496  if (!SWIG_IsOK(res1)) {
4497  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_pX_get" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4498  }
4499  arg1 = (PLGraphicsIn *)(argp1);
4500  result = (int) ((arg1)->pX);
4501  resultobj = SWIG_From_int((int)(result));
4502  return resultobj;
4503 fail:
4504  return NULL;
4505 }
4506 
4507 
4508 SWIGINTERN PyObject *_wrap_PLGraphicsIn_pY_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4509  PyObject *resultobj = 0;
4510  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4511  int arg2 ;
4512  void *argp1 = 0 ;
4513  int res1 = 0 ;
4514  int val2 ;
4515  int ecode2 = 0 ;
4516  PyObject * obj0 = 0 ;
4517  PyObject * obj1 = 0 ;
4518 
4519  if (!PyArg_ParseTuple(args,(char *)"OO:PLGraphicsIn_pY_set",&obj0,&obj1)) SWIG_fail;
4520  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4521  if (!SWIG_IsOK(res1)) {
4522  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_pY_set" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4523  }
4524  arg1 = (PLGraphicsIn *)(argp1);
4525  ecode2 = SWIG_AsVal_int(obj1, &val2);
4526  if (!SWIG_IsOK(ecode2)) {
4527  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "PLGraphicsIn_pY_set" "', argument " "2"" of type '" "int""'");
4528  }
4529  arg2 = (int)(val2);
4530  if (arg1) (arg1)->pY = arg2;
4531  resultobj = SWIG_Py_Void();
4532  return resultobj;
4533 fail:
4534  return NULL;
4535 }
4536 
4537 
4538 SWIGINTERN PyObject *_wrap_PLGraphicsIn_pY_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4539  PyObject *resultobj = 0;
4540  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4541  void *argp1 = 0 ;
4542  int res1 = 0 ;
4543  PyObject * obj0 = 0 ;
4544  int result;
4545 
4546  if (!PyArg_ParseTuple(args,(char *)"O:PLGraphicsIn_pY_get",&obj0)) SWIG_fail;
4547  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4548  if (!SWIG_IsOK(res1)) {
4549  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_pY_get" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4550  }
4551  arg1 = (PLGraphicsIn *)(argp1);
4552  result = (int) ((arg1)->pY);
4553  resultobj = SWIG_From_int((int)(result));
4554  return resultobj;
4555 fail:
4556  return NULL;
4557 }
4558 
4559 
4560 SWIGINTERN PyObject *_wrap_PLGraphicsIn_dX_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4561  PyObject *resultobj = 0;
4562  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4563  PLFLT arg2 ;
4564  void *argp1 = 0 ;
4565  int res1 = 0 ;
4566  double val2 ;
4567  int ecode2 = 0 ;
4568  PyObject * obj0 = 0 ;
4569  PyObject * obj1 = 0 ;
4570 
4571  if (!PyArg_ParseTuple(args,(char *)"OO:PLGraphicsIn_dX_set",&obj0,&obj1)) SWIG_fail;
4572  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4573  if (!SWIG_IsOK(res1)) {
4574  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_dX_set" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4575  }
4576  arg1 = (PLGraphicsIn *)(argp1);
4577  ecode2 = SWIG_AsVal_double(obj1, &val2);
4578  if (!SWIG_IsOK(ecode2)) {
4579  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "PLGraphicsIn_dX_set" "', argument " "2"" of type '" "PLFLT""'");
4580  }
4581  arg2 = (PLFLT)(val2);
4582  if (arg1) (arg1)->dX = arg2;
4583  resultobj = SWIG_Py_Void();
4584  return resultobj;
4585 fail:
4586  return NULL;
4587 }
4588 
4589 
4590 SWIGINTERN PyObject *_wrap_PLGraphicsIn_dX_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4591  PyObject *resultobj = 0;
4592  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4593  void *argp1 = 0 ;
4594  int res1 = 0 ;
4595  PyObject * obj0 = 0 ;
4596  PLFLT result;
4597 
4598  if (!PyArg_ParseTuple(args,(char *)"O:PLGraphicsIn_dX_get",&obj0)) SWIG_fail;
4599  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4600  if (!SWIG_IsOK(res1)) {
4601  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_dX_get" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4602  }
4603  arg1 = (PLGraphicsIn *)(argp1);
4604  result = (PLFLT) ((arg1)->dX);
4605  resultobj = SWIG_From_double((double)(result));
4606  return resultobj;
4607 fail:
4608  return NULL;
4609 }
4610 
4611 
4612 SWIGINTERN PyObject *_wrap_PLGraphicsIn_dY_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4613  PyObject *resultobj = 0;
4614  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4615  PLFLT arg2 ;
4616  void *argp1 = 0 ;
4617  int res1 = 0 ;
4618  double val2 ;
4619  int ecode2 = 0 ;
4620  PyObject * obj0 = 0 ;
4621  PyObject * obj1 = 0 ;
4622 
4623  if (!PyArg_ParseTuple(args,(char *)"OO:PLGraphicsIn_dY_set",&obj0,&obj1)) SWIG_fail;
4624  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4625  if (!SWIG_IsOK(res1)) {
4626  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_dY_set" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4627  }
4628  arg1 = (PLGraphicsIn *)(argp1);
4629  ecode2 = SWIG_AsVal_double(obj1, &val2);
4630  if (!SWIG_IsOK(ecode2)) {
4631  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "PLGraphicsIn_dY_set" "', argument " "2"" of type '" "PLFLT""'");
4632  }
4633  arg2 = (PLFLT)(val2);
4634  if (arg1) (arg1)->dY = arg2;
4635  resultobj = SWIG_Py_Void();
4636  return resultobj;
4637 fail:
4638  return NULL;
4639 }
4640 
4641 
4642 SWIGINTERN PyObject *_wrap_PLGraphicsIn_dY_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4643  PyObject *resultobj = 0;
4644  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4645  void *argp1 = 0 ;
4646  int res1 = 0 ;
4647  PyObject * obj0 = 0 ;
4648  PLFLT result;
4649 
4650  if (!PyArg_ParseTuple(args,(char *)"O:PLGraphicsIn_dY_get",&obj0)) SWIG_fail;
4651  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4652  if (!SWIG_IsOK(res1)) {
4653  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_dY_get" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4654  }
4655  arg1 = (PLGraphicsIn *)(argp1);
4656  result = (PLFLT) ((arg1)->dY);
4657  resultobj = SWIG_From_double((double)(result));
4658  return resultobj;
4659 fail:
4660  return NULL;
4661 }
4662 
4663 
4664 SWIGINTERN PyObject *_wrap_PLGraphicsIn_wX_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4665  PyObject *resultobj = 0;
4666  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4667  PLFLT arg2 ;
4668  void *argp1 = 0 ;
4669  int res1 = 0 ;
4670  double val2 ;
4671  int ecode2 = 0 ;
4672  PyObject * obj0 = 0 ;
4673  PyObject * obj1 = 0 ;
4674 
4675  if (!PyArg_ParseTuple(args,(char *)"OO:PLGraphicsIn_wX_set",&obj0,&obj1)) SWIG_fail;
4676  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4677  if (!SWIG_IsOK(res1)) {
4678  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_wX_set" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4679  }
4680  arg1 = (PLGraphicsIn *)(argp1);
4681  ecode2 = SWIG_AsVal_double(obj1, &val2);
4682  if (!SWIG_IsOK(ecode2)) {
4683  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "PLGraphicsIn_wX_set" "', argument " "2"" of type '" "PLFLT""'");
4684  }
4685  arg2 = (PLFLT)(val2);
4686  if (arg1) (arg1)->wX = arg2;
4687  resultobj = SWIG_Py_Void();
4688  return resultobj;
4689 fail:
4690  return NULL;
4691 }
4692 
4693 
4694 SWIGINTERN PyObject *_wrap_PLGraphicsIn_wX_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4695  PyObject *resultobj = 0;
4696  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4697  void *argp1 = 0 ;
4698  int res1 = 0 ;
4699  PyObject * obj0 = 0 ;
4700  PLFLT result;
4701 
4702  if (!PyArg_ParseTuple(args,(char *)"O:PLGraphicsIn_wX_get",&obj0)) SWIG_fail;
4703  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4704  if (!SWIG_IsOK(res1)) {
4705  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_wX_get" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4706  }
4707  arg1 = (PLGraphicsIn *)(argp1);
4708  result = (PLFLT) ((arg1)->wX);
4709  resultobj = SWIG_From_double((double)(result));
4710  return resultobj;
4711 fail:
4712  return NULL;
4713 }
4714 
4715 
4716 SWIGINTERN PyObject *_wrap_PLGraphicsIn_wY_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4717  PyObject *resultobj = 0;
4718  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4719  PLFLT arg2 ;
4720  void *argp1 = 0 ;
4721  int res1 = 0 ;
4722  double val2 ;
4723  int ecode2 = 0 ;
4724  PyObject * obj0 = 0 ;
4725  PyObject * obj1 = 0 ;
4726 
4727  if (!PyArg_ParseTuple(args,(char *)"OO:PLGraphicsIn_wY_set",&obj0,&obj1)) SWIG_fail;
4728  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4729  if (!SWIG_IsOK(res1)) {
4730  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_wY_set" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4731  }
4732  arg1 = (PLGraphicsIn *)(argp1);
4733  ecode2 = SWIG_AsVal_double(obj1, &val2);
4734  if (!SWIG_IsOK(ecode2)) {
4735  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "PLGraphicsIn_wY_set" "', argument " "2"" of type '" "PLFLT""'");
4736  }
4737  arg2 = (PLFLT)(val2);
4738  if (arg1) (arg1)->wY = arg2;
4739  resultobj = SWIG_Py_Void();
4740  return resultobj;
4741 fail:
4742  return NULL;
4743 }
4744 
4745 
4746 SWIGINTERN PyObject *_wrap_PLGraphicsIn_wY_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4747  PyObject *resultobj = 0;
4748  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4749  void *argp1 = 0 ;
4750  int res1 = 0 ;
4751  PyObject * obj0 = 0 ;
4752  PLFLT result;
4753 
4754  if (!PyArg_ParseTuple(args,(char *)"O:PLGraphicsIn_wY_get",&obj0)) SWIG_fail;
4755  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
4756  if (!SWIG_IsOK(res1)) {
4757  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PLGraphicsIn_wY_get" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4758  }
4759  arg1 = (PLGraphicsIn *)(argp1);
4760  result = (PLFLT) ((arg1)->wY);
4761  resultobj = SWIG_From_double((double)(result));
4762  return resultobj;
4763 fail:
4764  return NULL;
4765 }
4766 
4767 
4768 SWIGINTERN PyObject *_wrap_new_PLGraphicsIn(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4769  PyObject *resultobj = 0;
4770  PLGraphicsIn *result = 0 ;
4771 
4772  if (!PyArg_ParseTuple(args,(char *)":new_PLGraphicsIn")) SWIG_fail;
4773  result = (PLGraphicsIn *)calloc(1, sizeof(PLGraphicsIn));
4775  return resultobj;
4776 fail:
4777  return NULL;
4778 }
4779 
4780 
4781 SWIGINTERN PyObject *_wrap_delete_PLGraphicsIn(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4782  PyObject *resultobj = 0;
4783  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
4784  void *argp1 = 0 ;
4785  int res1 = 0 ;
4786  PyObject * obj0 = 0 ;
4787 
4788  if (!PyArg_ParseTuple(args,(char *)"O:delete_PLGraphicsIn",&obj0)) SWIG_fail;
4789  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, SWIG_POINTER_DISOWN | 0 );
4790  if (!SWIG_IsOK(res1)) {
4791  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_PLGraphicsIn" "', argument " "1"" of type '" "PLGraphicsIn *""'");
4792  }
4793  arg1 = (PLGraphicsIn *)(argp1);
4794  free((char *) arg1);
4795  resultobj = SWIG_Py_Void();
4796  return resultobj;
4797 fail:
4798  return NULL;
4799 }
4800 
4801 
4802 SWIGINTERN PyObject *PLGraphicsIn_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4803  PyObject *obj;
4804  if (!PyArg_ParseTuple(args,(char*)"O:swigregister", &obj)) return NULL;
4806  return SWIG_Py_Void();
4807 }
4808 
4809 SWIGINTERN PyObject *_wrap_plsxwin(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4810  PyObject *resultobj = 0;
4811  PLINT arg1 ;
4812  int val1 ;
4813  int ecode1 = 0 ;
4814  PyObject * obj0 = 0 ;
4815 
4816  if (!PyArg_ParseTuple(args,(char *)"O:plsxwin",&obj0)) SWIG_fail;
4817  ecode1 = SWIG_AsVal_int(obj0, &val1);
4818  if (!SWIG_IsOK(ecode1)) {
4819  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsxwin" "', argument " "1"" of type '" "PLINT""'");
4820  }
4821  arg1 = (PLINT)(val1);
4822  plsxwin(arg1);
4823  resultobj = SWIG_Py_Void();
4824  return resultobj;
4825 fail:
4826  return NULL;
4827 }
4828 
4829 
4830 SWIGINTERN PyObject *_wrap_pl_setcontlabelformat(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4831  PyObject *resultobj = 0;
4832  PLINT arg1 ;
4833  PLINT arg2 ;
4834  int val1 ;
4835  int ecode1 = 0 ;
4836  int val2 ;
4837  int ecode2 = 0 ;
4838  PyObject * obj0 = 0 ;
4839  PyObject * obj1 = 0 ;
4840 
4841  if (!PyArg_ParseTuple(args,(char *)"OO:pl_setcontlabelformat",&obj0,&obj1)) SWIG_fail;
4842  ecode1 = SWIG_AsVal_int(obj0, &val1);
4843  if (!SWIG_IsOK(ecode1)) {
4844  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "pl_setcontlabelformat" "', argument " "1"" of type '" "PLINT""'");
4845  }
4846  arg1 = (PLINT)(val1);
4847  ecode2 = SWIG_AsVal_int(obj1, &val2);
4848  if (!SWIG_IsOK(ecode2)) {
4849  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "pl_setcontlabelformat" "', argument " "2"" of type '" "PLINT""'");
4850  }
4851  arg2 = (PLINT)(val2);
4852  pl_setcontlabelformat(arg1,arg2);
4853  resultobj = SWIG_Py_Void();
4854  return resultobj;
4855 fail:
4856  return NULL;
4857 }
4858 
4859 
4860 SWIGINTERN PyObject *_wrap_pl_setcontlabelparam(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4861  PyObject *resultobj = 0;
4862  PLFLT arg1 ;
4863  PLFLT arg2 ;
4864  PLFLT arg3 ;
4865  PLINT arg4 ;
4866  double val1 ;
4867  int ecode1 = 0 ;
4868  double val2 ;
4869  int ecode2 = 0 ;
4870  double val3 ;
4871  int ecode3 = 0 ;
4872  int val4 ;
4873  int ecode4 = 0 ;
4874  PyObject * obj0 = 0 ;
4875  PyObject * obj1 = 0 ;
4876  PyObject * obj2 = 0 ;
4877  PyObject * obj3 = 0 ;
4878 
4879  if (!PyArg_ParseTuple(args,(char *)"OOOO:pl_setcontlabelparam",&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
4880  ecode1 = SWIG_AsVal_double(obj0, &val1);
4881  if (!SWIG_IsOK(ecode1)) {
4882  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "pl_setcontlabelparam" "', argument " "1"" of type '" "PLFLT""'");
4883  }
4884  arg1 = (PLFLT)(val1);
4885  ecode2 = SWIG_AsVal_double(obj1, &val2);
4886  if (!SWIG_IsOK(ecode2)) {
4887  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "pl_setcontlabelparam" "', argument " "2"" of type '" "PLFLT""'");
4888  }
4889  arg2 = (PLFLT)(val2);
4890  ecode3 = SWIG_AsVal_double(obj2, &val3);
4891  if (!SWIG_IsOK(ecode3)) {
4892  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "pl_setcontlabelparam" "', argument " "3"" of type '" "PLFLT""'");
4893  }
4894  arg3 = (PLFLT)(val3);
4895  ecode4 = SWIG_AsVal_int(obj3, &val4);
4896  if (!SWIG_IsOK(ecode4)) {
4897  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "pl_setcontlabelparam" "', argument " "4"" of type '" "PLINT""'");
4898  }
4899  arg4 = (PLINT)(val4);
4900  pl_setcontlabelparam(arg1,arg2,arg3,arg4);
4901  resultobj = SWIG_Py_Void();
4902  return resultobj;
4903 fail:
4904  return NULL;
4905 }
4906 
4907 
4908 SWIGINTERN PyObject *_wrap_pladv(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4909  PyObject *resultobj = 0;
4910  PLINT arg1 ;
4911  int val1 ;
4912  int ecode1 = 0 ;
4913  PyObject * obj0 = 0 ;
4914 
4915  if (!PyArg_ParseTuple(args,(char *)"O:pladv",&obj0)) SWIG_fail;
4916  ecode1 = SWIG_AsVal_int(obj0, &val1);
4917  if (!SWIG_IsOK(ecode1)) {
4918  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "pladv" "', argument " "1"" of type '" "PLINT""'");
4919  }
4920  arg1 = (PLINT)(val1);
4921  pladv(arg1);
4922  resultobj = SWIG_Py_Void();
4923  return resultobj;
4924 fail:
4925  return NULL;
4926 }
4927 
4928 
4929 SWIGINTERN PyObject *_wrap_plarc(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
4930  PyObject *resultobj = 0;
4931  PLFLT arg1 ;
4932  PLFLT arg2 ;
4933  PLFLT arg3 ;
4934  PLFLT arg4 ;
4935  PLFLT arg5 ;
4936  PLFLT arg6 ;
4937  PLFLT arg7 ;
4938  PLBOOL arg8 ;
4939  double val1 ;
4940  int ecode1 = 0 ;
4941  double val2 ;
4942  int ecode2 = 0 ;
4943  double val3 ;
4944  int ecode3 = 0 ;
4945  double val4 ;
4946  int ecode4 = 0 ;
4947  double val5 ;
4948  int ecode5 = 0 ;
4949  double val6 ;
4950  int ecode6 = 0 ;
4951  double val7 ;
4952  int ecode7 = 0 ;
4953  int val8 ;
4954  int ecode8 = 0 ;
4955  PyObject * obj0 = 0 ;
4956  PyObject * obj1 = 0 ;
4957  PyObject * obj2 = 0 ;
4958  PyObject * obj3 = 0 ;
4959  PyObject * obj4 = 0 ;
4960  PyObject * obj5 = 0 ;
4961  PyObject * obj6 = 0 ;
4962  PyObject * obj7 = 0 ;
4963 
4964  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOO:plarc",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
4965  ecode1 = SWIG_AsVal_double(obj0, &val1);
4966  if (!SWIG_IsOK(ecode1)) {
4967  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plarc" "', argument " "1"" of type '" "PLFLT""'");
4968  }
4969  arg1 = (PLFLT)(val1);
4970  ecode2 = SWIG_AsVal_double(obj1, &val2);
4971  if (!SWIG_IsOK(ecode2)) {
4972  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plarc" "', argument " "2"" of type '" "PLFLT""'");
4973  }
4974  arg2 = (PLFLT)(val2);
4975  ecode3 = SWIG_AsVal_double(obj2, &val3);
4976  if (!SWIG_IsOK(ecode3)) {
4977  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plarc" "', argument " "3"" of type '" "PLFLT""'");
4978  }
4979  arg3 = (PLFLT)(val3);
4980  ecode4 = SWIG_AsVal_double(obj3, &val4);
4981  if (!SWIG_IsOK(ecode4)) {
4982  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plarc" "', argument " "4"" of type '" "PLFLT""'");
4983  }
4984  arg4 = (PLFLT)(val4);
4985  ecode5 = SWIG_AsVal_double(obj4, &val5);
4986  if (!SWIG_IsOK(ecode5)) {
4987  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plarc" "', argument " "5"" of type '" "PLFLT""'");
4988  }
4989  arg5 = (PLFLT)(val5);
4990  ecode6 = SWIG_AsVal_double(obj5, &val6);
4991  if (!SWIG_IsOK(ecode6)) {
4992  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plarc" "', argument " "6"" of type '" "PLFLT""'");
4993  }
4994  arg6 = (PLFLT)(val6);
4995  ecode7 = SWIG_AsVal_double(obj6, &val7);
4996  if (!SWIG_IsOK(ecode7)) {
4997  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plarc" "', argument " "7"" of type '" "PLFLT""'");
4998  }
4999  arg7 = (PLFLT)(val7);
5000  ecode8 = SWIG_AsVal_int(obj7, &val8);
5001  if (!SWIG_IsOK(ecode8)) {
5002  SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "plarc" "', argument " "8"" of type '" "PLBOOL""'");
5003  }
5004  arg8 = (PLBOOL)(val8);
5005  plarc(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8);
5006  resultobj = SWIG_Py_Void();
5007  return resultobj;
5008 fail:
5009  return NULL;
5010 }
5011 
5012 
5013 SWIGINTERN PyObject *_wrap_plaxes(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5014  PyObject *resultobj = 0;
5015  PLFLT arg1 ;
5016  PLFLT arg2 ;
5017  char *arg3 = (char *) 0 ;
5018  PLFLT arg4 ;
5019  PLINT arg5 ;
5020  char *arg6 = (char *) 0 ;
5021  PLFLT arg7 ;
5022  PLINT arg8 ;
5023  double val1 ;
5024  int ecode1 = 0 ;
5025  double val2 ;
5026  int ecode2 = 0 ;
5027  int res3 ;
5028  char *buf3 = 0 ;
5029  int alloc3 = 0 ;
5030  double val4 ;
5031  int ecode4 = 0 ;
5032  int val5 ;
5033  int ecode5 = 0 ;
5034  int res6 ;
5035  char *buf6 = 0 ;
5036  int alloc6 = 0 ;
5037  double val7 ;
5038  int ecode7 = 0 ;
5039  int val8 ;
5040  int ecode8 = 0 ;
5041  PyObject * obj0 = 0 ;
5042  PyObject * obj1 = 0 ;
5043  PyObject * obj2 = 0 ;
5044  PyObject * obj3 = 0 ;
5045  PyObject * obj4 = 0 ;
5046  PyObject * obj5 = 0 ;
5047  PyObject * obj6 = 0 ;
5048  PyObject * obj7 = 0 ;
5049 
5050  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOO:plaxes",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
5051  ecode1 = SWIG_AsVal_double(obj0, &val1);
5052  if (!SWIG_IsOK(ecode1)) {
5053  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plaxes" "', argument " "1"" of type '" "PLFLT""'");
5054  }
5055  arg1 = (PLFLT)(val1);
5056  ecode2 = SWIG_AsVal_double(obj1, &val2);
5057  if (!SWIG_IsOK(ecode2)) {
5058  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plaxes" "', argument " "2"" of type '" "PLFLT""'");
5059  }
5060  arg2 = (PLFLT)(val2);
5061  res3 = SWIG_AsCharPtrAndSize(obj2, &buf3, NULL, &alloc3);
5062  if (!SWIG_IsOK(res3)) {
5063  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "plaxes" "', argument " "3"" of type '" "char const *""'");
5064  }
5065  arg3 = (char *)(buf3);
5066  ecode4 = SWIG_AsVal_double(obj3, &val4);
5067  if (!SWIG_IsOK(ecode4)) {
5068  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plaxes" "', argument " "4"" of type '" "PLFLT""'");
5069  }
5070  arg4 = (PLFLT)(val4);
5071  ecode5 = SWIG_AsVal_int(obj4, &val5);
5072  if (!SWIG_IsOK(ecode5)) {
5073  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plaxes" "', argument " "5"" of type '" "PLINT""'");
5074  }
5075  arg5 = (PLINT)(val5);
5076  res6 = SWIG_AsCharPtrAndSize(obj5, &buf6, NULL, &alloc6);
5077  if (!SWIG_IsOK(res6)) {
5078  SWIG_exception_fail(SWIG_ArgError(res6), "in method '" "plaxes" "', argument " "6"" of type '" "char const *""'");
5079  }
5080  arg6 = (char *)(buf6);
5081  ecode7 = SWIG_AsVal_double(obj6, &val7);
5082  if (!SWIG_IsOK(ecode7)) {
5083  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plaxes" "', argument " "7"" of type '" "PLFLT""'");
5084  }
5085  arg7 = (PLFLT)(val7);
5086  ecode8 = SWIG_AsVal_int(obj7, &val8);
5087  if (!SWIG_IsOK(ecode8)) {
5088  SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "plaxes" "', argument " "8"" of type '" "PLINT""'");
5089  }
5090  arg8 = (PLINT)(val8);
5091  plaxes(arg1,arg2,(char const *)arg3,arg4,arg5,(char const *)arg6,arg7,arg8);
5092  resultobj = SWIG_Py_Void();
5093  if (alloc3 == SWIG_NEWOBJ) free((char*)buf3);
5094  if (alloc6 == SWIG_NEWOBJ) free((char*)buf6);
5095  return resultobj;
5096 fail:
5097  if (alloc3 == SWIG_NEWOBJ) free((char*)buf3);
5098  if (alloc6 == SWIG_NEWOBJ) free((char*)buf6);
5099  return NULL;
5100 }
5101 
5102 
5103 SWIGINTERN PyObject *_wrap_plbin(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5104  PyObject *resultobj = 0;
5105  PLINT arg1 ;
5106  PLFLT *arg2 = (PLFLT *) 0 ;
5107  PLFLT *arg3 = (PLFLT *) 0 ;
5108  PLINT arg4 ;
5109  PyArrayObject *tmp1 = NULL ;
5110  PyArrayObject *tmp3 = NULL ;
5111  int val4 ;
5112  int ecode4 = 0 ;
5113  PyObject * obj0 = 0 ;
5114  PyObject * obj1 = 0 ;
5115  PyObject * obj2 = 0 ;
5116 
5117  if (!PyArg_ParseTuple(args,(char *)"OOO:plbin",&obj0,&obj1,&obj2)) SWIG_fail;
5118  {
5119  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
5120  if ( tmp1 == NULL )
5121  return NULL;
5122  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
5123  arg2 = (PLFLT *) PyArray_DATA( tmp1 );
5124  }
5125  {
5126  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
5127  if ( tmp3 == NULL )
5128  return NULL;
5129  if ( PyArray_DIMS( tmp3 )[0] != Alen )
5130  {
5131  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
5132  return NULL;
5133  }
5134  arg3 = (PLFLT *) PyArray_DATA( tmp3 );
5135  }
5136  ecode4 = SWIG_AsVal_int(obj2, &val4);
5137  if (!SWIG_IsOK(ecode4)) {
5138  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plbin" "', argument " "4"" of type '" "PLINT""'");
5139  }
5140  arg4 = (PLINT)(val4);
5141  plbin(arg1,(double const *)arg2,(double const *)arg3,arg4);
5142  resultobj = SWIG_Py_Void();
5143  {
5144  Py_CLEAR( tmp1 );
5145  }
5146  {
5147  Py_CLEAR( tmp3 );
5148  }
5149  return resultobj;
5150 fail:
5151  {
5152  Py_CLEAR( tmp1 );
5153  }
5154  {
5155  Py_CLEAR( tmp3 );
5156  }
5157  return NULL;
5158 }
5159 
5160 
5161 SWIGINTERN PyObject *_wrap_plbtime(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5162  PyObject *resultobj = 0;
5163  PLINT *arg1 = (PLINT *) 0 ;
5164  PLINT *arg2 = (PLINT *) 0 ;
5165  PLINT *arg3 = (PLINT *) 0 ;
5166  PLINT *arg4 = (PLINT *) 0 ;
5167  PLINT *arg5 = (PLINT *) 0 ;
5168  PLFLT *arg6 = (PLFLT *) 0 ;
5169  PLFLT arg7 ;
5170  PLINT temp1 ;
5171  int res1 = SWIG_TMPOBJ ;
5172  PLINT temp2 ;
5173  int res2 = SWIG_TMPOBJ ;
5174  PLINT temp3 ;
5175  int res3 = SWIG_TMPOBJ ;
5176  PLINT temp4 ;
5177  int res4 = SWIG_TMPOBJ ;
5178  PLINT temp5 ;
5179  int res5 = SWIG_TMPOBJ ;
5180  PLFLT temp6 ;
5181  int res6 = SWIG_TMPOBJ ;
5182  double val7 ;
5183  int ecode7 = 0 ;
5184  PyObject * obj0 = 0 ;
5185 
5186  arg1 = &temp1;
5187  arg2 = &temp2;
5188  arg3 = &temp3;
5189  arg4 = &temp4;
5190  arg5 = &temp5;
5191  arg6 = &temp6;
5192  if (!PyArg_ParseTuple(args,(char *)"O:plbtime",&obj0)) SWIG_fail;
5193  ecode7 = SWIG_AsVal_double(obj0, &val7);
5194  if (!SWIG_IsOK(ecode7)) {
5195  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plbtime" "', argument " "7"" of type '" "PLFLT""'");
5196  }
5197  arg7 = (PLFLT)(val7);
5198  plbtime(arg1,arg2,arg3,arg4,arg5,arg6,arg7);
5199  resultobj = SWIG_Py_Void();
5200  if (SWIG_IsTmpObj(res1)) {
5201  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg1)));
5202  } else {
5203  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
5204  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_int, new_flags));
5205  }
5206  if (SWIG_IsTmpObj(res2)) {
5207  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg2)));
5208  } else {
5209  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
5210  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_int, new_flags));
5211  }
5212  if (SWIG_IsTmpObj(res3)) {
5213  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg3)));
5214  } else {
5215  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
5216  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_int, new_flags));
5217  }
5218  if (SWIG_IsTmpObj(res4)) {
5219  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg4)));
5220  } else {
5221  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
5222  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_int, new_flags));
5223  }
5224  if (SWIG_IsTmpObj(res5)) {
5225  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg5)));
5226  } else {
5227  int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
5228  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_int, new_flags));
5229  }
5230  if (SWIG_IsTmpObj(res6)) {
5231  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg6)));
5232  } else {
5233  int new_flags = SWIG_IsNewObj(res6) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
5234  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg6), SWIGTYPE_p_double, new_flags));
5235  }
5236  return resultobj;
5237 fail:
5238  return NULL;
5239 }
5240 
5241 
5242 SWIGINTERN PyObject *_wrap_plbop(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5243  PyObject *resultobj = 0;
5244 
5245  if (!PyArg_ParseTuple(args,(char *)":plbop")) SWIG_fail;
5246  plbop();
5247  resultobj = SWIG_Py_Void();
5248  return resultobj;
5249 fail:
5250  return NULL;
5251 }
5252 
5253 
5254 SWIGINTERN PyObject *_wrap_plbox(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5255  PyObject *resultobj = 0;
5256  char *arg1 = (char *) 0 ;
5257  PLFLT arg2 ;
5258  PLINT arg3 ;
5259  char *arg4 = (char *) 0 ;
5260  PLFLT arg5 ;
5261  PLINT arg6 ;
5262  int res1 ;
5263  char *buf1 = 0 ;
5264  int alloc1 = 0 ;
5265  double val2 ;
5266  int ecode2 = 0 ;
5267  int val3 ;
5268  int ecode3 = 0 ;
5269  int res4 ;
5270  char *buf4 = 0 ;
5271  int alloc4 = 0 ;
5272  double val5 ;
5273  int ecode5 = 0 ;
5274  int val6 ;
5275  int ecode6 = 0 ;
5276  PyObject * obj0 = 0 ;
5277  PyObject * obj1 = 0 ;
5278  PyObject * obj2 = 0 ;
5279  PyObject * obj3 = 0 ;
5280  PyObject * obj4 = 0 ;
5281  PyObject * obj5 = 0 ;
5282 
5283  if (!PyArg_ParseTuple(args,(char *)"OOOOOO:plbox",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
5284  res1 = SWIG_AsCharPtrAndSize(obj0, &buf1, NULL, &alloc1);
5285  if (!SWIG_IsOK(res1)) {
5286  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "plbox" "', argument " "1"" of type '" "char const *""'");
5287  }
5288  arg1 = (char *)(buf1);
5289  ecode2 = SWIG_AsVal_double(obj1, &val2);
5290  if (!SWIG_IsOK(ecode2)) {
5291  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plbox" "', argument " "2"" of type '" "PLFLT""'");
5292  }
5293  arg2 = (PLFLT)(val2);
5294  ecode3 = SWIG_AsVal_int(obj2, &val3);
5295  if (!SWIG_IsOK(ecode3)) {
5296  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plbox" "', argument " "3"" of type '" "PLINT""'");
5297  }
5298  arg3 = (PLINT)(val3);
5299  res4 = SWIG_AsCharPtrAndSize(obj3, &buf4, NULL, &alloc4);
5300  if (!SWIG_IsOK(res4)) {
5301  SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "plbox" "', argument " "4"" of type '" "char const *""'");
5302  }
5303  arg4 = (char *)(buf4);
5304  ecode5 = SWIG_AsVal_double(obj4, &val5);
5305  if (!SWIG_IsOK(ecode5)) {
5306  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plbox" "', argument " "5"" of type '" "PLFLT""'");
5307  }
5308  arg5 = (PLFLT)(val5);
5309  ecode6 = SWIG_AsVal_int(obj5, &val6);
5310  if (!SWIG_IsOK(ecode6)) {
5311  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plbox" "', argument " "6"" of type '" "PLINT""'");
5312  }
5313  arg6 = (PLINT)(val6);
5314  plbox((char const *)arg1,arg2,arg3,(char const *)arg4,arg5,arg6);
5315  resultobj = SWIG_Py_Void();
5316  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
5317  if (alloc4 == SWIG_NEWOBJ) free((char*)buf4);
5318  return resultobj;
5319 fail:
5320  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
5321  if (alloc4 == SWIG_NEWOBJ) free((char*)buf4);
5322  return NULL;
5323 }
5324 
5325 
5326 SWIGINTERN PyObject *_wrap_plbox3(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5327  PyObject *resultobj = 0;
5328  char *arg1 = (char *) 0 ;
5329  char *arg2 = (char *) 0 ;
5330  PLFLT arg3 ;
5331  PLINT arg4 ;
5332  char *arg5 = (char *) 0 ;
5333  char *arg6 = (char *) 0 ;
5334  PLFLT arg7 ;
5335  PLINT arg8 ;
5336  char *arg9 = (char *) 0 ;
5337  char *arg10 = (char *) 0 ;
5338  PLFLT arg11 ;
5339  PLINT arg12 ;
5340  int res1 ;
5341  char *buf1 = 0 ;
5342  int alloc1 = 0 ;
5343  int res2 ;
5344  char *buf2 = 0 ;
5345  int alloc2 = 0 ;
5346  double val3 ;
5347  int ecode3 = 0 ;
5348  int val4 ;
5349  int ecode4 = 0 ;
5350  int res5 ;
5351  char *buf5 = 0 ;
5352  int alloc5 = 0 ;
5353  int res6 ;
5354  char *buf6 = 0 ;
5355  int alloc6 = 0 ;
5356  double val7 ;
5357  int ecode7 = 0 ;
5358  int val8 ;
5359  int ecode8 = 0 ;
5360  int res9 ;
5361  char *buf9 = 0 ;
5362  int alloc9 = 0 ;
5363  int res10 ;
5364  char *buf10 = 0 ;
5365  int alloc10 = 0 ;
5366  double val11 ;
5367  int ecode11 = 0 ;
5368  int val12 ;
5369  int ecode12 = 0 ;
5370  PyObject * obj0 = 0 ;
5371  PyObject * obj1 = 0 ;
5372  PyObject * obj2 = 0 ;
5373  PyObject * obj3 = 0 ;
5374  PyObject * obj4 = 0 ;
5375  PyObject * obj5 = 0 ;
5376  PyObject * obj6 = 0 ;
5377  PyObject * obj7 = 0 ;
5378  PyObject * obj8 = 0 ;
5379  PyObject * obj9 = 0 ;
5380  PyObject * obj10 = 0 ;
5381  PyObject * obj11 = 0 ;
5382 
5383  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOOOOOO:plbox3",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9,&obj10,&obj11)) SWIG_fail;
5384  res1 = SWIG_AsCharPtrAndSize(obj0, &buf1, NULL, &alloc1);
5385  if (!SWIG_IsOK(res1)) {
5386  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "plbox3" "', argument " "1"" of type '" "char const *""'");
5387  }
5388  arg1 = (char *)(buf1);
5389  res2 = SWIG_AsCharPtrAndSize(obj1, &buf2, NULL, &alloc2);
5390  if (!SWIG_IsOK(res2)) {
5391  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "plbox3" "', argument " "2"" of type '" "char const *""'");
5392  }
5393  arg2 = (char *)(buf2);
5394  ecode3 = SWIG_AsVal_double(obj2, &val3);
5395  if (!SWIG_IsOK(ecode3)) {
5396  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plbox3" "', argument " "3"" of type '" "PLFLT""'");
5397  }
5398  arg3 = (PLFLT)(val3);
5399  ecode4 = SWIG_AsVal_int(obj3, &val4);
5400  if (!SWIG_IsOK(ecode4)) {
5401  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plbox3" "', argument " "4"" of type '" "PLINT""'");
5402  }
5403  arg4 = (PLINT)(val4);
5404  res5 = SWIG_AsCharPtrAndSize(obj4, &buf5, NULL, &alloc5);
5405  if (!SWIG_IsOK(res5)) {
5406  SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "plbox3" "', argument " "5"" of type '" "char const *""'");
5407  }
5408  arg5 = (char *)(buf5);
5409  res6 = SWIG_AsCharPtrAndSize(obj5, &buf6, NULL, &alloc6);
5410  if (!SWIG_IsOK(res6)) {
5411  SWIG_exception_fail(SWIG_ArgError(res6), "in method '" "plbox3" "', argument " "6"" of type '" "char const *""'");
5412  }
5413  arg6 = (char *)(buf6);
5414  ecode7 = SWIG_AsVal_double(obj6, &val7);
5415  if (!SWIG_IsOK(ecode7)) {
5416  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plbox3" "', argument " "7"" of type '" "PLFLT""'");
5417  }
5418  arg7 = (PLFLT)(val7);
5419  ecode8 = SWIG_AsVal_int(obj7, &val8);
5420  if (!SWIG_IsOK(ecode8)) {
5421  SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "plbox3" "', argument " "8"" of type '" "PLINT""'");
5422  }
5423  arg8 = (PLINT)(val8);
5424  res9 = SWIG_AsCharPtrAndSize(obj8, &buf9, NULL, &alloc9);
5425  if (!SWIG_IsOK(res9)) {
5426  SWIG_exception_fail(SWIG_ArgError(res9), "in method '" "plbox3" "', argument " "9"" of type '" "char const *""'");
5427  }
5428  arg9 = (char *)(buf9);
5429  res10 = SWIG_AsCharPtrAndSize(obj9, &buf10, NULL, &alloc10);
5430  if (!SWIG_IsOK(res10)) {
5431  SWIG_exception_fail(SWIG_ArgError(res10), "in method '" "plbox3" "', argument " "10"" of type '" "char const *""'");
5432  }
5433  arg10 = (char *)(buf10);
5434  ecode11 = SWIG_AsVal_double(obj10, &val11);
5435  if (!SWIG_IsOK(ecode11)) {
5436  SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "plbox3" "', argument " "11"" of type '" "PLFLT""'");
5437  }
5438  arg11 = (PLFLT)(val11);
5439  ecode12 = SWIG_AsVal_int(obj11, &val12);
5440  if (!SWIG_IsOK(ecode12)) {
5441  SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "plbox3" "', argument " "12"" of type '" "PLINT""'");
5442  }
5443  arg12 = (PLINT)(val12);
5444  plbox3((char const *)arg1,(char const *)arg2,arg3,arg4,(char const *)arg5,(char const *)arg6,arg7,arg8,(char const *)arg9,(char const *)arg10,arg11,arg12);
5445  resultobj = SWIG_Py_Void();
5446  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
5447  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
5448  if (alloc5 == SWIG_NEWOBJ) free((char*)buf5);
5449  if (alloc6 == SWIG_NEWOBJ) free((char*)buf6);
5450  if (alloc9 == SWIG_NEWOBJ) free((char*)buf9);
5451  if (alloc10 == SWIG_NEWOBJ) free((char*)buf10);
5452  return resultobj;
5453 fail:
5454  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
5455  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
5456  if (alloc5 == SWIG_NEWOBJ) free((char*)buf5);
5457  if (alloc6 == SWIG_NEWOBJ) free((char*)buf6);
5458  if (alloc9 == SWIG_NEWOBJ) free((char*)buf9);
5459  if (alloc10 == SWIG_NEWOBJ) free((char*)buf10);
5460  return NULL;
5461 }
5462 
5463 
5464 SWIGINTERN PyObject *_wrap_plcalc_world(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5465  PyObject *resultobj = 0;
5466  PLFLT arg1 ;
5467  PLFLT arg2 ;
5468  PLFLT *arg3 = (PLFLT *) 0 ;
5469  PLFLT *arg4 = (PLFLT *) 0 ;
5470  PLINT *arg5 = (PLINT *) 0 ;
5471  double val1 ;
5472  int ecode1 = 0 ;
5473  double val2 ;
5474  int ecode2 = 0 ;
5475  PLFLT temp3 ;
5476  int res3 = SWIG_TMPOBJ ;
5477  PLFLT temp4 ;
5478  int res4 = SWIG_TMPOBJ ;
5479  PLINT temp5 ;
5480  int res5 = SWIG_TMPOBJ ;
5481  PyObject * obj0 = 0 ;
5482  PyObject * obj1 = 0 ;
5483 
5484  arg3 = &temp3;
5485  arg4 = &temp4;
5486  arg5 = &temp5;
5487  if (!PyArg_ParseTuple(args,(char *)"OO:plcalc_world",&obj0,&obj1)) SWIG_fail;
5488  ecode1 = SWIG_AsVal_double(obj0, &val1);
5489  if (!SWIG_IsOK(ecode1)) {
5490  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plcalc_world" "', argument " "1"" of type '" "PLFLT""'");
5491  }
5492  arg1 = (PLFLT)(val1);
5493  ecode2 = SWIG_AsVal_double(obj1, &val2);
5494  if (!SWIG_IsOK(ecode2)) {
5495  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plcalc_world" "', argument " "2"" of type '" "PLFLT""'");
5496  }
5497  arg2 = (PLFLT)(val2);
5498  plcalc_world(arg1,arg2,arg3,arg4,arg5);
5499  resultobj = SWIG_Py_Void();
5500  if (SWIG_IsTmpObj(res3)) {
5501  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
5502  } else {
5503  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
5504  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
5505  }
5506  if (SWIG_IsTmpObj(res4)) {
5507  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg4)));
5508  } else {
5509  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
5510  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_double, new_flags));
5511  }
5512  if (SWIG_IsTmpObj(res5)) {
5513  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg5)));
5514  } else {
5515  int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
5516  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_int, new_flags));
5517  }
5518  return resultobj;
5519 fail:
5520  return NULL;
5521 }
5522 
5523 
5524 SWIGINTERN PyObject *_wrap_plclear(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5525  PyObject *resultobj = 0;
5526 
5527  if (!PyArg_ParseTuple(args,(char *)":plclear")) SWIG_fail;
5528  plclear();
5529  resultobj = SWIG_Py_Void();
5530  return resultobj;
5531 fail:
5532  return NULL;
5533 }
5534 
5535 
5536 SWIGINTERN PyObject *_wrap_plcol0(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5537  PyObject *resultobj = 0;
5538  PLINT arg1 ;
5539  int val1 ;
5540  int ecode1 = 0 ;
5541  PyObject * obj0 = 0 ;
5542 
5543  if (!PyArg_ParseTuple(args,(char *)"O:plcol0",&obj0)) SWIG_fail;
5544  ecode1 = SWIG_AsVal_int(obj0, &val1);
5545  if (!SWIG_IsOK(ecode1)) {
5546  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plcol0" "', argument " "1"" of type '" "PLINT""'");
5547  }
5548  arg1 = (PLINT)(val1);
5549  plcol0(arg1);
5550  resultobj = SWIG_Py_Void();
5551  return resultobj;
5552 fail:
5553  return NULL;
5554 }
5555 
5556 
5557 SWIGINTERN PyObject *_wrap_plcol1(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5558  PyObject *resultobj = 0;
5559  PLFLT arg1 ;
5560  double val1 ;
5561  int ecode1 = 0 ;
5562  PyObject * obj0 = 0 ;
5563 
5564  if (!PyArg_ParseTuple(args,(char *)"O:plcol1",&obj0)) SWIG_fail;
5565  ecode1 = SWIG_AsVal_double(obj0, &val1);
5566  if (!SWIG_IsOK(ecode1)) {
5567  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plcol1" "', argument " "1"" of type '" "PLFLT""'");
5568  }
5569  arg1 = (PLFLT)(val1);
5570  plcol1(arg1);
5571  resultobj = SWIG_Py_Void();
5572  return resultobj;
5573 fail:
5574  return NULL;
5575 }
5576 
5577 
5578 SWIGINTERN PyObject *_wrap_plconfigtime(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5579  PyObject *resultobj = 0;
5580  PLFLT arg1 ;
5581  PLFLT arg2 ;
5582  PLFLT arg3 ;
5583  PLINT arg4 ;
5584  PLBOOL arg5 ;
5585  PLINT arg6 ;
5586  PLINT arg7 ;
5587  PLINT arg8 ;
5588  PLINT arg9 ;
5589  PLINT arg10 ;
5590  PLFLT arg11 ;
5591  double val1 ;
5592  int ecode1 = 0 ;
5593  double val2 ;
5594  int ecode2 = 0 ;
5595  double val3 ;
5596  int ecode3 = 0 ;
5597  int val4 ;
5598  int ecode4 = 0 ;
5599  int val5 ;
5600  int ecode5 = 0 ;
5601  int val6 ;
5602  int ecode6 = 0 ;
5603  int val7 ;
5604  int ecode7 = 0 ;
5605  int val8 ;
5606  int ecode8 = 0 ;
5607  int val9 ;
5608  int ecode9 = 0 ;
5609  int val10 ;
5610  int ecode10 = 0 ;
5611  double val11 ;
5612  int ecode11 = 0 ;
5613  PyObject * obj0 = 0 ;
5614  PyObject * obj1 = 0 ;
5615  PyObject * obj2 = 0 ;
5616  PyObject * obj3 = 0 ;
5617  PyObject * obj4 = 0 ;
5618  PyObject * obj5 = 0 ;
5619  PyObject * obj6 = 0 ;
5620  PyObject * obj7 = 0 ;
5621  PyObject * obj8 = 0 ;
5622  PyObject * obj9 = 0 ;
5623  PyObject * obj10 = 0 ;
5624 
5625  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOOOOO:plconfigtime",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9,&obj10)) SWIG_fail;
5626  ecode1 = SWIG_AsVal_double(obj0, &val1);
5627  if (!SWIG_IsOK(ecode1)) {
5628  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plconfigtime" "', argument " "1"" of type '" "PLFLT""'");
5629  }
5630  arg1 = (PLFLT)(val1);
5631  ecode2 = SWIG_AsVal_double(obj1, &val2);
5632  if (!SWIG_IsOK(ecode2)) {
5633  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plconfigtime" "', argument " "2"" of type '" "PLFLT""'");
5634  }
5635  arg2 = (PLFLT)(val2);
5636  ecode3 = SWIG_AsVal_double(obj2, &val3);
5637  if (!SWIG_IsOK(ecode3)) {
5638  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plconfigtime" "', argument " "3"" of type '" "PLFLT""'");
5639  }
5640  arg3 = (PLFLT)(val3);
5641  ecode4 = SWIG_AsVal_int(obj3, &val4);
5642  if (!SWIG_IsOK(ecode4)) {
5643  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plconfigtime" "', argument " "4"" of type '" "PLINT""'");
5644  }
5645  arg4 = (PLINT)(val4);
5646  ecode5 = SWIG_AsVal_int(obj4, &val5);
5647  if (!SWIG_IsOK(ecode5)) {
5648  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plconfigtime" "', argument " "5"" of type '" "PLBOOL""'");
5649  }
5650  arg5 = (PLBOOL)(val5);
5651  ecode6 = SWIG_AsVal_int(obj5, &val6);
5652  if (!SWIG_IsOK(ecode6)) {
5653  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plconfigtime" "', argument " "6"" of type '" "PLINT""'");
5654  }
5655  arg6 = (PLINT)(val6);
5656  ecode7 = SWIG_AsVal_int(obj6, &val7);
5657  if (!SWIG_IsOK(ecode7)) {
5658  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plconfigtime" "', argument " "7"" of type '" "PLINT""'");
5659  }
5660  arg7 = (PLINT)(val7);
5661  ecode8 = SWIG_AsVal_int(obj7, &val8);
5662  if (!SWIG_IsOK(ecode8)) {
5663  SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "plconfigtime" "', argument " "8"" of type '" "PLINT""'");
5664  }
5665  arg8 = (PLINT)(val8);
5666  ecode9 = SWIG_AsVal_int(obj8, &val9);
5667  if (!SWIG_IsOK(ecode9)) {
5668  SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "plconfigtime" "', argument " "9"" of type '" "PLINT""'");
5669  }
5670  arg9 = (PLINT)(val9);
5671  ecode10 = SWIG_AsVal_int(obj9, &val10);
5672  if (!SWIG_IsOK(ecode10)) {
5673  SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "plconfigtime" "', argument " "10"" of type '" "PLINT""'");
5674  }
5675  arg10 = (PLINT)(val10);
5676  ecode11 = SWIG_AsVal_double(obj10, &val11);
5677  if (!SWIG_IsOK(ecode11)) {
5678  SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "plconfigtime" "', argument " "11"" of type '" "PLFLT""'");
5679  }
5680  arg11 = (PLFLT)(val11);
5681  plconfigtime(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11);
5682  resultobj = SWIG_Py_Void();
5683  return resultobj;
5684 fail:
5685  return NULL;
5686 }
5687 
5688 
5689 SWIGINTERN PyObject *_wrap_plcont(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5690  PyObject *resultobj = 0;
5691  PLFLT **arg1 = (PLFLT **) 0 ;
5692  PLINT arg2 ;
5693  PLINT arg3 ;
5694  PLINT arg4 ;
5695  PLINT arg5 ;
5696  PLINT arg6 ;
5697  PLINT arg7 ;
5698  PLFLT *arg8 = (PLFLT *) 0 ;
5699  PLINT arg9 ;
5700  pltr_func arg10 = (pltr_func) 0 ;
5701  PLPointer arg11 = (PLPointer) 0 ;
5702  PyArrayObject *tmp1 = NULL ;
5703  int val4 ;
5704  int ecode4 = 0 ;
5705  int val5 ;
5706  int ecode5 = 0 ;
5707  int val6 ;
5708  int ecode6 = 0 ;
5709  int val7 ;
5710  int ecode7 = 0 ;
5711  PyArrayObject *tmp8 = NULL ;
5712  PyObject * obj0 = 0 ;
5713  PyObject * obj1 = 0 ;
5714  PyObject * obj2 = 0 ;
5715  PyObject * obj3 = 0 ;
5716  PyObject * obj4 = 0 ;
5717  PyObject * obj5 = 0 ;
5718  PyObject * obj6 = 0 ;
5719  PyObject * obj7 = 0 ;
5720 
5721  {
5722  python_pltr = 0;
5723  arg10 = NULL;
5724  }
5725  {
5726  arg11 = NULL;
5727  }
5728  if (!PyArg_ParseTuple(args,(char *)"OOOOOO|OO:plcont",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
5729  {
5730  int i, size;
5731  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 2, 2 );
5732  if ( tmp1 == NULL )
5733  return NULL;
5734  Xlen = arg2 = PyArray_DIMS( tmp1 )[0];
5735  Ylen = arg3 = PyArray_DIMS( tmp1 )[1];
5736  size = arg3;
5737  arg1 = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) arg2 );
5738  for ( i = 0; i < arg2; i++ )
5739  arg1[i] = ( (PLFLT *) PyArray_DATA( tmp1 ) + i * size );
5740  }
5741  ecode4 = SWIG_AsVal_int(obj1, &val4);
5742  if (!SWIG_IsOK(ecode4)) {
5743  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plcont" "', argument " "4"" of type '" "PLINT""'");
5744  }
5745  arg4 = (PLINT)(val4);
5746  ecode5 = SWIG_AsVal_int(obj2, &val5);
5747  if (!SWIG_IsOK(ecode5)) {
5748  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plcont" "', argument " "5"" of type '" "PLINT""'");
5749  }
5750  arg5 = (PLINT)(val5);
5751  ecode6 = SWIG_AsVal_int(obj3, &val6);
5752  if (!SWIG_IsOK(ecode6)) {
5753  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plcont" "', argument " "6"" of type '" "PLINT""'");
5754  }
5755  arg6 = (PLINT)(val6);
5756  ecode7 = SWIG_AsVal_int(obj4, &val7);
5757  if (!SWIG_IsOK(ecode7)) {
5758  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plcont" "', argument " "7"" of type '" "PLINT""'");
5759  }
5760  arg7 = (PLINT)(val7);
5761  {
5762  tmp8 = (PyArrayObject *) myArray_ContiguousFromObject( obj5, NPY_PLFLT, 1, 1 );
5763  if ( tmp8 == NULL )
5764  return NULL;
5765  arg9 = PyArray_DIMS( tmp8 )[0];
5766  arg8 = (PLFLT *) PyArray_DATA( tmp8 );
5767  }
5768  if (obj6) {
5769  {
5770  // it must be a callable or None
5771  if ( obj6 == Py_None )
5772  {
5773  arg10 = NULL;
5774  }
5775  else
5776  {
5777  if ( !PyCallable_Check( (PyObject *) obj6 ) )
5778  {
5779  PyErr_SetString( PyExc_ValueError, "pltr argument must be callable" );
5780  return NULL;
5781  }
5782  arg10 = marshal_pltr( obj6 );
5783  }
5784  }
5785  }
5786  if (obj7) {
5787  {
5788  if ( obj7 == Py_None )
5789  arg11 = NULL;
5790  else
5791  {
5792  arg11 = marshal_PLPointer( obj7, 0 );
5793  }
5794  }
5795  }
5796  plcont((double const **)arg1,arg2,arg3,arg4,arg5,arg6,arg7,(double const *)arg8,arg9,arg10,arg11);
5797  resultobj = SWIG_Py_Void();
5798  {
5799  Py_CLEAR( tmp1 );
5800  free( arg1 );
5801  }
5802  {
5803  Py_CLEAR( tmp8 );
5804  }
5805  {
5806  cleanup_pltr();
5807  }
5808  {
5810  }
5811  return resultobj;
5812 fail:
5813  {
5814  Py_CLEAR( tmp1 );
5815  free( arg1 );
5816  }
5817  {
5818  Py_CLEAR( tmp8 );
5819  }
5820  {
5821  cleanup_pltr();
5822  }
5823  {
5825  }
5826  return NULL;
5827 }
5828 
5829 
5830 SWIGINTERN PyObject *_wrap_plctime(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5831  PyObject *resultobj = 0;
5832  PLINT arg1 ;
5833  PLINT arg2 ;
5834  PLINT arg3 ;
5835  PLINT arg4 ;
5836  PLINT arg5 ;
5837  PLFLT arg6 ;
5838  PLFLT *arg7 = (PLFLT *) 0 ;
5839  int val1 ;
5840  int ecode1 = 0 ;
5841  int val2 ;
5842  int ecode2 = 0 ;
5843  int val3 ;
5844  int ecode3 = 0 ;
5845  int val4 ;
5846  int ecode4 = 0 ;
5847  int val5 ;
5848  int ecode5 = 0 ;
5849  double val6 ;
5850  int ecode6 = 0 ;
5851  PLFLT temp7 ;
5852  int res7 = SWIG_TMPOBJ ;
5853  PyObject * obj0 = 0 ;
5854  PyObject * obj1 = 0 ;
5855  PyObject * obj2 = 0 ;
5856  PyObject * obj3 = 0 ;
5857  PyObject * obj4 = 0 ;
5858  PyObject * obj5 = 0 ;
5859 
5860  arg7 = &temp7;
5861  if (!PyArg_ParseTuple(args,(char *)"OOOOOO:plctime",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
5862  ecode1 = SWIG_AsVal_int(obj0, &val1);
5863  if (!SWIG_IsOK(ecode1)) {
5864  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plctime" "', argument " "1"" of type '" "PLINT""'");
5865  }
5866  arg1 = (PLINT)(val1);
5867  ecode2 = SWIG_AsVal_int(obj1, &val2);
5868  if (!SWIG_IsOK(ecode2)) {
5869  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plctime" "', argument " "2"" of type '" "PLINT""'");
5870  }
5871  arg2 = (PLINT)(val2);
5872  ecode3 = SWIG_AsVal_int(obj2, &val3);
5873  if (!SWIG_IsOK(ecode3)) {
5874  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plctime" "', argument " "3"" of type '" "PLINT""'");
5875  }
5876  arg3 = (PLINT)(val3);
5877  ecode4 = SWIG_AsVal_int(obj3, &val4);
5878  if (!SWIG_IsOK(ecode4)) {
5879  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plctime" "', argument " "4"" of type '" "PLINT""'");
5880  }
5881  arg4 = (PLINT)(val4);
5882  ecode5 = SWIG_AsVal_int(obj4, &val5);
5883  if (!SWIG_IsOK(ecode5)) {
5884  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plctime" "', argument " "5"" of type '" "PLINT""'");
5885  }
5886  arg5 = (PLINT)(val5);
5887  ecode6 = SWIG_AsVal_double(obj5, &val6);
5888  if (!SWIG_IsOK(ecode6)) {
5889  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plctime" "', argument " "6"" of type '" "PLFLT""'");
5890  }
5891  arg6 = (PLFLT)(val6);
5892  plctime(arg1,arg2,arg3,arg4,arg5,arg6,arg7);
5893  resultobj = SWIG_Py_Void();
5894  if (SWIG_IsTmpObj(res7)) {
5895  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg7)));
5896  } else {
5897  int new_flags = SWIG_IsNewObj(res7) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
5898  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg7), SWIGTYPE_p_double, new_flags));
5899  }
5900  return resultobj;
5901 fail:
5902  return NULL;
5903 }
5904 
5905 
5906 SWIGINTERN PyObject *_wrap_plcpstrm(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5907  PyObject *resultobj = 0;
5908  PLINT arg1 ;
5909  PLBOOL arg2 ;
5910  int val1 ;
5911  int ecode1 = 0 ;
5912  int val2 ;
5913  int ecode2 = 0 ;
5914  PyObject * obj0 = 0 ;
5915  PyObject * obj1 = 0 ;
5916 
5917  if (!PyArg_ParseTuple(args,(char *)"OO:plcpstrm",&obj0,&obj1)) SWIG_fail;
5918  ecode1 = SWIG_AsVal_int(obj0, &val1);
5919  if (!SWIG_IsOK(ecode1)) {
5920  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plcpstrm" "', argument " "1"" of type '" "PLINT""'");
5921  }
5922  arg1 = (PLINT)(val1);
5923  ecode2 = SWIG_AsVal_int(obj1, &val2);
5924  if (!SWIG_IsOK(ecode2)) {
5925  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plcpstrm" "', argument " "2"" of type '" "PLBOOL""'");
5926  }
5927  arg2 = (PLBOOL)(val2);
5928  plcpstrm(arg1,arg2);
5929  resultobj = SWIG_Py_Void();
5930  return resultobj;
5931 fail:
5932  return NULL;
5933 }
5934 
5935 
5936 SWIGINTERN PyObject *_wrap_plend(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5937  PyObject *resultobj = 0;
5938 
5939  if (!PyArg_ParseTuple(args,(char *)":plend")) SWIG_fail;
5940  plend();
5941  resultobj = SWIG_Py_Void();
5942  return resultobj;
5943 fail:
5944  return NULL;
5945 }
5946 
5947 
5948 SWIGINTERN PyObject *_wrap_plend1(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5949  PyObject *resultobj = 0;
5950 
5951  if (!PyArg_ParseTuple(args,(char *)":plend1")) SWIG_fail;
5952  plend1();
5953  resultobj = SWIG_Py_Void();
5954  return resultobj;
5955 fail:
5956  return NULL;
5957 }
5958 
5959 
5960 SWIGINTERN PyObject *_wrap_plenv(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
5961  PyObject *resultobj = 0;
5962  PLFLT arg1 ;
5963  PLFLT arg2 ;
5964  PLFLT arg3 ;
5965  PLFLT arg4 ;
5966  PLINT arg5 ;
5967  PLINT arg6 ;
5968  double val1 ;
5969  int ecode1 = 0 ;
5970  double val2 ;
5971  int ecode2 = 0 ;
5972  double val3 ;
5973  int ecode3 = 0 ;
5974  double val4 ;
5975  int ecode4 = 0 ;
5976  int val5 ;
5977  int ecode5 = 0 ;
5978  int val6 ;
5979  int ecode6 = 0 ;
5980  PyObject * obj0 = 0 ;
5981  PyObject * obj1 = 0 ;
5982  PyObject * obj2 = 0 ;
5983  PyObject * obj3 = 0 ;
5984  PyObject * obj4 = 0 ;
5985  PyObject * obj5 = 0 ;
5986 
5987  if (!PyArg_ParseTuple(args,(char *)"OOOOOO:plenv",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
5988  ecode1 = SWIG_AsVal_double(obj0, &val1);
5989  if (!SWIG_IsOK(ecode1)) {
5990  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plenv" "', argument " "1"" of type '" "PLFLT""'");
5991  }
5992  arg1 = (PLFLT)(val1);
5993  ecode2 = SWIG_AsVal_double(obj1, &val2);
5994  if (!SWIG_IsOK(ecode2)) {
5995  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plenv" "', argument " "2"" of type '" "PLFLT""'");
5996  }
5997  arg2 = (PLFLT)(val2);
5998  ecode3 = SWIG_AsVal_double(obj2, &val3);
5999  if (!SWIG_IsOK(ecode3)) {
6000  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plenv" "', argument " "3"" of type '" "PLFLT""'");
6001  }
6002  arg3 = (PLFLT)(val3);
6003  ecode4 = SWIG_AsVal_double(obj3, &val4);
6004  if (!SWIG_IsOK(ecode4)) {
6005  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plenv" "', argument " "4"" of type '" "PLFLT""'");
6006  }
6007  arg4 = (PLFLT)(val4);
6008  ecode5 = SWIG_AsVal_int(obj4, &val5);
6009  if (!SWIG_IsOK(ecode5)) {
6010  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plenv" "', argument " "5"" of type '" "PLINT""'");
6011  }
6012  arg5 = (PLINT)(val5);
6013  ecode6 = SWIG_AsVal_int(obj5, &val6);
6014  if (!SWIG_IsOK(ecode6)) {
6015  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plenv" "', argument " "6"" of type '" "PLINT""'");
6016  }
6017  arg6 = (PLINT)(val6);
6018  plenv(arg1,arg2,arg3,arg4,arg5,arg6);
6019  resultobj = SWIG_Py_Void();
6020  return resultobj;
6021 fail:
6022  return NULL;
6023 }
6024 
6025 
6026 SWIGINTERN PyObject *_wrap_plenv0(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6027  PyObject *resultobj = 0;
6028  PLFLT arg1 ;
6029  PLFLT arg2 ;
6030  PLFLT arg3 ;
6031  PLFLT arg4 ;
6032  PLINT arg5 ;
6033  PLINT arg6 ;
6034  double val1 ;
6035  int ecode1 = 0 ;
6036  double val2 ;
6037  int ecode2 = 0 ;
6038  double val3 ;
6039  int ecode3 = 0 ;
6040  double val4 ;
6041  int ecode4 = 0 ;
6042  int val5 ;
6043  int ecode5 = 0 ;
6044  int val6 ;
6045  int ecode6 = 0 ;
6046  PyObject * obj0 = 0 ;
6047  PyObject * obj1 = 0 ;
6048  PyObject * obj2 = 0 ;
6049  PyObject * obj3 = 0 ;
6050  PyObject * obj4 = 0 ;
6051  PyObject * obj5 = 0 ;
6052 
6053  if (!PyArg_ParseTuple(args,(char *)"OOOOOO:plenv0",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
6054  ecode1 = SWIG_AsVal_double(obj0, &val1);
6055  if (!SWIG_IsOK(ecode1)) {
6056  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plenv0" "', argument " "1"" of type '" "PLFLT""'");
6057  }
6058  arg1 = (PLFLT)(val1);
6059  ecode2 = SWIG_AsVal_double(obj1, &val2);
6060  if (!SWIG_IsOK(ecode2)) {
6061  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plenv0" "', argument " "2"" of type '" "PLFLT""'");
6062  }
6063  arg2 = (PLFLT)(val2);
6064  ecode3 = SWIG_AsVal_double(obj2, &val3);
6065  if (!SWIG_IsOK(ecode3)) {
6066  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plenv0" "', argument " "3"" of type '" "PLFLT""'");
6067  }
6068  arg3 = (PLFLT)(val3);
6069  ecode4 = SWIG_AsVal_double(obj3, &val4);
6070  if (!SWIG_IsOK(ecode4)) {
6071  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plenv0" "', argument " "4"" of type '" "PLFLT""'");
6072  }
6073  arg4 = (PLFLT)(val4);
6074  ecode5 = SWIG_AsVal_int(obj4, &val5);
6075  if (!SWIG_IsOK(ecode5)) {
6076  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plenv0" "', argument " "5"" of type '" "PLINT""'");
6077  }
6078  arg5 = (PLINT)(val5);
6079  ecode6 = SWIG_AsVal_int(obj5, &val6);
6080  if (!SWIG_IsOK(ecode6)) {
6081  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plenv0" "', argument " "6"" of type '" "PLINT""'");
6082  }
6083  arg6 = (PLINT)(val6);
6084  plenv0(arg1,arg2,arg3,arg4,arg5,arg6);
6085  resultobj = SWIG_Py_Void();
6086  return resultobj;
6087 fail:
6088  return NULL;
6089 }
6090 
6091 
6092 SWIGINTERN PyObject *_wrap_pleop(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6093  PyObject *resultobj = 0;
6094 
6095  if (!PyArg_ParseTuple(args,(char *)":pleop")) SWIG_fail;
6096  pleop();
6097  resultobj = SWIG_Py_Void();
6098  return resultobj;
6099 fail:
6100  return NULL;
6101 }
6102 
6103 
6104 SWIGINTERN PyObject *_wrap_plerrx(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6105  PyObject *resultobj = 0;
6106  PLINT arg1 ;
6107  PLFLT *arg2 = (PLFLT *) 0 ;
6108  PLFLT *arg3 = (PLFLT *) 0 ;
6109  PLFLT *arg4 = (PLFLT *) 0 ;
6110  PyArrayObject *tmp1 = NULL ;
6111  PyArrayObject *tmp3 = NULL ;
6112  PyArrayObject *tmp4 = NULL ;
6113  PyObject * obj0 = 0 ;
6114  PyObject * obj1 = 0 ;
6115  PyObject * obj2 = 0 ;
6116 
6117  if (!PyArg_ParseTuple(args,(char *)"OOO:plerrx",&obj0,&obj1,&obj2)) SWIG_fail;
6118  {
6119  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
6120  if ( tmp1 == NULL )
6121  return NULL;
6122  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
6123  arg2 = (PLFLT *) PyArray_DATA( tmp1 );
6124  }
6125  {
6126  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
6127  if ( tmp3 == NULL )
6128  return NULL;
6129  if ( PyArray_DIMS( tmp3 )[0] != Alen )
6130  {
6131  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
6132  return NULL;
6133  }
6134  arg3 = (PLFLT *) PyArray_DATA( tmp3 );
6135  }
6136  {
6137  tmp4 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 1, 1 );
6138  if ( tmp4 == NULL )
6139  return NULL;
6140  if ( PyArray_DIMS( tmp4 )[0] != Alen )
6141  {
6142  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
6143  return NULL;
6144  }
6145  arg4 = (PLFLT *) PyArray_DATA( tmp4 );
6146  }
6147  plerrx(arg1,(double const *)arg2,(double const *)arg3,(double const *)arg4);
6148  resultobj = SWIG_Py_Void();
6149  {
6150  Py_CLEAR( tmp1 );
6151  }
6152  {
6153  Py_CLEAR( tmp3 );
6154  }
6155  {
6156  Py_CLEAR( tmp4 );
6157  }
6158  return resultobj;
6159 fail:
6160  {
6161  Py_CLEAR( tmp1 );
6162  }
6163  {
6164  Py_CLEAR( tmp3 );
6165  }
6166  {
6167  Py_CLEAR( tmp4 );
6168  }
6169  return NULL;
6170 }
6171 
6172 
6173 SWIGINTERN PyObject *_wrap_plerry(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6174  PyObject *resultobj = 0;
6175  PLINT arg1 ;
6176  PLFLT *arg2 = (PLFLT *) 0 ;
6177  PLFLT *arg3 = (PLFLT *) 0 ;
6178  PLFLT *arg4 = (PLFLT *) 0 ;
6179  PyArrayObject *tmp1 = NULL ;
6180  PyArrayObject *tmp3 = NULL ;
6181  PyArrayObject *tmp4 = NULL ;
6182  PyObject * obj0 = 0 ;
6183  PyObject * obj1 = 0 ;
6184  PyObject * obj2 = 0 ;
6185 
6186  if (!PyArg_ParseTuple(args,(char *)"OOO:plerry",&obj0,&obj1,&obj2)) SWIG_fail;
6187  {
6188  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
6189  if ( tmp1 == NULL )
6190  return NULL;
6191  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
6192  arg2 = (PLFLT *) PyArray_DATA( tmp1 );
6193  }
6194  {
6195  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
6196  if ( tmp3 == NULL )
6197  return NULL;
6198  if ( PyArray_DIMS( tmp3 )[0] != Alen )
6199  {
6200  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
6201  return NULL;
6202  }
6203  arg3 = (PLFLT *) PyArray_DATA( tmp3 );
6204  }
6205  {
6206  tmp4 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 1, 1 );
6207  if ( tmp4 == NULL )
6208  return NULL;
6209  if ( PyArray_DIMS( tmp4 )[0] != Alen )
6210  {
6211  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
6212  return NULL;
6213  }
6214  arg4 = (PLFLT *) PyArray_DATA( tmp4 );
6215  }
6216  plerry(arg1,(double const *)arg2,(double const *)arg3,(double const *)arg4);
6217  resultobj = SWIG_Py_Void();
6218  {
6219  Py_CLEAR( tmp1 );
6220  }
6221  {
6222  Py_CLEAR( tmp3 );
6223  }
6224  {
6225  Py_CLEAR( tmp4 );
6226  }
6227  return resultobj;
6228 fail:
6229  {
6230  Py_CLEAR( tmp1 );
6231  }
6232  {
6233  Py_CLEAR( tmp3 );
6234  }
6235  {
6236  Py_CLEAR( tmp4 );
6237  }
6238  return NULL;
6239 }
6240 
6241 
6242 SWIGINTERN PyObject *_wrap_plfamadv(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6243  PyObject *resultobj = 0;
6244 
6245  if (!PyArg_ParseTuple(args,(char *)":plfamadv")) SWIG_fail;
6246  plfamadv();
6247  resultobj = SWIG_Py_Void();
6248  return resultobj;
6249 fail:
6250  return NULL;
6251 }
6252 
6253 
6254 SWIGINTERN PyObject *_wrap_plfill(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6255  PyObject *resultobj = 0;
6256  PLINT arg1 ;
6257  PLFLT *arg2 = (PLFLT *) 0 ;
6258  PLFLT *arg3 = (PLFLT *) 0 ;
6259  PyArrayObject *tmp1 = NULL ;
6260  PyArrayObject *tmp3 = NULL ;
6261  PyObject * obj0 = 0 ;
6262  PyObject * obj1 = 0 ;
6263 
6264  if (!PyArg_ParseTuple(args,(char *)"OO:plfill",&obj0,&obj1)) SWIG_fail;
6265  {
6266  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
6267  if ( tmp1 == NULL )
6268  return NULL;
6269  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
6270  arg2 = (PLFLT *) PyArray_DATA( tmp1 );
6271  }
6272  {
6273  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
6274  if ( tmp3 == NULL )
6275  return NULL;
6276  if ( PyArray_DIMS( tmp3 )[0] != Alen )
6277  {
6278  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
6279  return NULL;
6280  }
6281  arg3 = (PLFLT *) PyArray_DATA( tmp3 );
6282  }
6283  plfill(arg1,(double const *)arg2,(double const *)arg3);
6284  resultobj = SWIG_Py_Void();
6285  {
6286  Py_CLEAR( tmp1 );
6287  }
6288  {
6289  Py_CLEAR( tmp3 );
6290  }
6291  return resultobj;
6292 fail:
6293  {
6294  Py_CLEAR( tmp1 );
6295  }
6296  {
6297  Py_CLEAR( tmp3 );
6298  }
6299  return NULL;
6300 }
6301 
6302 
6303 SWIGINTERN PyObject *_wrap_plfill3(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6304  PyObject *resultobj = 0;
6305  PLINT arg1 ;
6306  PLFLT *arg2 = (PLFLT *) 0 ;
6307  PLFLT *arg3 = (PLFLT *) 0 ;
6308  PLFLT *arg4 = (PLFLT *) 0 ;
6309  PyArrayObject *tmp1 = NULL ;
6310  PyArrayObject *tmp3 = NULL ;
6311  PyArrayObject *tmp4 = NULL ;
6312  PyObject * obj0 = 0 ;
6313  PyObject * obj1 = 0 ;
6314  PyObject * obj2 = 0 ;
6315 
6316  if (!PyArg_ParseTuple(args,(char *)"OOO:plfill3",&obj0,&obj1,&obj2)) SWIG_fail;
6317  {
6318  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
6319  if ( tmp1 == NULL )
6320  return NULL;
6321  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
6322  arg2 = (PLFLT *) PyArray_DATA( tmp1 );
6323  }
6324  {
6325  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
6326  if ( tmp3 == NULL )
6327  return NULL;
6328  if ( PyArray_DIMS( tmp3 )[0] != Alen )
6329  {
6330  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
6331  return NULL;
6332  }
6333  arg3 = (PLFLT *) PyArray_DATA( tmp3 );
6334  }
6335  {
6336  tmp4 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 1, 1 );
6337  if ( tmp4 == NULL )
6338  return NULL;
6339  if ( PyArray_DIMS( tmp4 )[0] != Alen )
6340  {
6341  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
6342  return NULL;
6343  }
6344  arg4 = (PLFLT *) PyArray_DATA( tmp4 );
6345  }
6346  plfill3(arg1,(double const *)arg2,(double const *)arg3,(double const *)arg4);
6347  resultobj = SWIG_Py_Void();
6348  {
6349  Py_CLEAR( tmp1 );
6350  }
6351  {
6352  Py_CLEAR( tmp3 );
6353  }
6354  {
6355  Py_CLEAR( tmp4 );
6356  }
6357  return resultobj;
6358 fail:
6359  {
6360  Py_CLEAR( tmp1 );
6361  }
6362  {
6363  Py_CLEAR( tmp3 );
6364  }
6365  {
6366  Py_CLEAR( tmp4 );
6367  }
6368  return NULL;
6369 }
6370 
6371 
6372 SWIGINTERN PyObject *_wrap_plgradient(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6373  PyObject *resultobj = 0;
6374  PLINT arg1 ;
6375  PLFLT *arg2 = (PLFLT *) 0 ;
6376  PLFLT *arg3 = (PLFLT *) 0 ;
6377  PLFLT arg4 ;
6378  PyArrayObject *tmp1 = NULL ;
6379  PyArrayObject *tmp3 = NULL ;
6380  double val4 ;
6381  int ecode4 = 0 ;
6382  PyObject * obj0 = 0 ;
6383  PyObject * obj1 = 0 ;
6384  PyObject * obj2 = 0 ;
6385 
6386  if (!PyArg_ParseTuple(args,(char *)"OOO:plgradient",&obj0,&obj1,&obj2)) SWIG_fail;
6387  {
6388  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
6389  if ( tmp1 == NULL )
6390  return NULL;
6391  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
6392  arg2 = (PLFLT *) PyArray_DATA( tmp1 );
6393  }
6394  {
6395  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
6396  if ( tmp3 == NULL )
6397  return NULL;
6398  if ( PyArray_DIMS( tmp3 )[0] != Alen )
6399  {
6400  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
6401  return NULL;
6402  }
6403  arg3 = (PLFLT *) PyArray_DATA( tmp3 );
6404  }
6405  ecode4 = SWIG_AsVal_double(obj2, &val4);
6406  if (!SWIG_IsOK(ecode4)) {
6407  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plgradient" "', argument " "4"" of type '" "PLFLT""'");
6408  }
6409  arg4 = (PLFLT)(val4);
6410  plgradient(arg1,(double const *)arg2,(double const *)arg3,arg4);
6411  resultobj = SWIG_Py_Void();
6412  {
6413  Py_CLEAR( tmp1 );
6414  }
6415  {
6416  Py_CLEAR( tmp3 );
6417  }
6418  return resultobj;
6419 fail:
6420  {
6421  Py_CLEAR( tmp1 );
6422  }
6423  {
6424  Py_CLEAR( tmp3 );
6425  }
6426  return NULL;
6427 }
6428 
6429 
6430 SWIGINTERN PyObject *_wrap_plflush(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6431  PyObject *resultobj = 0;
6432 
6433  if (!PyArg_ParseTuple(args,(char *)":plflush")) SWIG_fail;
6434  plflush();
6435  resultobj = SWIG_Py_Void();
6436  return resultobj;
6437 fail:
6438  return NULL;
6439 }
6440 
6441 
6442 SWIGINTERN PyObject *_wrap_plfont(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6443  PyObject *resultobj = 0;
6444  PLINT arg1 ;
6445  int val1 ;
6446  int ecode1 = 0 ;
6447  PyObject * obj0 = 0 ;
6448 
6449  if (!PyArg_ParseTuple(args,(char *)"O:plfont",&obj0)) SWIG_fail;
6450  ecode1 = SWIG_AsVal_int(obj0, &val1);
6451  if (!SWIG_IsOK(ecode1)) {
6452  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plfont" "', argument " "1"" of type '" "PLINT""'");
6453  }
6454  arg1 = (PLINT)(val1);
6455  plfont(arg1);
6456  resultobj = SWIG_Py_Void();
6457  return resultobj;
6458 fail:
6459  return NULL;
6460 }
6461 
6462 
6463 SWIGINTERN PyObject *_wrap_plfontld(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6464  PyObject *resultobj = 0;
6465  PLINT arg1 ;
6466  int val1 ;
6467  int ecode1 = 0 ;
6468  PyObject * obj0 = 0 ;
6469 
6470  if (!PyArg_ParseTuple(args,(char *)"O:plfontld",&obj0)) SWIG_fail;
6471  ecode1 = SWIG_AsVal_int(obj0, &val1);
6472  if (!SWIG_IsOK(ecode1)) {
6473  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plfontld" "', argument " "1"" of type '" "PLINT""'");
6474  }
6475  arg1 = (PLINT)(val1);
6476  plfontld(arg1);
6477  resultobj = SWIG_Py_Void();
6478  return resultobj;
6479 fail:
6480  return NULL;
6481 }
6482 
6483 
6484 SWIGINTERN PyObject *_wrap_plgchr(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6485  PyObject *resultobj = 0;
6486  PLFLT *arg1 = (PLFLT *) 0 ;
6487  PLFLT *arg2 = (PLFLT *) 0 ;
6488  PLFLT temp1 ;
6489  int res1 = SWIG_TMPOBJ ;
6490  PLFLT temp2 ;
6491  int res2 = SWIG_TMPOBJ ;
6492 
6493  arg1 = &temp1;
6494  arg2 = &temp2;
6495  if (!PyArg_ParseTuple(args,(char *)":plgchr")) SWIG_fail;
6496  plgchr(arg1,arg2);
6497  resultobj = SWIG_Py_Void();
6498  if (SWIG_IsTmpObj(res1)) {
6499  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg1)));
6500  } else {
6501  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6502  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_double, new_flags));
6503  }
6504  if (SWIG_IsTmpObj(res2)) {
6505  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
6506  } else {
6507  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6508  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
6509  }
6510  return resultobj;
6511 fail:
6512  return NULL;
6513 }
6514 
6515 
6516 SWIGINTERN PyObject *_wrap_plgcol0(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6517  PyObject *resultobj = 0;
6518  PLINT arg1 ;
6519  PLINT *arg2 = (PLINT *) 0 ;
6520  PLINT *arg3 = (PLINT *) 0 ;
6521  PLINT *arg4 = (PLINT *) 0 ;
6522  int val1 ;
6523  int ecode1 = 0 ;
6524  PLINT temp2 ;
6525  int res2 = SWIG_TMPOBJ ;
6526  PLINT temp3 ;
6527  int res3 = SWIG_TMPOBJ ;
6528  PLINT temp4 ;
6529  int res4 = SWIG_TMPOBJ ;
6530  PyObject * obj0 = 0 ;
6531 
6532  arg2 = &temp2;
6533  arg3 = &temp3;
6534  arg4 = &temp4;
6535  if (!PyArg_ParseTuple(args,(char *)"O:plgcol0",&obj0)) SWIG_fail;
6536  ecode1 = SWIG_AsVal_int(obj0, &val1);
6537  if (!SWIG_IsOK(ecode1)) {
6538  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plgcol0" "', argument " "1"" of type '" "PLINT""'");
6539  }
6540  arg1 = (PLINT)(val1);
6541  plgcol0(arg1,arg2,arg3,arg4);
6542  resultobj = SWIG_Py_Void();
6543  if (SWIG_IsTmpObj(res2)) {
6544  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg2)));
6545  } else {
6546  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6547  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_int, new_flags));
6548  }
6549  if (SWIG_IsTmpObj(res3)) {
6550  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg3)));
6551  } else {
6552  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6553  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_int, new_flags));
6554  }
6555  if (SWIG_IsTmpObj(res4)) {
6556  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg4)));
6557  } else {
6558  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6559  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_int, new_flags));
6560  }
6561  return resultobj;
6562 fail:
6563  return NULL;
6564 }
6565 
6566 
6567 SWIGINTERN PyObject *_wrap_plgcol0a(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6568  PyObject *resultobj = 0;
6569  PLINT arg1 ;
6570  PLINT *arg2 = (PLINT *) 0 ;
6571  PLINT *arg3 = (PLINT *) 0 ;
6572  PLINT *arg4 = (PLINT *) 0 ;
6573  PLFLT *arg5 = (PLFLT *) 0 ;
6574  int val1 ;
6575  int ecode1 = 0 ;
6576  PLINT temp2 ;
6577  int res2 = SWIG_TMPOBJ ;
6578  PLINT temp3 ;
6579  int res3 = SWIG_TMPOBJ ;
6580  PLINT temp4 ;
6581  int res4 = SWIG_TMPOBJ ;
6582  PLFLT temp5 ;
6583  int res5 = SWIG_TMPOBJ ;
6584  PyObject * obj0 = 0 ;
6585 
6586  arg2 = &temp2;
6587  arg3 = &temp3;
6588  arg4 = &temp4;
6589  arg5 = &temp5;
6590  if (!PyArg_ParseTuple(args,(char *)"O:plgcol0a",&obj0)) SWIG_fail;
6591  ecode1 = SWIG_AsVal_int(obj0, &val1);
6592  if (!SWIG_IsOK(ecode1)) {
6593  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plgcol0a" "', argument " "1"" of type '" "PLINT""'");
6594  }
6595  arg1 = (PLINT)(val1);
6596  plgcol0a(arg1,arg2,arg3,arg4,arg5);
6597  resultobj = SWIG_Py_Void();
6598  if (SWIG_IsTmpObj(res2)) {
6599  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg2)));
6600  } else {
6601  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6602  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_int, new_flags));
6603  }
6604  if (SWIG_IsTmpObj(res3)) {
6605  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg3)));
6606  } else {
6607  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6608  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_int, new_flags));
6609  }
6610  if (SWIG_IsTmpObj(res4)) {
6611  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg4)));
6612  } else {
6613  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6614  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_int, new_flags));
6615  }
6616  if (SWIG_IsTmpObj(res5)) {
6617  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg5)));
6618  } else {
6619  int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6620  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_double, new_flags));
6621  }
6622  return resultobj;
6623 fail:
6624  return NULL;
6625 }
6626 
6627 
6628 SWIGINTERN PyObject *_wrap_plgcolbg(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6629  PyObject *resultobj = 0;
6630  PLINT *arg1 = (PLINT *) 0 ;
6631  PLINT *arg2 = (PLINT *) 0 ;
6632  PLINT *arg3 = (PLINT *) 0 ;
6633  PLINT temp1 ;
6634  int res1 = SWIG_TMPOBJ ;
6635  PLINT temp2 ;
6636  int res2 = SWIG_TMPOBJ ;
6637  PLINT temp3 ;
6638  int res3 = SWIG_TMPOBJ ;
6639 
6640  arg1 = &temp1;
6641  arg2 = &temp2;
6642  arg3 = &temp3;
6643  if (!PyArg_ParseTuple(args,(char *)":plgcolbg")) SWIG_fail;
6644  plgcolbg(arg1,arg2,arg3);
6645  resultobj = SWIG_Py_Void();
6646  if (SWIG_IsTmpObj(res1)) {
6647  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg1)));
6648  } else {
6649  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6650  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_int, new_flags));
6651  }
6652  if (SWIG_IsTmpObj(res2)) {
6653  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg2)));
6654  } else {
6655  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6656  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_int, new_flags));
6657  }
6658  if (SWIG_IsTmpObj(res3)) {
6659  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg3)));
6660  } else {
6661  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6662  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_int, new_flags));
6663  }
6664  return resultobj;
6665 fail:
6666  return NULL;
6667 }
6668 
6669 
6670 SWIGINTERN PyObject *_wrap_plgcolbga(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6671  PyObject *resultobj = 0;
6672  PLINT *arg1 = (PLINT *) 0 ;
6673  PLINT *arg2 = (PLINT *) 0 ;
6674  PLINT *arg3 = (PLINT *) 0 ;
6675  PLFLT *arg4 = (PLFLT *) 0 ;
6676  PLINT temp1 ;
6677  int res1 = SWIG_TMPOBJ ;
6678  PLINT temp2 ;
6679  int res2 = SWIG_TMPOBJ ;
6680  PLINT temp3 ;
6681  int res3 = SWIG_TMPOBJ ;
6682  PLFLT temp4 ;
6683  int res4 = SWIG_TMPOBJ ;
6684 
6685  arg1 = &temp1;
6686  arg2 = &temp2;
6687  arg3 = &temp3;
6688  arg4 = &temp4;
6689  if (!PyArg_ParseTuple(args,(char *)":plgcolbga")) SWIG_fail;
6690  plgcolbga(arg1,arg2,arg3,arg4);
6691  resultobj = SWIG_Py_Void();
6692  if (SWIG_IsTmpObj(res1)) {
6693  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg1)));
6694  } else {
6695  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6696  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_int, new_flags));
6697  }
6698  if (SWIG_IsTmpObj(res2)) {
6699  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg2)));
6700  } else {
6701  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6702  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_int, new_flags));
6703  }
6704  if (SWIG_IsTmpObj(res3)) {
6705  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg3)));
6706  } else {
6707  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6708  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_int, new_flags));
6709  }
6710  if (SWIG_IsTmpObj(res4)) {
6711  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg4)));
6712  } else {
6713  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6714  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_double, new_flags));
6715  }
6716  return resultobj;
6717 fail:
6718  return NULL;
6719 }
6720 
6721 
6722 SWIGINTERN PyObject *_wrap_plgcompression(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6723  PyObject *resultobj = 0;
6724  PLINT *arg1 = (PLINT *) 0 ;
6725  PLINT temp1 ;
6726  int res1 = SWIG_TMPOBJ ;
6727 
6728  arg1 = &temp1;
6729  if (!PyArg_ParseTuple(args,(char *)":plgcompression")) SWIG_fail;
6730  plgcompression(arg1);
6731  resultobj = SWIG_Py_Void();
6732  if (SWIG_IsTmpObj(res1)) {
6733  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg1)));
6734  } else {
6735  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6736  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_int, new_flags));
6737  }
6738  return resultobj;
6739 fail:
6740  return NULL;
6741 }
6742 
6743 
6744 SWIGINTERN PyObject *_wrap_plgdev(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6745  PyObject *resultobj = 0;
6746  char *arg1 = (char *) 0 ;
6747  char buff1[1000] ;
6748 
6749  {
6750  arg1 = buff1;
6751  }
6752  if (!PyArg_ParseTuple(args,(char *)":plgdev")) SWIG_fail;
6753  plgdev(arg1);
6754  resultobj = SWIG_Py_Void();
6755  {
6756  PyObject *o = PyString_FromString( arg1 );
6757  resultobj = t_output_helper( resultobj, o );
6758  }
6759  return resultobj;
6760 fail:
6761  return NULL;
6762 }
6763 
6764 
6765 SWIGINTERN PyObject *_wrap_plgdidev(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6766  PyObject *resultobj = 0;
6767  PLFLT *arg1 = (PLFLT *) 0 ;
6768  PLFLT *arg2 = (PLFLT *) 0 ;
6769  PLFLT *arg3 = (PLFLT *) 0 ;
6770  PLFLT *arg4 = (PLFLT *) 0 ;
6771  PLFLT temp1 ;
6772  int res1 = SWIG_TMPOBJ ;
6773  PLFLT temp2 ;
6774  int res2 = SWIG_TMPOBJ ;
6775  PLFLT temp3 ;
6776  int res3 = SWIG_TMPOBJ ;
6777  PLFLT temp4 ;
6778  int res4 = SWIG_TMPOBJ ;
6779 
6780  arg1 = &temp1;
6781  arg2 = &temp2;
6782  arg3 = &temp3;
6783  arg4 = &temp4;
6784  if (!PyArg_ParseTuple(args,(char *)":plgdidev")) SWIG_fail;
6785  plgdidev(arg1,arg2,arg3,arg4);
6786  resultobj = SWIG_Py_Void();
6787  if (SWIG_IsTmpObj(res1)) {
6788  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg1)));
6789  } else {
6790  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6791  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_double, new_flags));
6792  }
6793  if (SWIG_IsTmpObj(res2)) {
6794  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
6795  } else {
6796  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6797  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
6798  }
6799  if (SWIG_IsTmpObj(res3)) {
6800  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
6801  } else {
6802  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6803  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
6804  }
6805  if (SWIG_IsTmpObj(res4)) {
6806  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg4)));
6807  } else {
6808  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6809  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_double, new_flags));
6810  }
6811  return resultobj;
6812 fail:
6813  return NULL;
6814 }
6815 
6816 
6817 SWIGINTERN PyObject *_wrap_plgdiori(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6818  PyObject *resultobj = 0;
6819  PLFLT *arg1 = (PLFLT *) 0 ;
6820  PLFLT temp1 ;
6821  int res1 = SWIG_TMPOBJ ;
6822 
6823  arg1 = &temp1;
6824  if (!PyArg_ParseTuple(args,(char *)":plgdiori")) SWIG_fail;
6825  plgdiori(arg1);
6826  resultobj = SWIG_Py_Void();
6827  if (SWIG_IsTmpObj(res1)) {
6828  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg1)));
6829  } else {
6830  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6831  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_double, new_flags));
6832  }
6833  return resultobj;
6834 fail:
6835  return NULL;
6836 }
6837 
6838 
6839 SWIGINTERN PyObject *_wrap_plgdiplt(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6840  PyObject *resultobj = 0;
6841  PLFLT *arg1 = (PLFLT *) 0 ;
6842  PLFLT *arg2 = (PLFLT *) 0 ;
6843  PLFLT *arg3 = (PLFLT *) 0 ;
6844  PLFLT *arg4 = (PLFLT *) 0 ;
6845  PLFLT temp1 ;
6846  int res1 = SWIG_TMPOBJ ;
6847  PLFLT temp2 ;
6848  int res2 = SWIG_TMPOBJ ;
6849  PLFLT temp3 ;
6850  int res3 = SWIG_TMPOBJ ;
6851  PLFLT temp4 ;
6852  int res4 = SWIG_TMPOBJ ;
6853 
6854  arg1 = &temp1;
6855  arg2 = &temp2;
6856  arg3 = &temp3;
6857  arg4 = &temp4;
6858  if (!PyArg_ParseTuple(args,(char *)":plgdiplt")) SWIG_fail;
6859  plgdiplt(arg1,arg2,arg3,arg4);
6860  resultobj = SWIG_Py_Void();
6861  if (SWIG_IsTmpObj(res1)) {
6862  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg1)));
6863  } else {
6864  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6865  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_double, new_flags));
6866  }
6867  if (SWIG_IsTmpObj(res2)) {
6868  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
6869  } else {
6870  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6871  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
6872  }
6873  if (SWIG_IsTmpObj(res3)) {
6874  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
6875  } else {
6876  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6877  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
6878  }
6879  if (SWIG_IsTmpObj(res4)) {
6880  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg4)));
6881  } else {
6882  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6883  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_double, new_flags));
6884  }
6885  return resultobj;
6886 fail:
6887  return NULL;
6888 }
6889 
6890 
6891 SWIGINTERN PyObject *_wrap_plgfam(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6892  PyObject *resultobj = 0;
6893  PLINT *arg1 = (PLINT *) 0 ;
6894  PLINT *arg2 = (PLINT *) 0 ;
6895  PLINT *arg3 = (PLINT *) 0 ;
6896  PLINT temp1 ;
6897  int res1 = SWIG_TMPOBJ ;
6898  PLINT temp2 ;
6899  int res2 = SWIG_TMPOBJ ;
6900  PLINT temp3 ;
6901  int res3 = SWIG_TMPOBJ ;
6902 
6903  arg1 = &temp1;
6904  arg2 = &temp2;
6905  arg3 = &temp3;
6906  if (!PyArg_ParseTuple(args,(char *)":plgfam")) SWIG_fail;
6907  plgfam(arg1,arg2,arg3);
6908  resultobj = SWIG_Py_Void();
6909  if (SWIG_IsTmpObj(res1)) {
6910  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg1)));
6911  } else {
6912  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6913  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_int, new_flags));
6914  }
6915  if (SWIG_IsTmpObj(res2)) {
6916  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg2)));
6917  } else {
6918  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6919  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_int, new_flags));
6920  }
6921  if (SWIG_IsTmpObj(res3)) {
6922  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg3)));
6923  } else {
6924  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6925  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_int, new_flags));
6926  }
6927  return resultobj;
6928 fail:
6929  return NULL;
6930 }
6931 
6932 
6933 SWIGINTERN PyObject *_wrap_plgfci(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6934  PyObject *resultobj = 0;
6935  PLUNICODE *arg1 = (PLUNICODE *) 0 ;
6936  PLUNICODE temp1 ;
6937  int res1 = SWIG_TMPOBJ ;
6938 
6939  arg1 = &temp1;
6940  if (!PyArg_ParseTuple(args,(char *)":plgfci")) SWIG_fail;
6941  plgfci(arg1);
6942  resultobj = SWIG_Py_Void();
6943  if (SWIG_IsTmpObj(res1)) {
6944  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_unsigned_SS_int((*arg1)));
6945  } else {
6946  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6947  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_unsigned_int, new_flags));
6948  }
6949  return resultobj;
6950 fail:
6951  return NULL;
6952 }
6953 
6954 
6955 SWIGINTERN PyObject *_wrap_plgfnam(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6956  PyObject *resultobj = 0;
6957  char *arg1 = (char *) 0 ;
6958  char buff1[1000] ;
6959 
6960  {
6961  arg1 = buff1;
6962  }
6963  if (!PyArg_ParseTuple(args,(char *)":plgfnam")) SWIG_fail;
6964  plgfnam(arg1);
6965  resultobj = SWIG_Py_Void();
6966  {
6967  PyObject *o = PyString_FromString( arg1 );
6968  resultobj = t_output_helper( resultobj, o );
6969  }
6970  return resultobj;
6971 fail:
6972  return NULL;
6973 }
6974 
6975 
6976 SWIGINTERN PyObject *_wrap_plgfont(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
6977  PyObject *resultobj = 0;
6978  PLINT *arg1 = (PLINT *) 0 ;
6979  PLINT *arg2 = (PLINT *) 0 ;
6980  PLINT *arg3 = (PLINT *) 0 ;
6981  PLINT temp1 ;
6982  int res1 = SWIG_TMPOBJ ;
6983  PLINT temp2 ;
6984  int res2 = SWIG_TMPOBJ ;
6985  PLINT temp3 ;
6986  int res3 = SWIG_TMPOBJ ;
6987 
6988  arg1 = &temp1;
6989  arg2 = &temp2;
6990  arg3 = &temp3;
6991  if (!PyArg_ParseTuple(args,(char *)":plgfont")) SWIG_fail;
6992  plgfont(arg1,arg2,arg3);
6993  resultobj = SWIG_Py_Void();
6994  if (SWIG_IsTmpObj(res1)) {
6995  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg1)));
6996  } else {
6997  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
6998  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_int, new_flags));
6999  }
7000  if (SWIG_IsTmpObj(res2)) {
7001  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg2)));
7002  } else {
7003  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7004  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_int, new_flags));
7005  }
7006  if (SWIG_IsTmpObj(res3)) {
7007  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg3)));
7008  } else {
7009  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7010  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_int, new_flags));
7011  }
7012  return resultobj;
7013 fail:
7014  return NULL;
7015 }
7016 
7017 
7018 SWIGINTERN PyObject *_wrap_plglevel(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7019  PyObject *resultobj = 0;
7020  PLINT *arg1 = (PLINT *) 0 ;
7021  PLINT temp1 ;
7022  int res1 = SWIG_TMPOBJ ;
7023 
7024  arg1 = &temp1;
7025  if (!PyArg_ParseTuple(args,(char *)":plglevel")) SWIG_fail;
7026  plglevel(arg1);
7027  resultobj = SWIG_Py_Void();
7028  if (SWIG_IsTmpObj(res1)) {
7029  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg1)));
7030  } else {
7031  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7032  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_int, new_flags));
7033  }
7034  return resultobj;
7035 fail:
7036  return NULL;
7037 }
7038 
7039 
7040 SWIGINTERN PyObject *_wrap_plgpage(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7041  PyObject *resultobj = 0;
7042  PLFLT *arg1 = (PLFLT *) 0 ;
7043  PLFLT *arg2 = (PLFLT *) 0 ;
7044  PLINT *arg3 = (PLINT *) 0 ;
7045  PLINT *arg4 = (PLINT *) 0 ;
7046  PLINT *arg5 = (PLINT *) 0 ;
7047  PLINT *arg6 = (PLINT *) 0 ;
7048  PLFLT temp1 ;
7049  int res1 = SWIG_TMPOBJ ;
7050  PLFLT temp2 ;
7051  int res2 = SWIG_TMPOBJ ;
7052  PLINT temp3 ;
7053  int res3 = SWIG_TMPOBJ ;
7054  PLINT temp4 ;
7055  int res4 = SWIG_TMPOBJ ;
7056  PLINT temp5 ;
7057  int res5 = SWIG_TMPOBJ ;
7058  PLINT temp6 ;
7059  int res6 = SWIG_TMPOBJ ;
7060 
7061  arg1 = &temp1;
7062  arg2 = &temp2;
7063  arg3 = &temp3;
7064  arg4 = &temp4;
7065  arg5 = &temp5;
7066  arg6 = &temp6;
7067  if (!PyArg_ParseTuple(args,(char *)":plgpage")) SWIG_fail;
7068  plgpage(arg1,arg2,arg3,arg4,arg5,arg6);
7069  resultobj = SWIG_Py_Void();
7070  if (SWIG_IsTmpObj(res1)) {
7071  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg1)));
7072  } else {
7073  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7074  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_double, new_flags));
7075  }
7076  if (SWIG_IsTmpObj(res2)) {
7077  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
7078  } else {
7079  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7080  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
7081  }
7082  if (SWIG_IsTmpObj(res3)) {
7083  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg3)));
7084  } else {
7085  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7086  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_int, new_flags));
7087  }
7088  if (SWIG_IsTmpObj(res4)) {
7089  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg4)));
7090  } else {
7091  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7092  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_int, new_flags));
7093  }
7094  if (SWIG_IsTmpObj(res5)) {
7095  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg5)));
7096  } else {
7097  int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7098  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_int, new_flags));
7099  }
7100  if (SWIG_IsTmpObj(res6)) {
7101  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg6)));
7102  } else {
7103  int new_flags = SWIG_IsNewObj(res6) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7104  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg6), SWIGTYPE_p_int, new_flags));
7105  }
7106  return resultobj;
7107 fail:
7108  return NULL;
7109 }
7110 
7111 
7112 SWIGINTERN PyObject *_wrap_plgra(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7113  PyObject *resultobj = 0;
7114 
7115  if (!PyArg_ParseTuple(args,(char *)":plgra")) SWIG_fail;
7116  plgra();
7117  resultobj = SWIG_Py_Void();
7118  return resultobj;
7119 fail:
7120  return NULL;
7121 }
7122 
7123 
7124 SWIGINTERN PyObject *_wrap_plgriddata(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7125  PyObject *resultobj = 0;
7126  PLFLT *arg1 = (PLFLT *) 0 ;
7127  PLFLT *arg2 = (PLFLT *) 0 ;
7128  PLFLT *arg3 = (PLFLT *) 0 ;
7129  PLINT arg4 ;
7130  PLFLT *arg5 = (PLFLT *) 0 ;
7131  PLINT arg6 ;
7132  PLFLT *arg7 = (PLFLT *) 0 ;
7133  PLINT arg8 ;
7134  PLFLT **arg9 = (PLFLT **) 0 ;
7135  PLINT arg10 ;
7136  PLFLT arg11 ;
7137  PyArrayObject *tmp1 = NULL ;
7138  PyArrayObject *tmp2 = NULL ;
7139  PyArrayObject *tmp3 = NULL ;
7140  PyArrayObject *tmp5 = NULL ;
7141  PyArrayObject *tmp7 = NULL ;
7142  PyObject *array7 = NULL ;
7143  int val10 ;
7144  int ecode10 = 0 ;
7145  double val11 ;
7146  int ecode11 = 0 ;
7147  PyObject * obj0 = 0 ;
7148  PyObject * obj1 = 0 ;
7149  PyObject * obj2 = 0 ;
7150  PyObject * obj3 = 0 ;
7151  PyObject * obj4 = 0 ;
7152  PyObject * obj5 = 0 ;
7153  PyObject * obj6 = 0 ;
7154 
7155  if (!PyArg_ParseTuple(args,(char *)"OOOOOOO:plgriddata",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
7156  {
7157  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
7158  if ( tmp1 == NULL )
7159  return NULL;
7160  Alen = PyArray_DIMS( tmp1 )[0];
7161  arg1 = (PLFLT *) PyArray_DATA( tmp1 );
7162  }
7163  {
7164  tmp2 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
7165  if ( tmp2 == NULL )
7166  return NULL;
7167  if ( PyArray_DIMS( tmp2 )[0] != Alen )
7168  {
7169  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
7170  return NULL;
7171  }
7172  arg2 = (PLFLT *) PyArray_DATA( tmp2 );
7173  }
7174  {
7175  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 1, 1 );
7176  if ( tmp3 == NULL )
7177  return NULL;
7178  if ( PyArray_DIMS( tmp3 )[0] != Alen )
7179  {
7180  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
7181  return NULL;
7182  }
7183  arg3 = (PLFLT *) PyArray_DATA( tmp3 );
7184  arg4 = PyArray_DIMS( tmp3 )[0];
7185  }
7186  {
7187  tmp5 = (PyArrayObject *) myArray_ContiguousFromObject( obj3, NPY_PLFLT, 1, 1 );
7188  if ( tmp5 == NULL )
7189  return NULL;
7190  Xlen = PyArray_DIMS( tmp5 )[0];
7191  arg6 = Xlen;
7192  arg5 = (PLFLT *) PyArray_DATA( tmp5 );
7193  }
7194  {
7195  int i, size;
7196  npy_intp dims[2];
7197  tmp7 = (PyArrayObject *) myArray_ContiguousFromObject( obj4, NPY_PLFLT, 1, 1 );
7198  if ( tmp7 == NULL )
7199  return NULL;
7200  Ylen = PyArray_DIMS( tmp7 )[0];
7201  arg8 = Ylen;
7202  arg7 = (PLFLT *) PyArray_DATA( tmp7 );
7203  // Make created 2D array7 have dimensions from prior ArrayX in the argument
7204  // list and this ArrayY.
7205  dims[0] = Xlen;
7206  dims[1] = Ylen;
7207  array7 = PyArray_SimpleNew( 2, dims, NPY_PLFLT );
7208  if ( !array7 )
7209  return NULL;
7210  size = Ylen;
7211  arg9 = (PLFLT **) malloc( sizeof ( double * ) * (size_t) Xlen );
7212  for ( i = 0; i < Xlen; i++ )
7213  arg9[i] = ( (PLFLT *) PyArray_DATA( (PyArrayObject *) array7 ) + i * size );
7214  }
7215  ecode10 = SWIG_AsVal_int(obj5, &val10);
7216  if (!SWIG_IsOK(ecode10)) {
7217  SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "plgriddata" "', argument " "10"" of type '" "PLINT""'");
7218  }
7219  arg10 = (PLINT)(val10);
7220  ecode11 = SWIG_AsVal_double(obj6, &val11);
7221  if (!SWIG_IsOK(ecode11)) {
7222  SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "plgriddata" "', argument " "11"" of type '" "PLFLT""'");
7223  }
7224  arg11 = (PLFLT)(val11);
7225  plgriddata((double const *)arg1,(double const *)arg2,(double const *)arg3,arg4,(double const *)arg5,arg6,(double const *)arg7,arg8,arg9,arg10,arg11);
7226  resultobj = SWIG_Py_Void();
7227  {
7228  resultobj = SWIG_Python_AppendOutput( resultobj, array7 );
7229  }
7230  {
7231  Py_CLEAR( tmp1 );
7232  }
7233  {
7234  Py_CLEAR( tmp2 );
7235  }
7236  {
7237  Py_CLEAR( tmp3 );
7238  }
7239  {
7240  Py_CLEAR( tmp5 );
7241  }
7242  {
7243  Py_CLEAR( tmp7 );
7244  free( arg9 );
7245  }
7246  return resultobj;
7247 fail:
7248  {
7249  Py_CLEAR( tmp1 );
7250  }
7251  {
7252  Py_CLEAR( tmp2 );
7253  }
7254  {
7255  Py_CLEAR( tmp3 );
7256  }
7257  {
7258  Py_CLEAR( tmp5 );
7259  }
7260  {
7261  Py_CLEAR( tmp7 );
7262  free( arg9 );
7263  }
7264  return NULL;
7265 }
7266 
7267 
7268 SWIGINTERN PyObject *_wrap_plgspa(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7269  PyObject *resultobj = 0;
7270  PLFLT *arg1 = (PLFLT *) 0 ;
7271  PLFLT *arg2 = (PLFLT *) 0 ;
7272  PLFLT *arg3 = (PLFLT *) 0 ;
7273  PLFLT *arg4 = (PLFLT *) 0 ;
7274  PLFLT temp1 ;
7275  int res1 = SWIG_TMPOBJ ;
7276  PLFLT temp2 ;
7277  int res2 = SWIG_TMPOBJ ;
7278  PLFLT temp3 ;
7279  int res3 = SWIG_TMPOBJ ;
7280  PLFLT temp4 ;
7281  int res4 = SWIG_TMPOBJ ;
7282 
7283  arg1 = &temp1;
7284  arg2 = &temp2;
7285  arg3 = &temp3;
7286  arg4 = &temp4;
7287  if (!PyArg_ParseTuple(args,(char *)":plgspa")) SWIG_fail;
7288  plgspa(arg1,arg2,arg3,arg4);
7289  resultobj = SWIG_Py_Void();
7290  if (SWIG_IsTmpObj(res1)) {
7291  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg1)));
7292  } else {
7293  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7294  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_double, new_flags));
7295  }
7296  if (SWIG_IsTmpObj(res2)) {
7297  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
7298  } else {
7299  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7300  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
7301  }
7302  if (SWIG_IsTmpObj(res3)) {
7303  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
7304  } else {
7305  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7306  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
7307  }
7308  if (SWIG_IsTmpObj(res4)) {
7309  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg4)));
7310  } else {
7311  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7312  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_double, new_flags));
7313  }
7314  return resultobj;
7315 fail:
7316  return NULL;
7317 }
7318 
7319 
7320 SWIGINTERN PyObject *_wrap_plgstrm(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7321  PyObject *resultobj = 0;
7322  PLINT *arg1 = (PLINT *) 0 ;
7323  PLINT temp1 ;
7324  int res1 = SWIG_TMPOBJ ;
7325 
7326  arg1 = &temp1;
7327  if (!PyArg_ParseTuple(args,(char *)":plgstrm")) SWIG_fail;
7328  plgstrm(arg1);
7329  resultobj = SWIG_Py_Void();
7330  if (SWIG_IsTmpObj(res1)) {
7331  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg1)));
7332  } else {
7333  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7334  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_int, new_flags));
7335  }
7336  return resultobj;
7337 fail:
7338  return NULL;
7339 }
7340 
7341 
7342 SWIGINTERN PyObject *_wrap_plgver(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7343  PyObject *resultobj = 0;
7344  char *arg1 = (char *) 0 ;
7345  char buff1[1000] ;
7346 
7347  {
7348  arg1 = buff1;
7349  }
7350  if (!PyArg_ParseTuple(args,(char *)":plgver")) SWIG_fail;
7351  plgver(arg1);
7352  resultobj = SWIG_Py_Void();
7353  {
7354  PyObject *o = PyString_FromString( arg1 );
7355  resultobj = t_output_helper( resultobj, o );
7356  }
7357  return resultobj;
7358 fail:
7359  return NULL;
7360 }
7361 
7362 
7363 SWIGINTERN PyObject *_wrap_plgvpd(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7364  PyObject *resultobj = 0;
7365  PLFLT *arg1 = (PLFLT *) 0 ;
7366  PLFLT *arg2 = (PLFLT *) 0 ;
7367  PLFLT *arg3 = (PLFLT *) 0 ;
7368  PLFLT *arg4 = (PLFLT *) 0 ;
7369  PLFLT temp1 ;
7370  int res1 = SWIG_TMPOBJ ;
7371  PLFLT temp2 ;
7372  int res2 = SWIG_TMPOBJ ;
7373  PLFLT temp3 ;
7374  int res3 = SWIG_TMPOBJ ;
7375  PLFLT temp4 ;
7376  int res4 = SWIG_TMPOBJ ;
7377 
7378  arg1 = &temp1;
7379  arg2 = &temp2;
7380  arg3 = &temp3;
7381  arg4 = &temp4;
7382  if (!PyArg_ParseTuple(args,(char *)":plgvpd")) SWIG_fail;
7383  plgvpd(arg1,arg2,arg3,arg4);
7384  resultobj = SWIG_Py_Void();
7385  if (SWIG_IsTmpObj(res1)) {
7386  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg1)));
7387  } else {
7388  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7389  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_double, new_flags));
7390  }
7391  if (SWIG_IsTmpObj(res2)) {
7392  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
7393  } else {
7394  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7395  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
7396  }
7397  if (SWIG_IsTmpObj(res3)) {
7398  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
7399  } else {
7400  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7401  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
7402  }
7403  if (SWIG_IsTmpObj(res4)) {
7404  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg4)));
7405  } else {
7406  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7407  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_double, new_flags));
7408  }
7409  return resultobj;
7410 fail:
7411  return NULL;
7412 }
7413 
7414 
7415 SWIGINTERN PyObject *_wrap_plgvpw(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7416  PyObject *resultobj = 0;
7417  PLFLT *arg1 = (PLFLT *) 0 ;
7418  PLFLT *arg2 = (PLFLT *) 0 ;
7419  PLFLT *arg3 = (PLFLT *) 0 ;
7420  PLFLT *arg4 = (PLFLT *) 0 ;
7421  PLFLT temp1 ;
7422  int res1 = SWIG_TMPOBJ ;
7423  PLFLT temp2 ;
7424  int res2 = SWIG_TMPOBJ ;
7425  PLFLT temp3 ;
7426  int res3 = SWIG_TMPOBJ ;
7427  PLFLT temp4 ;
7428  int res4 = SWIG_TMPOBJ ;
7429 
7430  arg1 = &temp1;
7431  arg2 = &temp2;
7432  arg3 = &temp3;
7433  arg4 = &temp4;
7434  if (!PyArg_ParseTuple(args,(char *)":plgvpw")) SWIG_fail;
7435  plgvpw(arg1,arg2,arg3,arg4);
7436  resultobj = SWIG_Py_Void();
7437  if (SWIG_IsTmpObj(res1)) {
7438  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg1)));
7439  } else {
7440  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7441  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_double, new_flags));
7442  }
7443  if (SWIG_IsTmpObj(res2)) {
7444  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
7445  } else {
7446  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7447  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
7448  }
7449  if (SWIG_IsTmpObj(res3)) {
7450  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
7451  } else {
7452  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7453  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
7454  }
7455  if (SWIG_IsTmpObj(res4)) {
7456  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg4)));
7457  } else {
7458  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7459  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_double, new_flags));
7460  }
7461  return resultobj;
7462 fail:
7463  return NULL;
7464 }
7465 
7466 
7467 SWIGINTERN PyObject *_wrap_plgxax(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7468  PyObject *resultobj = 0;
7469  PLINT *arg1 = (PLINT *) 0 ;
7470  PLINT *arg2 = (PLINT *) 0 ;
7471  PLINT temp1 ;
7472  int res1 = SWIG_TMPOBJ ;
7473  PLINT temp2 ;
7474  int res2 = SWIG_TMPOBJ ;
7475 
7476  arg1 = &temp1;
7477  arg2 = &temp2;
7478  if (!PyArg_ParseTuple(args,(char *)":plgxax")) SWIG_fail;
7479  plgxax(arg1,arg2);
7480  resultobj = SWIG_Py_Void();
7481  if (SWIG_IsTmpObj(res1)) {
7482  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg1)));
7483  } else {
7484  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7485  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_int, new_flags));
7486  }
7487  if (SWIG_IsTmpObj(res2)) {
7488  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg2)));
7489  } else {
7490  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7491  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_int, new_flags));
7492  }
7493  return resultobj;
7494 fail:
7495  return NULL;
7496 }
7497 
7498 
7499 SWIGINTERN PyObject *_wrap_plgyax(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7500  PyObject *resultobj = 0;
7501  PLINT *arg1 = (PLINT *) 0 ;
7502  PLINT *arg2 = (PLINT *) 0 ;
7503  PLINT temp1 ;
7504  int res1 = SWIG_TMPOBJ ;
7505  PLINT temp2 ;
7506  int res2 = SWIG_TMPOBJ ;
7507 
7508  arg1 = &temp1;
7509  arg2 = &temp2;
7510  if (!PyArg_ParseTuple(args,(char *)":plgyax")) SWIG_fail;
7511  plgyax(arg1,arg2);
7512  resultobj = SWIG_Py_Void();
7513  if (SWIG_IsTmpObj(res1)) {
7514  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg1)));
7515  } else {
7516  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7517  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_int, new_flags));
7518  }
7519  if (SWIG_IsTmpObj(res2)) {
7520  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg2)));
7521  } else {
7522  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7523  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_int, new_flags));
7524  }
7525  return resultobj;
7526 fail:
7527  return NULL;
7528 }
7529 
7530 
7531 SWIGINTERN PyObject *_wrap_plgzax(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7532  PyObject *resultobj = 0;
7533  PLINT *arg1 = (PLINT *) 0 ;
7534  PLINT *arg2 = (PLINT *) 0 ;
7535  PLINT temp1 ;
7536  int res1 = SWIG_TMPOBJ ;
7537  PLINT temp2 ;
7538  int res2 = SWIG_TMPOBJ ;
7539 
7540  arg1 = &temp1;
7541  arg2 = &temp2;
7542  if (!PyArg_ParseTuple(args,(char *)":plgzax")) SWIG_fail;
7543  plgzax(arg1,arg2);
7544  resultobj = SWIG_Py_Void();
7545  if (SWIG_IsTmpObj(res1)) {
7546  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg1)));
7547  } else {
7548  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7549  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_int, new_flags));
7550  }
7551  if (SWIG_IsTmpObj(res2)) {
7552  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg2)));
7553  } else {
7554  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7555  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_int, new_flags));
7556  }
7557  return resultobj;
7558 fail:
7559  return NULL;
7560 }
7561 
7562 
7563 SWIGINTERN PyObject *_wrap_plhist(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7564  PyObject *resultobj = 0;
7565  PLINT arg1 ;
7566  PLFLT *arg2 = (PLFLT *) 0 ;
7567  PLFLT arg3 ;
7568  PLFLT arg4 ;
7569  PLINT arg5 ;
7570  PLINT arg6 ;
7571  PyArrayObject *tmp1 = NULL ;
7572  double val3 ;
7573  int ecode3 = 0 ;
7574  double val4 ;
7575  int ecode4 = 0 ;
7576  int val5 ;
7577  int ecode5 = 0 ;
7578  int val6 ;
7579  int ecode6 = 0 ;
7580  PyObject * obj0 = 0 ;
7581  PyObject * obj1 = 0 ;
7582  PyObject * obj2 = 0 ;
7583  PyObject * obj3 = 0 ;
7584  PyObject * obj4 = 0 ;
7585 
7586  if (!PyArg_ParseTuple(args,(char *)"OOOOO:plhist",&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
7587  {
7588  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
7589  if ( tmp1 == NULL )
7590  return NULL;
7591  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
7592  arg2 = (PLFLT *) PyArray_DATA( tmp1 );
7593  }
7594  ecode3 = SWIG_AsVal_double(obj1, &val3);
7595  if (!SWIG_IsOK(ecode3)) {
7596  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plhist" "', argument " "3"" of type '" "PLFLT""'");
7597  }
7598  arg3 = (PLFLT)(val3);
7599  ecode4 = SWIG_AsVal_double(obj2, &val4);
7600  if (!SWIG_IsOK(ecode4)) {
7601  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plhist" "', argument " "4"" of type '" "PLFLT""'");
7602  }
7603  arg4 = (PLFLT)(val4);
7604  ecode5 = SWIG_AsVal_int(obj3, &val5);
7605  if (!SWIG_IsOK(ecode5)) {
7606  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plhist" "', argument " "5"" of type '" "PLINT""'");
7607  }
7608  arg5 = (PLINT)(val5);
7609  ecode6 = SWIG_AsVal_int(obj4, &val6);
7610  if (!SWIG_IsOK(ecode6)) {
7611  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plhist" "', argument " "6"" of type '" "PLINT""'");
7612  }
7613  arg6 = (PLINT)(val6);
7614  plhist(arg1,(double const *)arg2,arg3,arg4,arg5,arg6);
7615  resultobj = SWIG_Py_Void();
7616  {
7617  Py_CLEAR( tmp1 );
7618  }
7619  return resultobj;
7620 fail:
7621  {
7622  Py_CLEAR( tmp1 );
7623  }
7624  return NULL;
7625 }
7626 
7627 
7628 SWIGINTERN PyObject *_wrap_plhlsrgb(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7629  PyObject *resultobj = 0;
7630  PLFLT arg1 ;
7631  PLFLT arg2 ;
7632  PLFLT arg3 ;
7633  PLFLT *arg4 = (PLFLT *) 0 ;
7634  PLFLT *arg5 = (PLFLT *) 0 ;
7635  PLFLT *arg6 = (PLFLT *) 0 ;
7636  double val1 ;
7637  int ecode1 = 0 ;
7638  double val2 ;
7639  int ecode2 = 0 ;
7640  double val3 ;
7641  int ecode3 = 0 ;
7642  PLFLT temp4 ;
7643  int res4 = SWIG_TMPOBJ ;
7644  PLFLT temp5 ;
7645  int res5 = SWIG_TMPOBJ ;
7646  PLFLT temp6 ;
7647  int res6 = SWIG_TMPOBJ ;
7648  PyObject * obj0 = 0 ;
7649  PyObject * obj1 = 0 ;
7650  PyObject * obj2 = 0 ;
7651 
7652  arg4 = &temp4;
7653  arg5 = &temp5;
7654  arg6 = &temp6;
7655  if (!PyArg_ParseTuple(args,(char *)"OOO:plhlsrgb",&obj0,&obj1,&obj2)) SWIG_fail;
7656  ecode1 = SWIG_AsVal_double(obj0, &val1);
7657  if (!SWIG_IsOK(ecode1)) {
7658  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plhlsrgb" "', argument " "1"" of type '" "PLFLT""'");
7659  }
7660  arg1 = (PLFLT)(val1);
7661  ecode2 = SWIG_AsVal_double(obj1, &val2);
7662  if (!SWIG_IsOK(ecode2)) {
7663  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plhlsrgb" "', argument " "2"" of type '" "PLFLT""'");
7664  }
7665  arg2 = (PLFLT)(val2);
7666  ecode3 = SWIG_AsVal_double(obj2, &val3);
7667  if (!SWIG_IsOK(ecode3)) {
7668  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plhlsrgb" "', argument " "3"" of type '" "PLFLT""'");
7669  }
7670  arg3 = (PLFLT)(val3);
7671  plhlsrgb(arg1,arg2,arg3,arg4,arg5,arg6);
7672  resultobj = SWIG_Py_Void();
7673  if (SWIG_IsTmpObj(res4)) {
7674  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg4)));
7675  } else {
7676  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7677  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_double, new_flags));
7678  }
7679  if (SWIG_IsTmpObj(res5)) {
7680  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg5)));
7681  } else {
7682  int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7683  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_double, new_flags));
7684  }
7685  if (SWIG_IsTmpObj(res6)) {
7686  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg6)));
7687  } else {
7688  int new_flags = SWIG_IsNewObj(res6) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7689  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg6), SWIGTYPE_p_double, new_flags));
7690  }
7691  return resultobj;
7692 fail:
7693  return NULL;
7694 }
7695 
7696 
7697 SWIGINTERN PyObject *_wrap_plinit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7698  PyObject *resultobj = 0;
7699 
7700  if (!PyArg_ParseTuple(args,(char *)":plinit")) SWIG_fail;
7701  plinit();
7702  resultobj = SWIG_Py_Void();
7703  return resultobj;
7704 fail:
7705  return NULL;
7706 }
7707 
7708 
7709 SWIGINTERN PyObject *_wrap_pljoin(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7710  PyObject *resultobj = 0;
7711  PLFLT arg1 ;
7712  PLFLT arg2 ;
7713  PLFLT arg3 ;
7714  PLFLT arg4 ;
7715  double val1 ;
7716  int ecode1 = 0 ;
7717  double val2 ;
7718  int ecode2 = 0 ;
7719  double val3 ;
7720  int ecode3 = 0 ;
7721  double val4 ;
7722  int ecode4 = 0 ;
7723  PyObject * obj0 = 0 ;
7724  PyObject * obj1 = 0 ;
7725  PyObject * obj2 = 0 ;
7726  PyObject * obj3 = 0 ;
7727 
7728  if (!PyArg_ParseTuple(args,(char *)"OOOO:pljoin",&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
7729  ecode1 = SWIG_AsVal_double(obj0, &val1);
7730  if (!SWIG_IsOK(ecode1)) {
7731  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "pljoin" "', argument " "1"" of type '" "PLFLT""'");
7732  }
7733  arg1 = (PLFLT)(val1);
7734  ecode2 = SWIG_AsVal_double(obj1, &val2);
7735  if (!SWIG_IsOK(ecode2)) {
7736  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "pljoin" "', argument " "2"" of type '" "PLFLT""'");
7737  }
7738  arg2 = (PLFLT)(val2);
7739  ecode3 = SWIG_AsVal_double(obj2, &val3);
7740  if (!SWIG_IsOK(ecode3)) {
7741  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "pljoin" "', argument " "3"" of type '" "PLFLT""'");
7742  }
7743  arg3 = (PLFLT)(val3);
7744  ecode4 = SWIG_AsVal_double(obj3, &val4);
7745  if (!SWIG_IsOK(ecode4)) {
7746  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "pljoin" "', argument " "4"" of type '" "PLFLT""'");
7747  }
7748  arg4 = (PLFLT)(val4);
7749  pljoin(arg1,arg2,arg3,arg4);
7750  resultobj = SWIG_Py_Void();
7751  return resultobj;
7752 fail:
7753  return NULL;
7754 }
7755 
7756 
7757 SWIGINTERN PyObject *_wrap_pllab(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7758  PyObject *resultobj = 0;
7759  char *arg1 = (char *) 0 ;
7760  char *arg2 = (char *) 0 ;
7761  char *arg3 = (char *) 0 ;
7762  int res1 ;
7763  char *buf1 = 0 ;
7764  int alloc1 = 0 ;
7765  int res2 ;
7766  char *buf2 = 0 ;
7767  int alloc2 = 0 ;
7768  int res3 ;
7769  char *buf3 = 0 ;
7770  int alloc3 = 0 ;
7771  PyObject * obj0 = 0 ;
7772  PyObject * obj1 = 0 ;
7773  PyObject * obj2 = 0 ;
7774 
7775  if (!PyArg_ParseTuple(args,(char *)"OOO:pllab",&obj0,&obj1,&obj2)) SWIG_fail;
7776  res1 = SWIG_AsCharPtrAndSize(obj0, &buf1, NULL, &alloc1);
7777  if (!SWIG_IsOK(res1)) {
7778  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "pllab" "', argument " "1"" of type '" "char const *""'");
7779  }
7780  arg1 = (char *)(buf1);
7781  res2 = SWIG_AsCharPtrAndSize(obj1, &buf2, NULL, &alloc2);
7782  if (!SWIG_IsOK(res2)) {
7783  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "pllab" "', argument " "2"" of type '" "char const *""'");
7784  }
7785  arg2 = (char *)(buf2);
7786  res3 = SWIG_AsCharPtrAndSize(obj2, &buf3, NULL, &alloc3);
7787  if (!SWIG_IsOK(res3)) {
7788  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "pllab" "', argument " "3"" of type '" "char const *""'");
7789  }
7790  arg3 = (char *)(buf3);
7791  pllab((char const *)arg1,(char const *)arg2,(char const *)arg3);
7792  resultobj = SWIG_Py_Void();
7793  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
7794  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
7795  if (alloc3 == SWIG_NEWOBJ) free((char*)buf3);
7796  return resultobj;
7797 fail:
7798  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
7799  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
7800  if (alloc3 == SWIG_NEWOBJ) free((char*)buf3);
7801  return NULL;
7802 }
7803 
7804 
7805 SWIGINTERN PyObject *_wrap_pllegend(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
7806  PyObject *resultobj = 0;
7807  PLFLT *arg1 = (PLFLT *) 0 ;
7808  PLFLT *arg2 = (PLFLT *) 0 ;
7809  PLINT arg3 ;
7810  PLINT arg4 ;
7811  PLFLT arg5 ;
7812  PLFLT arg6 ;
7813  PLFLT arg7 ;
7814  PLINT arg8 ;
7815  PLINT arg9 ;
7816  PLINT arg10 ;
7817  PLINT arg11 ;
7818  PLINT arg12 ;
7819  PLINT arg13 ;
7820  PLINT *arg14 = (PLINT *) 0 ;
7821  PLFLT arg15 ;
7822  PLFLT arg16 ;
7823  PLFLT arg17 ;
7824  PLFLT arg18 ;
7825  PLINT *arg19 = (PLINT *) 0 ;
7826  char **arg20 = (char **) 0 ;
7827  PLINT *arg21 = (PLINT *) 0 ;
7828  PLINT *arg22 = (PLINT *) 0 ;
7829  PLFLT *arg23 = (PLFLT *) 0 ;
7830  PLFLT *arg24 = (PLFLT *) 0 ;
7831  PLINT *arg25 = (PLINT *) 0 ;
7832  PLINT *arg26 = (PLINT *) 0 ;
7833  PLFLT *arg27 = (PLFLT *) 0 ;
7834  PLINT *arg28 = (PLINT *) 0 ;
7835  PLFLT *arg29 = (PLFLT *) 0 ;
7836  PLINT *arg30 = (PLINT *) 0 ;
7837  char **arg31 = (char **) 0 ;
7838  PLFLT temp1 ;
7839  int res1 = SWIG_TMPOBJ ;
7840  PLFLT temp2 ;
7841  int res2 = SWIG_TMPOBJ ;
7842  int val3 ;
7843  int ecode3 = 0 ;
7844  int val4 ;
7845  int ecode4 = 0 ;
7846  double val5 ;
7847  int ecode5 = 0 ;
7848  double val6 ;
7849  int ecode6 = 0 ;
7850  double val7 ;
7851  int ecode7 = 0 ;
7852  int val8 ;
7853  int ecode8 = 0 ;
7854  int val9 ;
7855  int ecode9 = 0 ;
7856  int val10 ;
7857  int ecode10 = 0 ;
7858  int val11 ;
7859  int ecode11 = 0 ;
7860  int val12 ;
7861  int ecode12 = 0 ;
7862  PyArrayObject *tmp13 = NULL ;
7863  double val15 ;
7864  int ecode15 = 0 ;
7865  double val16 ;
7866  int ecode16 = 0 ;
7867  double val17 ;
7868  int ecode17 = 0 ;
7869  double val18 ;
7870  int ecode18 = 0 ;
7871  PyArrayObject *tmp19 = NULL ;
7872  PyArrayObject *tmp20 = NULL ;
7873  PyArrayObject *tmp21 = NULL ;
7874  PyArrayObject *tmp22 = NULL ;
7875  PyArrayObject *tmp23 = NULL ;
7876  PyArrayObject *tmp24 = NULL ;
7877  PyArrayObject *tmp25 = NULL ;
7878  PyArrayObject *tmp26 = NULL ;
7879  PyArrayObject *tmp27 = NULL ;
7880  PyArrayObject *tmp28 = NULL ;
7881  PyArrayObject *tmp29 = NULL ;
7882  PyArrayObject *tmp30 = NULL ;
7883  PyArrayObject *tmp31 = NULL ;
7884  PyObject * obj0 = 0 ;
7885  PyObject * obj1 = 0 ;
7886  PyObject * obj2 = 0 ;
7887  PyObject * obj3 = 0 ;
7888  PyObject * obj4 = 0 ;
7889  PyObject * obj5 = 0 ;
7890  PyObject * obj6 = 0 ;
7891  PyObject * obj7 = 0 ;
7892  PyObject * obj8 = 0 ;
7893  PyObject * obj9 = 0 ;
7894  PyObject * obj10 = 0 ;
7895  PyObject * obj11 = 0 ;
7896  PyObject * obj12 = 0 ;
7897  PyObject * obj13 = 0 ;
7898  PyObject * obj14 = 0 ;
7899  PyObject * obj15 = 0 ;
7900  PyObject * obj16 = 0 ;
7901  PyObject * obj17 = 0 ;
7902  PyObject * obj18 = 0 ;
7903  PyObject * obj19 = 0 ;
7904  PyObject * obj20 = 0 ;
7905  PyObject * obj21 = 0 ;
7906  PyObject * obj22 = 0 ;
7907  PyObject * obj23 = 0 ;
7908  PyObject * obj24 = 0 ;
7909  PyObject * obj25 = 0 ;
7910  PyObject * obj26 = 0 ;
7911  PyObject * obj27 = 0 ;
7912 
7913  arg1 = &temp1;
7914  arg2 = &temp2;
7915  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOOOOOOOOOOOOOOOOOOOOOO:pllegend",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9,&obj10,&obj11,&obj12,&obj13,&obj14,&obj15,&obj16,&obj17,&obj18,&obj19,&obj20,&obj21,&obj22,&obj23,&obj24,&obj25,&obj26,&obj27)) SWIG_fail;
7916  ecode3 = SWIG_AsVal_int(obj0, &val3);
7917  if (!SWIG_IsOK(ecode3)) {
7918  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "pllegend" "', argument " "3"" of type '" "PLINT""'");
7919  }
7920  arg3 = (PLINT)(val3);
7921  ecode4 = SWIG_AsVal_int(obj1, &val4);
7922  if (!SWIG_IsOK(ecode4)) {
7923  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "pllegend" "', argument " "4"" of type '" "PLINT""'");
7924  }
7925  arg4 = (PLINT)(val4);
7926  ecode5 = SWIG_AsVal_double(obj2, &val5);
7927  if (!SWIG_IsOK(ecode5)) {
7928  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "pllegend" "', argument " "5"" of type '" "PLFLT""'");
7929  }
7930  arg5 = (PLFLT)(val5);
7931  ecode6 = SWIG_AsVal_double(obj3, &val6);
7932  if (!SWIG_IsOK(ecode6)) {
7933  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "pllegend" "', argument " "6"" of type '" "PLFLT""'");
7934  }
7935  arg6 = (PLFLT)(val6);
7936  ecode7 = SWIG_AsVal_double(obj4, &val7);
7937  if (!SWIG_IsOK(ecode7)) {
7938  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "pllegend" "', argument " "7"" of type '" "PLFLT""'");
7939  }
7940  arg7 = (PLFLT)(val7);
7941  ecode8 = SWIG_AsVal_int(obj5, &val8);
7942  if (!SWIG_IsOK(ecode8)) {
7943  SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "pllegend" "', argument " "8"" of type '" "PLINT""'");
7944  }
7945  arg8 = (PLINT)(val8);
7946  ecode9 = SWIG_AsVal_int(obj6, &val9);
7947  if (!SWIG_IsOK(ecode9)) {
7948  SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "pllegend" "', argument " "9"" of type '" "PLINT""'");
7949  }
7950  arg9 = (PLINT)(val9);
7951  ecode10 = SWIG_AsVal_int(obj7, &val10);
7952  if (!SWIG_IsOK(ecode10)) {
7953  SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "pllegend" "', argument " "10"" of type '" "PLINT""'");
7954  }
7955  arg10 = (PLINT)(val10);
7956  ecode11 = SWIG_AsVal_int(obj8, &val11);
7957  if (!SWIG_IsOK(ecode11)) {
7958  SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "pllegend" "', argument " "11"" of type '" "PLINT""'");
7959  }
7960  arg11 = (PLINT)(val11);
7961  ecode12 = SWIG_AsVal_int(obj9, &val12);
7962  if (!SWIG_IsOK(ecode12)) {
7963  SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "pllegend" "', argument " "12"" of type '" "PLINT""'");
7964  }
7965  arg12 = (PLINT)(val12);
7966  {
7967  tmp13 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj10, NPY_PLINT, 1, 1 );
7968  if ( tmp13 == NULL )
7969  return NULL;
7970  arg13 = Alen = PyArray_DIMS( tmp13 )[0];
7971  arg14 = (PLINT *) PyArray_DATA( tmp13 );
7972  }
7973  ecode15 = SWIG_AsVal_double(obj11, &val15);
7974  if (!SWIG_IsOK(ecode15)) {
7975  SWIG_exception_fail(SWIG_ArgError(ecode15), "in method '" "pllegend" "', argument " "15"" of type '" "PLFLT""'");
7976  }
7977  arg15 = (PLFLT)(val15);
7978  ecode16 = SWIG_AsVal_double(obj12, &val16);
7979  if (!SWIG_IsOK(ecode16)) {
7980  SWIG_exception_fail(SWIG_ArgError(ecode16), "in method '" "pllegend" "', argument " "16"" of type '" "PLFLT""'");
7981  }
7982  arg16 = (PLFLT)(val16);
7983  ecode17 = SWIG_AsVal_double(obj13, &val17);
7984  if (!SWIG_IsOK(ecode17)) {
7985  SWIG_exception_fail(SWIG_ArgError(ecode17), "in method '" "pllegend" "', argument " "17"" of type '" "PLFLT""'");
7986  }
7987  arg17 = (PLFLT)(val17);
7988  ecode18 = SWIG_AsVal_double(obj14, &val18);
7989  if (!SWIG_IsOK(ecode18)) {
7990  SWIG_exception_fail(SWIG_ArgError(ecode18), "in method '" "pllegend" "', argument " "18"" of type '" "PLFLT""'");
7991  }
7992  arg18 = (PLFLT)(val18);
7993  {
7994  tmp19 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj15, NPY_PLINT, 1, 1 );
7995  if ( tmp19 == NULL )
7996  return NULL;
7997  if ( PyArray_DIMS( tmp19 )[0] != Alen )
7998  {
7999  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8000  return NULL;
8001  }
8002  arg19 = (PLINT *) PyArray_DATA( tmp19 );
8003  }
8004  {
8005  int i;
8006  tmp20 = (PyArrayObject *) PyArray_ContiguousFromObject( obj16, NPY_STRING, 1, 1 );
8007  if ( tmp20 == NULL )
8008  return NULL;
8009  if ( PyArray_DIMS( tmp20 )[0] != Alen )
8010  {
8011  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8012  return NULL;
8013  }
8014  arg20 = (char **) malloc( sizeof ( char* ) * (size_t) Alen );
8015  for ( i = 0; i < Alen; i++ )
8016  {
8017  arg20[i] = (char *) PyArray_DATA( tmp20 ) + i * PyArray_STRIDES( tmp20 )[0];
8018  if ( arg20[i] == NULL )
8019  {
8020  free( arg20 );
8021  return NULL;
8022  }
8023  }
8024  }
8025  {
8026  tmp21 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj17, NPY_PLINT, 1, 1 );
8027  if ( tmp21 == NULL )
8028  return NULL;
8029  if ( PyArray_DIMS( tmp21 )[0] != Alen )
8030  {
8031  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8032  return NULL;
8033  }
8034  arg21 = (PLINT *) PyArray_DATA( tmp21 );
8035  }
8036  {
8037  tmp22 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj18, NPY_PLINT, 1, 1 );
8038  if ( tmp22 == NULL )
8039  return NULL;
8040  if ( PyArray_DIMS( tmp22 )[0] != Alen )
8041  {
8042  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8043  return NULL;
8044  }
8045  arg22 = (PLINT *) PyArray_DATA( tmp22 );
8046  }
8047  {
8048  if ( obj19 != Py_None )
8049  {
8050  tmp23 = (PyArrayObject *) myArray_ContiguousFromObject( obj19, NPY_PLFLT, 1, 1 );
8051  if ( tmp23 == NULL )
8052  return NULL;
8053  if ( PyArray_DIMS( tmp23 )[0] != Alen )
8054  {
8055  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8056  return NULL;
8057  }
8058  arg23 = (PLFLT *) PyArray_DATA( tmp23 );
8059  }
8060  else
8061  {
8062  arg23 = NULL;
8063  }
8064  }
8065  {
8066  if ( obj20 != Py_None )
8067  {
8068  tmp24 = (PyArrayObject *) myArray_ContiguousFromObject( obj20, NPY_PLFLT, 1, 1 );
8069  if ( tmp24 == NULL )
8070  return NULL;
8071  if ( PyArray_DIMS( tmp24 )[0] != Alen )
8072  {
8073  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8074  return NULL;
8075  }
8076  arg24 = (PLFLT *) PyArray_DATA( tmp24 );
8077  }
8078  else
8079  {
8080  arg24 = NULL;
8081  }
8082  }
8083  {
8084  tmp25 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj21, NPY_PLINT, 1, 1 );
8085  if ( tmp25 == NULL )
8086  return NULL;
8087  if ( PyArray_DIMS( tmp25 )[0] != Alen )
8088  {
8089  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8090  return NULL;
8091  }
8092  arg25 = (PLINT *) PyArray_DATA( tmp25 );
8093  }
8094  {
8095  tmp26 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj22, NPY_PLINT, 1, 1 );
8096  if ( tmp26 == NULL )
8097  return NULL;
8098  if ( PyArray_DIMS( tmp26 )[0] != Alen )
8099  {
8100  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8101  return NULL;
8102  }
8103  arg26 = (PLINT *) PyArray_DATA( tmp26 );
8104  }
8105  {
8106  if ( obj23 != Py_None )
8107  {
8108  tmp27 = (PyArrayObject *) myArray_ContiguousFromObject( obj23, NPY_PLFLT, 1, 1 );
8109  if ( tmp27 == NULL )
8110  return NULL;
8111  if ( PyArray_DIMS( tmp27 )[0] != Alen )
8112  {
8113  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8114  return NULL;
8115  }
8116  arg27 = (PLFLT *) PyArray_DATA( tmp27 );
8117  }
8118  else
8119  {
8120  arg27 = NULL;
8121  }
8122  }
8123  {
8124  tmp28 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj24, NPY_PLINT, 1, 1 );
8125  if ( tmp28 == NULL )
8126  return NULL;
8127  if ( PyArray_DIMS( tmp28 )[0] != Alen )
8128  {
8129  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8130  return NULL;
8131  }
8132  arg28 = (PLINT *) PyArray_DATA( tmp28 );
8133  }
8134  {
8135  if ( obj25 != Py_None )
8136  {
8137  tmp29 = (PyArrayObject *) myArray_ContiguousFromObject( obj25, NPY_PLFLT, 1, 1 );
8138  if ( tmp29 == NULL )
8139  return NULL;
8140  if ( PyArray_DIMS( tmp29 )[0] != Alen )
8141  {
8142  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8143  return NULL;
8144  }
8145  arg29 = (PLFLT *) PyArray_DATA( tmp29 );
8146  }
8147  else
8148  {
8149  arg29 = NULL;
8150  }
8151  }
8152  {
8153  tmp30 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj26, NPY_PLINT, 1, 1 );
8154  if ( tmp30 == NULL )
8155  return NULL;
8156  if ( PyArray_DIMS( tmp30 )[0] != Alen )
8157  {
8158  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8159  return NULL;
8160  }
8161  arg30 = (PLINT *) PyArray_DATA( tmp30 );
8162  }
8163  {
8164  int i;
8165  tmp31 = (PyArrayObject *) PyArray_ContiguousFromObject( obj27, NPY_STRING, 1, 1 );
8166  if ( tmp31 == NULL )
8167  return NULL;
8168  if ( PyArray_DIMS( tmp31 )[0] != Alen )
8169  {
8170  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8171  return NULL;
8172  }
8173  arg31 = (char **) malloc( sizeof ( char* ) * (size_t) Alen );
8174  for ( i = 0; i < Alen; i++ )
8175  {
8176  arg31[i] = (char *) PyArray_DATA( tmp31 ) + i * PyArray_STRIDES( tmp31 )[0];
8177  if ( arg31[i] == NULL )
8178  {
8179  free( arg31 );
8180  return NULL;
8181  }
8182  }
8183  }
8184  pllegend(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,(int const *)arg14,arg15,arg16,arg17,arg18,(int const *)arg19,(char const **)arg20,(int const *)arg21,(int const *)arg22,(double const *)arg23,(double const *)arg24,(int const *)arg25,(int const *)arg26,(double const *)arg27,(int const *)arg28,(double const *)arg29,(int const *)arg30,(char const **)arg31);
8185  resultobj = SWIG_Py_Void();
8186  if (SWIG_IsTmpObj(res1)) {
8187  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg1)));
8188  } else {
8189  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
8190  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_double, new_flags));
8191  }
8192  if (SWIG_IsTmpObj(res2)) {
8193  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
8194  } else {
8195  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
8196  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
8197  }
8198  {
8199  Py_CLEAR( tmp13 );
8200  }
8201  {
8202  Py_CLEAR( tmp19 );
8203  }
8204  {
8205  Py_CLEAR( tmp20 ); free( arg20 );
8206  }
8207  {
8208  Py_CLEAR( tmp21 );
8209  }
8210  {
8211  Py_CLEAR( tmp22 );
8212  }
8213  {
8214  Py_CLEAR( tmp23 );
8215  }
8216  {
8217  Py_CLEAR( tmp24 );
8218  }
8219  {
8220  Py_CLEAR( tmp25 );
8221  }
8222  {
8223  Py_CLEAR( tmp26 );
8224  }
8225  {
8226  Py_CLEAR( tmp27 );
8227  }
8228  {
8229  Py_CLEAR( tmp28 );
8230  }
8231  {
8232  Py_CLEAR( tmp29 );
8233  }
8234  {
8235  Py_CLEAR( tmp30 );
8236  }
8237  {
8238  Py_CLEAR( tmp31 ); free( arg31 );
8239  }
8240  return resultobj;
8241 fail:
8242  {
8243  Py_CLEAR( tmp13 );
8244  }
8245  {
8246  Py_CLEAR( tmp19 );
8247  }
8248  {
8249  Py_CLEAR( tmp20 ); free( arg20 );
8250  }
8251  {
8252  Py_CLEAR( tmp21 );
8253  }
8254  {
8255  Py_CLEAR( tmp22 );
8256  }
8257  {
8258  Py_CLEAR( tmp23 );
8259  }
8260  {
8261  Py_CLEAR( tmp24 );
8262  }
8263  {
8264  Py_CLEAR( tmp25 );
8265  }
8266  {
8267  Py_CLEAR( tmp26 );
8268  }
8269  {
8270  Py_CLEAR( tmp27 );
8271  }
8272  {
8273  Py_CLEAR( tmp28 );
8274  }
8275  {
8276  Py_CLEAR( tmp29 );
8277  }
8278  {
8279  Py_CLEAR( tmp30 );
8280  }
8281  {
8282  Py_CLEAR( tmp31 ); free( arg31 );
8283  }
8284  return NULL;
8285 }
8286 
8287 
8288 SWIGINTERN PyObject *_wrap_plcolorbar(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
8289  PyObject *resultobj = 0;
8290  PLFLT *arg1 = (PLFLT *) 0 ;
8291  PLFLT *arg2 = (PLFLT *) 0 ;
8292  PLINT arg3 ;
8293  PLINT arg4 ;
8294  PLFLT arg5 ;
8295  PLFLT arg6 ;
8296  PLFLT arg7 ;
8297  PLFLT arg8 ;
8298  PLINT arg9 ;
8299  PLINT arg10 ;
8300  PLINT arg11 ;
8301  PLFLT arg12 ;
8302  PLFLT arg13 ;
8303  PLINT arg14 ;
8304  PLFLT arg15 ;
8305  PLINT arg16 ;
8306  PLINT *arg17 = (PLINT *) 0 ;
8307  char **arg18 = (char **) 0 ;
8308  PLINT arg19 ;
8309  char **arg20 = (char **) 0 ;
8310  PLFLT *arg21 = (PLFLT *) 0 ;
8311  PLINT *arg22 = (PLINT *) 0 ;
8312  PLINT *arg23 = (PLINT *) 0 ;
8313  PLFLT **arg24 = (PLFLT **) 0 ;
8314  PLFLT temp1 ;
8315  int res1 = SWIG_TMPOBJ ;
8316  PLFLT temp2 ;
8317  int res2 = SWIG_TMPOBJ ;
8318  int val3 ;
8319  int ecode3 = 0 ;
8320  int val4 ;
8321  int ecode4 = 0 ;
8322  double val5 ;
8323  int ecode5 = 0 ;
8324  double val6 ;
8325  int ecode6 = 0 ;
8326  double val7 ;
8327  int ecode7 = 0 ;
8328  double val8 ;
8329  int ecode8 = 0 ;
8330  int val9 ;
8331  int ecode9 = 0 ;
8332  int val10 ;
8333  int ecode10 = 0 ;
8334  int val11 ;
8335  int ecode11 = 0 ;
8336  double val12 ;
8337  int ecode12 = 0 ;
8338  double val13 ;
8339  int ecode13 = 0 ;
8340  int val14 ;
8341  int ecode14 = 0 ;
8342  double val15 ;
8343  int ecode15 = 0 ;
8344  PyArrayObject *tmp16 = NULL ;
8345  PyArrayObject *tmp18 = NULL ;
8346  PyArrayObject *tmp19 = NULL ;
8347  PyArrayObject *tmp21 = NULL ;
8348  PyArrayObject *tmp22 = NULL ;
8349  PyArrayObject *tmp23 = NULL ;
8350  PyArrayObject *tmp24 = NULL ;
8351  PyObject * obj0 = 0 ;
8352  PyObject * obj1 = 0 ;
8353  PyObject * obj2 = 0 ;
8354  PyObject * obj3 = 0 ;
8355  PyObject * obj4 = 0 ;
8356  PyObject * obj5 = 0 ;
8357  PyObject * obj6 = 0 ;
8358  PyObject * obj7 = 0 ;
8359  PyObject * obj8 = 0 ;
8360  PyObject * obj9 = 0 ;
8361  PyObject * obj10 = 0 ;
8362  PyObject * obj11 = 0 ;
8363  PyObject * obj12 = 0 ;
8364  PyObject * obj13 = 0 ;
8365  PyObject * obj14 = 0 ;
8366  PyObject * obj15 = 0 ;
8367  PyObject * obj16 = 0 ;
8368  PyObject * obj17 = 0 ;
8369  PyObject * obj18 = 0 ;
8370  PyObject * obj19 = 0 ;
8371 
8372  arg1 = &temp1;
8373  arg2 = &temp2;
8374  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOOOOOOOOOOOOOO:plcolorbar",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9,&obj10,&obj11,&obj12,&obj13,&obj14,&obj15,&obj16,&obj17,&obj18,&obj19)) SWIG_fail;
8375  ecode3 = SWIG_AsVal_int(obj0, &val3);
8376  if (!SWIG_IsOK(ecode3)) {
8377  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plcolorbar" "', argument " "3"" of type '" "PLINT""'");
8378  }
8379  arg3 = (PLINT)(val3);
8380  ecode4 = SWIG_AsVal_int(obj1, &val4);
8381  if (!SWIG_IsOK(ecode4)) {
8382  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plcolorbar" "', argument " "4"" of type '" "PLINT""'");
8383  }
8384  arg4 = (PLINT)(val4);
8385  ecode5 = SWIG_AsVal_double(obj2, &val5);
8386  if (!SWIG_IsOK(ecode5)) {
8387  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plcolorbar" "', argument " "5"" of type '" "PLFLT""'");
8388  }
8389  arg5 = (PLFLT)(val5);
8390  ecode6 = SWIG_AsVal_double(obj3, &val6);
8391  if (!SWIG_IsOK(ecode6)) {
8392  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plcolorbar" "', argument " "6"" of type '" "PLFLT""'");
8393  }
8394  arg6 = (PLFLT)(val6);
8395  ecode7 = SWIG_AsVal_double(obj4, &val7);
8396  if (!SWIG_IsOK(ecode7)) {
8397  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plcolorbar" "', argument " "7"" of type '" "PLFLT""'");
8398  }
8399  arg7 = (PLFLT)(val7);
8400  ecode8 = SWIG_AsVal_double(obj5, &val8);
8401  if (!SWIG_IsOK(ecode8)) {
8402  SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "plcolorbar" "', argument " "8"" of type '" "PLFLT""'");
8403  }
8404  arg8 = (PLFLT)(val8);
8405  ecode9 = SWIG_AsVal_int(obj6, &val9);
8406  if (!SWIG_IsOK(ecode9)) {
8407  SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "plcolorbar" "', argument " "9"" of type '" "PLINT""'");
8408  }
8409  arg9 = (PLINT)(val9);
8410  ecode10 = SWIG_AsVal_int(obj7, &val10);
8411  if (!SWIG_IsOK(ecode10)) {
8412  SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "plcolorbar" "', argument " "10"" of type '" "PLINT""'");
8413  }
8414  arg10 = (PLINT)(val10);
8415  ecode11 = SWIG_AsVal_int(obj8, &val11);
8416  if (!SWIG_IsOK(ecode11)) {
8417  SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "plcolorbar" "', argument " "11"" of type '" "PLINT""'");
8418  }
8419  arg11 = (PLINT)(val11);
8420  ecode12 = SWIG_AsVal_double(obj9, &val12);
8421  if (!SWIG_IsOK(ecode12)) {
8422  SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "plcolorbar" "', argument " "12"" of type '" "PLFLT""'");
8423  }
8424  arg12 = (PLFLT)(val12);
8425  ecode13 = SWIG_AsVal_double(obj10, &val13);
8426  if (!SWIG_IsOK(ecode13)) {
8427  SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "plcolorbar" "', argument " "13"" of type '" "PLFLT""'");
8428  }
8429  arg13 = (PLFLT)(val13);
8430  ecode14 = SWIG_AsVal_int(obj11, &val14);
8431  if (!SWIG_IsOK(ecode14)) {
8432  SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "plcolorbar" "', argument " "14"" of type '" "PLINT""'");
8433  }
8434  arg14 = (PLINT)(val14);
8435  ecode15 = SWIG_AsVal_double(obj12, &val15);
8436  if (!SWIG_IsOK(ecode15)) {
8437  SWIG_exception_fail(SWIG_ArgError(ecode15), "in method '" "plcolorbar" "', argument " "15"" of type '" "PLFLT""'");
8438  }
8439  arg15 = (PLFLT)(val15);
8440  {
8441  tmp16 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj13, NPY_PLINT, 1, 1 );
8442  if ( tmp16 == NULL )
8443  return NULL;
8444  arg16 = Alen = PyArray_DIMS( tmp16 )[0];
8445  arg17 = (PLINT *) PyArray_DATA( tmp16 );
8446  }
8447  {
8448  int i;
8449  tmp18 = (PyArrayObject *) PyArray_ContiguousFromObject( obj14, NPY_STRING, 1, 1 );
8450  if ( tmp18 == NULL )
8451  return NULL;
8452  if ( PyArray_DIMS( tmp18 )[0] != Alen )
8453  {
8454  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8455  return NULL;
8456  }
8457  arg18 = (char **) malloc( sizeof ( char* ) * (size_t) Alen );
8458  for ( i = 0; i < Alen; i++ )
8459  {
8460  arg18[i] = (char *) PyArray_DATA( tmp18 ) + i * PyArray_STRIDES( tmp18 )[0];
8461  if ( arg18[i] == NULL )
8462  {
8463  free( arg18 );
8464  return NULL;
8465  }
8466  }
8467  }
8468  {
8469  int i;
8470  tmp19 = (PyArrayObject *) PyArray_ContiguousFromObject( obj15, NPY_STRING, 1, 1 );
8471  if ( tmp19 == NULL )
8472  return NULL;
8473  Alen = PyArray_DIMS( tmp19 )[0];
8474  arg19 = Alen;
8475  arg20 = (char **) malloc( sizeof ( char* ) * (size_t) Alen );
8476  for ( i = 0; i < Alen; i++ )
8477  {
8478  arg20[i] = (char *) PyArray_DATA( tmp19 ) + i * PyArray_STRIDES( tmp19 )[0];
8479  if ( arg20[i] == NULL )
8480  {
8481  free( arg20 );
8482  return NULL;
8483  }
8484  }
8485  }
8486  {
8487  tmp21 = (PyArrayObject *) myArray_ContiguousFromObject( obj16, NPY_PLFLT, 1, 1 );
8488  if ( tmp21 == NULL )
8489  return NULL;
8490  if ( PyArray_DIMS( tmp21 )[0] != Alen )
8491  {
8492  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8493  return NULL;
8494  }
8495  arg21 = (PLFLT *) PyArray_DATA( tmp21 );
8496  }
8497  {
8498  tmp22 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj17, NPY_PLINT, 1, 1 );
8499  if ( tmp22 == NULL )
8500  return NULL;
8501  if ( PyArray_DIMS( tmp22 )[0] != Alen )
8502  {
8503  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8504  return NULL;
8505  }
8506  arg22 = (PLINT *) PyArray_DATA( tmp22 );
8507  }
8508  {
8509  int i;
8510  tmp23 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj18, NPY_PLINT, 1, 1 );
8511  if ( tmp23 == NULL )
8512  return NULL;
8513  if ( PyArray_DIMS( tmp23 )[0] != Alen )
8514  {
8515  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8516  return NULL;
8517  }
8518  Xlen = PyArray_DIMS( tmp23 )[0];
8519  arg23 = (PLINT *) PyArray_DATA( tmp23 );
8520  Ylen = -1;
8521  for ( i = 0; i < Xlen; i++ )
8522  if ( arg23[i] > Ylen )
8523  Ylen = arg23[i];
8524  }
8525  {
8526  int i, size;
8527  tmp24 = (PyArrayObject *) myArray_ContiguousFromObject( obj19, NPY_PLFLT, 2, 2 );
8528  if ( tmp24 == NULL )
8529  return NULL;
8530  if ( PyArray_DIMS( tmp24 )[0] != Xlen || PyArray_DIMS( tmp24 )[1] != Ylen )
8531  {
8532  PyErr_SetString( PyExc_ValueError, "Vectors must match matrix." );
8533  return NULL;
8534  }
8535  size = Ylen;
8536  arg24 = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) Xlen );
8537  for ( i = 0; i < Xlen; i++ )
8538  arg24[i] = ( (PLFLT *) PyArray_DATA( tmp24 ) + i * size );
8539  }
8540  plcolorbar(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,(int const *)arg17,(char const **)arg18,arg19,(char const **)arg20,(double const *)arg21,(int const *)arg22,(int const *)arg23,(double const **)arg24);
8541  resultobj = SWIG_Py_Void();
8542  if (SWIG_IsTmpObj(res1)) {
8543  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg1)));
8544  } else {
8545  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
8546  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_double, new_flags));
8547  }
8548  if (SWIG_IsTmpObj(res2)) {
8549  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
8550  } else {
8551  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
8552  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
8553  }
8554  {
8555  Py_CLEAR( tmp16 );
8556  }
8557  {
8558  Py_CLEAR( tmp18 ); free( arg18 );
8559  }
8560  {
8561  Py_CLEAR( tmp19 ); free( arg20 );
8562  }
8563  {
8564  Py_CLEAR( tmp21 );
8565  }
8566  {
8567  Py_CLEAR( tmp22 );
8568  }
8569  {
8570  Py_CLEAR( tmp23 );
8571  }
8572  {
8573  Py_CLEAR( tmp24 );
8574  free( arg24 );
8575  }
8576  return resultobj;
8577 fail:
8578  {
8579  Py_CLEAR( tmp16 );
8580  }
8581  {
8582  Py_CLEAR( tmp18 ); free( arg18 );
8583  }
8584  {
8585  Py_CLEAR( tmp19 ); free( arg20 );
8586  }
8587  {
8588  Py_CLEAR( tmp21 );
8589  }
8590  {
8591  Py_CLEAR( tmp22 );
8592  }
8593  {
8594  Py_CLEAR( tmp23 );
8595  }
8596  {
8597  Py_CLEAR( tmp24 );
8598  free( arg24 );
8599  }
8600  return NULL;
8601 }
8602 
8603 
8604 SWIGINTERN PyObject *_wrap_pllightsource(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
8605  PyObject *resultobj = 0;
8606  PLFLT arg1 ;
8607  PLFLT arg2 ;
8608  PLFLT arg3 ;
8609  double val1 ;
8610  int ecode1 = 0 ;
8611  double val2 ;
8612  int ecode2 = 0 ;
8613  double val3 ;
8614  int ecode3 = 0 ;
8615  PyObject * obj0 = 0 ;
8616  PyObject * obj1 = 0 ;
8617  PyObject * obj2 = 0 ;
8618 
8619  if (!PyArg_ParseTuple(args,(char *)"OOO:pllightsource",&obj0,&obj1,&obj2)) SWIG_fail;
8620  ecode1 = SWIG_AsVal_double(obj0, &val1);
8621  if (!SWIG_IsOK(ecode1)) {
8622  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "pllightsource" "', argument " "1"" of type '" "PLFLT""'");
8623  }
8624  arg1 = (PLFLT)(val1);
8625  ecode2 = SWIG_AsVal_double(obj1, &val2);
8626  if (!SWIG_IsOK(ecode2)) {
8627  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "pllightsource" "', argument " "2"" of type '" "PLFLT""'");
8628  }
8629  arg2 = (PLFLT)(val2);
8630  ecode3 = SWIG_AsVal_double(obj2, &val3);
8631  if (!SWIG_IsOK(ecode3)) {
8632  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "pllightsource" "', argument " "3"" of type '" "PLFLT""'");
8633  }
8634  arg3 = (PLFLT)(val3);
8635  pllightsource(arg1,arg2,arg3);
8636  resultobj = SWIG_Py_Void();
8637  return resultobj;
8638 fail:
8639  return NULL;
8640 }
8641 
8642 
8643 SWIGINTERN PyObject *_wrap_plline(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
8644  PyObject *resultobj = 0;
8645  PLINT arg1 ;
8646  PLFLT *arg2 = (PLFLT *) 0 ;
8647  PLFLT *arg3 = (PLFLT *) 0 ;
8648  PyArrayObject *tmp1 = NULL ;
8649  PyArrayObject *tmp3 = NULL ;
8650  PyObject * obj0 = 0 ;
8651  PyObject * obj1 = 0 ;
8652 
8653  if (!PyArg_ParseTuple(args,(char *)"OO:plline",&obj0,&obj1)) SWIG_fail;
8654  {
8655  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
8656  if ( tmp1 == NULL )
8657  return NULL;
8658  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
8659  arg2 = (PLFLT *) PyArray_DATA( tmp1 );
8660  }
8661  {
8662  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
8663  if ( tmp3 == NULL )
8664  return NULL;
8665  if ( PyArray_DIMS( tmp3 )[0] != Alen )
8666  {
8667  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8668  return NULL;
8669  }
8670  arg3 = (PLFLT *) PyArray_DATA( tmp3 );
8671  }
8672  plline(arg1,(double const *)arg2,(double const *)arg3);
8673  resultobj = SWIG_Py_Void();
8674  {
8675  Py_CLEAR( tmp1 );
8676  }
8677  {
8678  Py_CLEAR( tmp3 );
8679  }
8680  return resultobj;
8681 fail:
8682  {
8683  Py_CLEAR( tmp1 );
8684  }
8685  {
8686  Py_CLEAR( tmp3 );
8687  }
8688  return NULL;
8689 }
8690 
8691 
8692 SWIGINTERN PyObject *_wrap_plline3(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
8693  PyObject *resultobj = 0;
8694  PLINT arg1 ;
8695  PLFLT *arg2 = (PLFLT *) 0 ;
8696  PLFLT *arg3 = (PLFLT *) 0 ;
8697  PLFLT *arg4 = (PLFLT *) 0 ;
8698  PyArrayObject *tmp1 = NULL ;
8699  PyArrayObject *tmp3 = NULL ;
8700  PyArrayObject *tmp4 = NULL ;
8701  PyObject * obj0 = 0 ;
8702  PyObject * obj1 = 0 ;
8703  PyObject * obj2 = 0 ;
8704 
8705  if (!PyArg_ParseTuple(args,(char *)"OOO:plline3",&obj0,&obj1,&obj2)) SWIG_fail;
8706  {
8707  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
8708  if ( tmp1 == NULL )
8709  return NULL;
8710  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
8711  arg2 = (PLFLT *) PyArray_DATA( tmp1 );
8712  }
8713  {
8714  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
8715  if ( tmp3 == NULL )
8716  return NULL;
8717  if ( PyArray_DIMS( tmp3 )[0] != Alen )
8718  {
8719  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8720  return NULL;
8721  }
8722  arg3 = (PLFLT *) PyArray_DATA( tmp3 );
8723  }
8724  {
8725  tmp4 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 1, 1 );
8726  if ( tmp4 == NULL )
8727  return NULL;
8728  if ( PyArray_DIMS( tmp4 )[0] != Alen )
8729  {
8730  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
8731  return NULL;
8732  }
8733  arg4 = (PLFLT *) PyArray_DATA( tmp4 );
8734  }
8735  plline3(arg1,(double const *)arg2,(double const *)arg3,(double const *)arg4);
8736  resultobj = SWIG_Py_Void();
8737  {
8738  Py_CLEAR( tmp1 );
8739  }
8740  {
8741  Py_CLEAR( tmp3 );
8742  }
8743  {
8744  Py_CLEAR( tmp4 );
8745  }
8746  return resultobj;
8747 fail:
8748  {
8749  Py_CLEAR( tmp1 );
8750  }
8751  {
8752  Py_CLEAR( tmp3 );
8753  }
8754  {
8755  Py_CLEAR( tmp4 );
8756  }
8757  return NULL;
8758 }
8759 
8760 
8761 SWIGINTERN PyObject *_wrap_pllsty(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
8762  PyObject *resultobj = 0;
8763  PLINT arg1 ;
8764  int val1 ;
8765  int ecode1 = 0 ;
8766  PyObject * obj0 = 0 ;
8767 
8768  if (!PyArg_ParseTuple(args,(char *)"O:pllsty",&obj0)) SWIG_fail;
8769  ecode1 = SWIG_AsVal_int(obj0, &val1);
8770  if (!SWIG_IsOK(ecode1)) {
8771  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "pllsty" "', argument " "1"" of type '" "PLINT""'");
8772  }
8773  arg1 = (PLINT)(val1);
8774  pllsty(arg1);
8775  resultobj = SWIG_Py_Void();
8776  return resultobj;
8777 fail:
8778  return NULL;
8779 }
8780 
8781 
8782 SWIGINTERN PyObject *_wrap_plmesh(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
8783  PyObject *resultobj = 0;
8784  PLFLT *arg1 = (PLFLT *) 0 ;
8785  PLFLT *arg2 = (PLFLT *) 0 ;
8786  PLFLT **arg3 = (PLFLT **) 0 ;
8787  PLINT arg4 ;
8788  PLINT arg5 ;
8789  PLINT arg6 ;
8790  PyArrayObject *tmp1 = NULL ;
8791  PyArrayObject *tmp2 = NULL ;
8792  PyArrayObject *tmp3 = NULL ;
8793  int val6 ;
8794  int ecode6 = 0 ;
8795  PyObject * obj0 = 0 ;
8796  PyObject * obj1 = 0 ;
8797  PyObject * obj2 = 0 ;
8798  PyObject * obj3 = 0 ;
8799 
8800  if (!PyArg_ParseTuple(args,(char *)"OOOO:plmesh",&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
8801  {
8802  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
8803  if ( tmp1 == NULL )
8804  return NULL;
8805  Xlen = PyArray_DIMS( tmp1 )[0];
8806  arg1 = (PLFLT *) PyArray_DATA( tmp1 );
8807  }
8808  {
8809  tmp2 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
8810  if ( tmp2 == NULL )
8811  return NULL;
8812  Ylen = PyArray_DIMS( tmp2 )[0];
8813  arg2 = (PLFLT *) PyArray_DATA( tmp2 );
8814  }
8815  {
8816  int i, size;
8817  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 2, 2 );
8818  if ( tmp3 == NULL )
8819  return NULL;
8820  if ( Xlen != PyArray_DIMS( tmp3 )[0] || Ylen != PyArray_DIMS( tmp3 )[1] )
8821  {
8822  PyErr_SetString( PyExc_ValueError, "Vectors must match matrix." );
8823  return NULL;
8824  }
8825  arg4 = PyArray_DIMS( tmp3 )[0];
8826  arg5 = PyArray_DIMS( tmp3 )[1];
8827  size = arg5;
8828  arg3 = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) arg4 );
8829  for ( i = 0; i < arg4; i++ )
8830  arg3[i] = ( (PLFLT *) PyArray_DATA( tmp3 ) + i * size );
8831  }
8832  ecode6 = SWIG_AsVal_int(obj3, &val6);
8833  if (!SWIG_IsOK(ecode6)) {
8834  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plmesh" "', argument " "6"" of type '" "PLINT""'");
8835  }
8836  arg6 = (PLINT)(val6);
8837  plmesh((double const *)arg1,(double const *)arg2,(double const **)arg3,arg4,arg5,arg6);
8838  resultobj = SWIG_Py_Void();
8839  {
8840  Py_CLEAR( tmp1 );
8841  }
8842  {
8843  Py_CLEAR( tmp2 );
8844  }
8845  {
8846  Py_CLEAR( tmp3 );
8847  free( arg3 );
8848  }
8849  return resultobj;
8850 fail:
8851  {
8852  Py_CLEAR( tmp1 );
8853  }
8854  {
8855  Py_CLEAR( tmp2 );
8856  }
8857  {
8858  Py_CLEAR( tmp3 );
8859  free( arg3 );
8860  }
8861  return NULL;
8862 }
8863 
8864 
8865 SWIGINTERN PyObject *_wrap_plmeshc(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
8866  PyObject *resultobj = 0;
8867  PLFLT *arg1 = (PLFLT *) 0 ;
8868  PLFLT *arg2 = (PLFLT *) 0 ;
8869  PLFLT **arg3 = (PLFLT **) 0 ;
8870  PLINT arg4 ;
8871  PLINT arg5 ;
8872  PLINT arg6 ;
8873  PLFLT *arg7 = (PLFLT *) 0 ;
8874  PLINT arg8 ;
8875  PyArrayObject *tmp1 = NULL ;
8876  PyArrayObject *tmp2 = NULL ;
8877  PyArrayObject *tmp3 = NULL ;
8878  int val6 ;
8879  int ecode6 = 0 ;
8880  PyArrayObject *tmp7 = NULL ;
8881  PyObject * obj0 = 0 ;
8882  PyObject * obj1 = 0 ;
8883  PyObject * obj2 = 0 ;
8884  PyObject * obj3 = 0 ;
8885  PyObject * obj4 = 0 ;
8886 
8887  if (!PyArg_ParseTuple(args,(char *)"OOOOO:plmeshc",&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
8888  {
8889  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
8890  if ( tmp1 == NULL )
8891  return NULL;
8892  Xlen = PyArray_DIMS( tmp1 )[0];
8893  arg1 = (PLFLT *) PyArray_DATA( tmp1 );
8894  }
8895  {
8896  tmp2 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
8897  if ( tmp2 == NULL )
8898  return NULL;
8899  Ylen = PyArray_DIMS( tmp2 )[0];
8900  arg2 = (PLFLT *) PyArray_DATA( tmp2 );
8901  }
8902  {
8903  int i, size;
8904  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 2, 2 );
8905  if ( tmp3 == NULL )
8906  return NULL;
8907  if ( Xlen != PyArray_DIMS( tmp3 )[0] || Ylen != PyArray_DIMS( tmp3 )[1] )
8908  {
8909  PyErr_SetString( PyExc_ValueError, "Vectors must match matrix." );
8910  return NULL;
8911  }
8912  arg4 = PyArray_DIMS( tmp3 )[0];
8913  arg5 = PyArray_DIMS( tmp3 )[1];
8914  size = arg5;
8915  arg3 = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) arg4 );
8916  for ( i = 0; i < arg4; i++ )
8917  arg3[i] = ( (PLFLT *) PyArray_DATA( tmp3 ) + i * size );
8918  }
8919  ecode6 = SWIG_AsVal_int(obj3, &val6);
8920  if (!SWIG_IsOK(ecode6)) {
8921  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plmeshc" "', argument " "6"" of type '" "PLINT""'");
8922  }
8923  arg6 = (PLINT)(val6);
8924  {
8925  tmp7 = (PyArrayObject *) myArray_ContiguousFromObject( obj4, NPY_PLFLT, 1, 1 );
8926  if ( tmp7 == NULL )
8927  return NULL;
8928  arg8 = PyArray_DIMS( tmp7 )[0];
8929  arg7 = (PLFLT *) PyArray_DATA( tmp7 );
8930  }
8931  plmeshc((double const *)arg1,(double const *)arg2,(double const **)arg3,arg4,arg5,arg6,(double const *)arg7,arg8);
8932  resultobj = SWIG_Py_Void();
8933  {
8934  Py_CLEAR( tmp1 );
8935  }
8936  {
8937  Py_CLEAR( tmp2 );
8938  }
8939  {
8940  Py_CLEAR( tmp3 );
8941  free( arg3 );
8942  }
8943  {
8944  Py_CLEAR( tmp7 );
8945  }
8946  return resultobj;
8947 fail:
8948  {
8949  Py_CLEAR( tmp1 );
8950  }
8951  {
8952  Py_CLEAR( tmp2 );
8953  }
8954  {
8955  Py_CLEAR( tmp3 );
8956  free( arg3 );
8957  }
8958  {
8959  Py_CLEAR( tmp7 );
8960  }
8961  return NULL;
8962 }
8963 
8964 
8965 SWIGINTERN PyObject *_wrap_plmkstrm(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
8966  PyObject *resultobj = 0;
8967  PLINT *arg1 = (PLINT *) 0 ;
8968  PLINT temp1 ;
8969  int res1 = SWIG_TMPOBJ ;
8970 
8971  arg1 = &temp1;
8972  if (!PyArg_ParseTuple(args,(char *)":plmkstrm")) SWIG_fail;
8973  plmkstrm(arg1);
8974  resultobj = SWIG_Py_Void();
8975  if (SWIG_IsTmpObj(res1)) {
8976  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg1)));
8977  } else {
8978  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
8979  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_int, new_flags));
8980  }
8981  return resultobj;
8982 fail:
8983  return NULL;
8984 }
8985 
8986 
8987 SWIGINTERN PyObject *_wrap_plmtex(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
8988  PyObject *resultobj = 0;
8989  char *arg1 = (char *) 0 ;
8990  PLFLT arg2 ;
8991  PLFLT arg3 ;
8992  PLFLT arg4 ;
8993  char *arg5 = (char *) 0 ;
8994  int res1 ;
8995  char *buf1 = 0 ;
8996  int alloc1 = 0 ;
8997  double val2 ;
8998  int ecode2 = 0 ;
8999  double val3 ;
9000  int ecode3 = 0 ;
9001  double val4 ;
9002  int ecode4 = 0 ;
9003  int res5 ;
9004  char *buf5 = 0 ;
9005  int alloc5 = 0 ;
9006  PyObject * obj0 = 0 ;
9007  PyObject * obj1 = 0 ;
9008  PyObject * obj2 = 0 ;
9009  PyObject * obj3 = 0 ;
9010  PyObject * obj4 = 0 ;
9011 
9012  if (!PyArg_ParseTuple(args,(char *)"OOOOO:plmtex",&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
9013  res1 = SWIG_AsCharPtrAndSize(obj0, &buf1, NULL, &alloc1);
9014  if (!SWIG_IsOK(res1)) {
9015  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "plmtex" "', argument " "1"" of type '" "char const *""'");
9016  }
9017  arg1 = (char *)(buf1);
9018  ecode2 = SWIG_AsVal_double(obj1, &val2);
9019  if (!SWIG_IsOK(ecode2)) {
9020  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plmtex" "', argument " "2"" of type '" "PLFLT""'");
9021  }
9022  arg2 = (PLFLT)(val2);
9023  ecode3 = SWIG_AsVal_double(obj2, &val3);
9024  if (!SWIG_IsOK(ecode3)) {
9025  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plmtex" "', argument " "3"" of type '" "PLFLT""'");
9026  }
9027  arg3 = (PLFLT)(val3);
9028  ecode4 = SWIG_AsVal_double(obj3, &val4);
9029  if (!SWIG_IsOK(ecode4)) {
9030  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plmtex" "', argument " "4"" of type '" "PLFLT""'");
9031  }
9032  arg4 = (PLFLT)(val4);
9033  res5 = SWIG_AsCharPtrAndSize(obj4, &buf5, NULL, &alloc5);
9034  if (!SWIG_IsOK(res5)) {
9035  SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "plmtex" "', argument " "5"" of type '" "char const *""'");
9036  }
9037  arg5 = (char *)(buf5);
9038  plmtex((char const *)arg1,arg2,arg3,arg4,(char const *)arg5);
9039  resultobj = SWIG_Py_Void();
9040  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
9041  if (alloc5 == SWIG_NEWOBJ) free((char*)buf5);
9042  return resultobj;
9043 fail:
9044  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
9045  if (alloc5 == SWIG_NEWOBJ) free((char*)buf5);
9046  return NULL;
9047 }
9048 
9049 
9050 SWIGINTERN PyObject *_wrap_plmtex3(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
9051  PyObject *resultobj = 0;
9052  char *arg1 = (char *) 0 ;
9053  PLFLT arg2 ;
9054  PLFLT arg3 ;
9055  PLFLT arg4 ;
9056  char *arg5 = (char *) 0 ;
9057  int res1 ;
9058  char *buf1 = 0 ;
9059  int alloc1 = 0 ;
9060  double val2 ;
9061  int ecode2 = 0 ;
9062  double val3 ;
9063  int ecode3 = 0 ;
9064  double val4 ;
9065  int ecode4 = 0 ;
9066  int res5 ;
9067  char *buf5 = 0 ;
9068  int alloc5 = 0 ;
9069  PyObject * obj0 = 0 ;
9070  PyObject * obj1 = 0 ;
9071  PyObject * obj2 = 0 ;
9072  PyObject * obj3 = 0 ;
9073  PyObject * obj4 = 0 ;
9074 
9075  if (!PyArg_ParseTuple(args,(char *)"OOOOO:plmtex3",&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
9076  res1 = SWIG_AsCharPtrAndSize(obj0, &buf1, NULL, &alloc1);
9077  if (!SWIG_IsOK(res1)) {
9078  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "plmtex3" "', argument " "1"" of type '" "char const *""'");
9079  }
9080  arg1 = (char *)(buf1);
9081  ecode2 = SWIG_AsVal_double(obj1, &val2);
9082  if (!SWIG_IsOK(ecode2)) {
9083  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plmtex3" "', argument " "2"" of type '" "PLFLT""'");
9084  }
9085  arg2 = (PLFLT)(val2);
9086  ecode3 = SWIG_AsVal_double(obj2, &val3);
9087  if (!SWIG_IsOK(ecode3)) {
9088  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plmtex3" "', argument " "3"" of type '" "PLFLT""'");
9089  }
9090  arg3 = (PLFLT)(val3);
9091  ecode4 = SWIG_AsVal_double(obj3, &val4);
9092  if (!SWIG_IsOK(ecode4)) {
9093  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plmtex3" "', argument " "4"" of type '" "PLFLT""'");
9094  }
9095  arg4 = (PLFLT)(val4);
9096  res5 = SWIG_AsCharPtrAndSize(obj4, &buf5, NULL, &alloc5);
9097  if (!SWIG_IsOK(res5)) {
9098  SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "plmtex3" "', argument " "5"" of type '" "char const *""'");
9099  }
9100  arg5 = (char *)(buf5);
9101  plmtex3((char const *)arg1,arg2,arg3,arg4,(char const *)arg5);
9102  resultobj = SWIG_Py_Void();
9103  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
9104  if (alloc5 == SWIG_NEWOBJ) free((char*)buf5);
9105  return resultobj;
9106 fail:
9107  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
9108  if (alloc5 == SWIG_NEWOBJ) free((char*)buf5);
9109  return NULL;
9110 }
9111 
9112 
9113 SWIGINTERN PyObject *_wrap_plot3d(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
9114  PyObject *resultobj = 0;
9115  PLFLT *arg1 = (PLFLT *) 0 ;
9116  PLFLT *arg2 = (PLFLT *) 0 ;
9117  PLFLT **arg3 = (PLFLT **) 0 ;
9118  PLINT arg4 ;
9119  PLINT arg5 ;
9120  PLINT arg6 ;
9121  PLBOOL arg7 ;
9122  PyArrayObject *tmp1 = NULL ;
9123  PyArrayObject *tmp2 = NULL ;
9124  PyArrayObject *tmp3 = NULL ;
9125  int val6 ;
9126  int ecode6 = 0 ;
9127  int val7 ;
9128  int ecode7 = 0 ;
9129  PyObject * obj0 = 0 ;
9130  PyObject * obj1 = 0 ;
9131  PyObject * obj2 = 0 ;
9132  PyObject * obj3 = 0 ;
9133  PyObject * obj4 = 0 ;
9134 
9135  if (!PyArg_ParseTuple(args,(char *)"OOOOO:plot3d",&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
9136  {
9137  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
9138  if ( tmp1 == NULL )
9139  return NULL;
9140  Xlen = PyArray_DIMS( tmp1 )[0];
9141  arg1 = (PLFLT *) PyArray_DATA( tmp1 );
9142  }
9143  {
9144  tmp2 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
9145  if ( tmp2 == NULL )
9146  return NULL;
9147  Ylen = PyArray_DIMS( tmp2 )[0];
9148  arg2 = (PLFLT *) PyArray_DATA( tmp2 );
9149  }
9150  {
9151  int i, size;
9152  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 2, 2 );
9153  if ( tmp3 == NULL )
9154  return NULL;
9155  if ( Xlen != PyArray_DIMS( tmp3 )[0] || Ylen != PyArray_DIMS( tmp3 )[1] )
9156  {
9157  PyErr_SetString( PyExc_ValueError, "Vectors must match matrix." );
9158  return NULL;
9159  }
9160  arg4 = PyArray_DIMS( tmp3 )[0];
9161  arg5 = PyArray_DIMS( tmp3 )[1];
9162  size = arg5;
9163  arg3 = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) arg4 );
9164  for ( i = 0; i < arg4; i++ )
9165  arg3[i] = ( (PLFLT *) PyArray_DATA( tmp3 ) + i * size );
9166  }
9167  ecode6 = SWIG_AsVal_int(obj3, &val6);
9168  if (!SWIG_IsOK(ecode6)) {
9169  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plot3d" "', argument " "6"" of type '" "PLINT""'");
9170  }
9171  arg6 = (PLINT)(val6);
9172  ecode7 = SWIG_AsVal_int(obj4, &val7);
9173  if (!SWIG_IsOK(ecode7)) {
9174  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plot3d" "', argument " "7"" of type '" "PLBOOL""'");
9175  }
9176  arg7 = (PLBOOL)(val7);
9177  plot3d((double const *)arg1,(double const *)arg2,(double const **)arg3,arg4,arg5,arg6,arg7);
9178  resultobj = SWIG_Py_Void();
9179  {
9180  Py_CLEAR( tmp1 );
9181  }
9182  {
9183  Py_CLEAR( tmp2 );
9184  }
9185  {
9186  Py_CLEAR( tmp3 );
9187  free( arg3 );
9188  }
9189  return resultobj;
9190 fail:
9191  {
9192  Py_CLEAR( tmp1 );
9193  }
9194  {
9195  Py_CLEAR( tmp2 );
9196  }
9197  {
9198  Py_CLEAR( tmp3 );
9199  free( arg3 );
9200  }
9201  return NULL;
9202 }
9203 
9204 
9205 SWIGINTERN PyObject *_wrap_plot3dc(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
9206  PyObject *resultobj = 0;
9207  PLFLT *arg1 = (PLFLT *) 0 ;
9208  PLFLT *arg2 = (PLFLT *) 0 ;
9209  PLFLT **arg3 = (PLFLT **) 0 ;
9210  PLINT arg4 ;
9211  PLINT arg5 ;
9212  PLINT arg6 ;
9213  PLFLT *arg7 = (PLFLT *) 0 ;
9214  PLINT arg8 ;
9215  PyArrayObject *tmp1 = NULL ;
9216  PyArrayObject *tmp2 = NULL ;
9217  PyArrayObject *tmp3 = NULL ;
9218  int val6 ;
9219  int ecode6 = 0 ;
9220  PyArrayObject *tmp7 = NULL ;
9221  PyObject * obj0 = 0 ;
9222  PyObject * obj1 = 0 ;
9223  PyObject * obj2 = 0 ;
9224  PyObject * obj3 = 0 ;
9225  PyObject * obj4 = 0 ;
9226 
9227  if (!PyArg_ParseTuple(args,(char *)"OOOOO:plot3dc",&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
9228  {
9229  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
9230  if ( tmp1 == NULL )
9231  return NULL;
9232  Xlen = PyArray_DIMS( tmp1 )[0];
9233  arg1 = (PLFLT *) PyArray_DATA( tmp1 );
9234  }
9235  {
9236  tmp2 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
9237  if ( tmp2 == NULL )
9238  return NULL;
9239  Ylen = PyArray_DIMS( tmp2 )[0];
9240  arg2 = (PLFLT *) PyArray_DATA( tmp2 );
9241  }
9242  {
9243  int i, size;
9244  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 2, 2 );
9245  if ( tmp3 == NULL )
9246  return NULL;
9247  if ( Xlen != PyArray_DIMS( tmp3 )[0] || Ylen != PyArray_DIMS( tmp3 )[1] )
9248  {
9249  PyErr_SetString( PyExc_ValueError, "Vectors must match matrix." );
9250  return NULL;
9251  }
9252  arg4 = PyArray_DIMS( tmp3 )[0];
9253  arg5 = PyArray_DIMS( tmp3 )[1];
9254  size = arg5;
9255  arg3 = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) arg4 );
9256  for ( i = 0; i < arg4; i++ )
9257  arg3[i] = ( (PLFLT *) PyArray_DATA( tmp3 ) + i * size );
9258  }
9259  ecode6 = SWIG_AsVal_int(obj3, &val6);
9260  if (!SWIG_IsOK(ecode6)) {
9261  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plot3dc" "', argument " "6"" of type '" "PLINT""'");
9262  }
9263  arg6 = (PLINT)(val6);
9264  {
9265  tmp7 = (PyArrayObject *) myArray_ContiguousFromObject( obj4, NPY_PLFLT, 1, 1 );
9266  if ( tmp7 == NULL )
9267  return NULL;
9268  arg8 = PyArray_DIMS( tmp7 )[0];
9269  arg7 = (PLFLT *) PyArray_DATA( tmp7 );
9270  }
9271  plot3dc((double const *)arg1,(double const *)arg2,(double const **)arg3,arg4,arg5,arg6,(double const *)arg7,arg8);
9272  resultobj = SWIG_Py_Void();
9273  {
9274  Py_CLEAR( tmp1 );
9275  }
9276  {
9277  Py_CLEAR( tmp2 );
9278  }
9279  {
9280  Py_CLEAR( tmp3 );
9281  free( arg3 );
9282  }
9283  {
9284  Py_CLEAR( tmp7 );
9285  }
9286  return resultobj;
9287 fail:
9288  {
9289  Py_CLEAR( tmp1 );
9290  }
9291  {
9292  Py_CLEAR( tmp2 );
9293  }
9294  {
9295  Py_CLEAR( tmp3 );
9296  free( arg3 );
9297  }
9298  {
9299  Py_CLEAR( tmp7 );
9300  }
9301  return NULL;
9302 }
9303 
9304 
9305 SWIGINTERN PyObject *_wrap_plot3dcl(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
9306  PyObject *resultobj = 0;
9307  PLFLT *arg1 = (PLFLT *) 0 ;
9308  PLFLT *arg2 = (PLFLT *) 0 ;
9309  PLFLT **arg3 = (PLFLT **) 0 ;
9310  PLINT arg4 ;
9311  PLINT arg5 ;
9312  PLINT arg6 ;
9313  PLFLT *arg7 = (PLFLT *) 0 ;
9314  PLINT arg8 ;
9315  PLINT arg9 ;
9316  PLINT arg10 ;
9317  PLINT *arg11 = (PLINT *) 0 ;
9318  PLINT *arg12 = (PLINT *) 0 ;
9319  PyArrayObject *tmp1 = NULL ;
9320  PyArrayObject *tmp2 = NULL ;
9321  PyArrayObject *tmp3 = NULL ;
9322  int val6 ;
9323  int ecode6 = 0 ;
9324  PyArrayObject *tmp7 = NULL ;
9325  int val9 ;
9326  int ecode9 = 0 ;
9327  PyArrayObject *tmp10 = NULL ;
9328  PyArrayObject *tmp12 = NULL ;
9329  PyObject * obj0 = 0 ;
9330  PyObject * obj1 = 0 ;
9331  PyObject * obj2 = 0 ;
9332  PyObject * obj3 = 0 ;
9333  PyObject * obj4 = 0 ;
9334  PyObject * obj5 = 0 ;
9335  PyObject * obj6 = 0 ;
9336  PyObject * obj7 = 0 ;
9337 
9338  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOO:plot3dcl",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
9339  {
9340  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
9341  if ( tmp1 == NULL )
9342  return NULL;
9343  Xlen = PyArray_DIMS( tmp1 )[0];
9344  arg1 = (PLFLT *) PyArray_DATA( tmp1 );
9345  }
9346  {
9347  tmp2 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
9348  if ( tmp2 == NULL )
9349  return NULL;
9350  Ylen = PyArray_DIMS( tmp2 )[0];
9351  arg2 = (PLFLT *) PyArray_DATA( tmp2 );
9352  }
9353  {
9354  int i, size;
9355  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 2, 2 );
9356  if ( tmp3 == NULL )
9357  return NULL;
9358  if ( Xlen != PyArray_DIMS( tmp3 )[0] || Ylen != PyArray_DIMS( tmp3 )[1] )
9359  {
9360  PyErr_SetString( PyExc_ValueError, "Vectors must match matrix." );
9361  return NULL;
9362  }
9363  arg4 = PyArray_DIMS( tmp3 )[0];
9364  arg5 = PyArray_DIMS( tmp3 )[1];
9365  size = arg5;
9366  arg3 = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) arg4 );
9367  for ( i = 0; i < arg4; i++ )
9368  arg3[i] = ( (PLFLT *) PyArray_DATA( tmp3 ) + i * size );
9369  }
9370  ecode6 = SWIG_AsVal_int(obj3, &val6);
9371  if (!SWIG_IsOK(ecode6)) {
9372  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plot3dcl" "', argument " "6"" of type '" "PLINT""'");
9373  }
9374  arg6 = (PLINT)(val6);
9375  {
9376  tmp7 = (PyArrayObject *) myArray_ContiguousFromObject( obj4, NPY_PLFLT, 1, 1 );
9377  if ( tmp7 == NULL )
9378  return NULL;
9379  arg8 = PyArray_DIMS( tmp7 )[0];
9380  arg7 = (PLFLT *) PyArray_DATA( tmp7 );
9381  }
9382  ecode9 = SWIG_AsVal_int(obj5, &val9);
9383  if (!SWIG_IsOK(ecode9)) {
9384  SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "plot3dcl" "', argument " "9"" of type '" "PLINT""'");
9385  }
9386  arg9 = (PLINT)(val9);
9387  {
9388  tmp10 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj6, NPY_PLINT, 1, 1 );
9389  if ( tmp10 == NULL )
9390  return NULL;
9391  arg10 = Alen = PyArray_DIMS( tmp10 )[0];
9392  arg11 = (PLINT *) PyArray_DATA( tmp10 );
9393  }
9394  {
9395  tmp12 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj7, NPY_PLINT, 1, 1 );
9396  if ( tmp12 == NULL )
9397  return NULL;
9398  if ( PyArray_DIMS( tmp12 )[0] != Alen )
9399  {
9400  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
9401  return NULL;
9402  }
9403  arg12 = (PLINT *) PyArray_DATA( tmp12 );
9404  }
9405  plot3dcl((double const *)arg1,(double const *)arg2,(double const **)arg3,arg4,arg5,arg6,(double const *)arg7,arg8,arg9,arg10,(int const *)arg11,(int const *)arg12);
9406  resultobj = SWIG_Py_Void();
9407  {
9408  Py_CLEAR( tmp1 );
9409  }
9410  {
9411  Py_CLEAR( tmp2 );
9412  }
9413  {
9414  Py_CLEAR( tmp3 );
9415  free( arg3 );
9416  }
9417  {
9418  Py_CLEAR( tmp7 );
9419  }
9420  {
9421  Py_CLEAR( tmp10 );
9422  }
9423  {
9424  Py_CLEAR( tmp12 );
9425  }
9426  return resultobj;
9427 fail:
9428  {
9429  Py_CLEAR( tmp1 );
9430  }
9431  {
9432  Py_CLEAR( tmp2 );
9433  }
9434  {
9435  Py_CLEAR( tmp3 );
9436  free( arg3 );
9437  }
9438  {
9439  Py_CLEAR( tmp7 );
9440  }
9441  {
9442  Py_CLEAR( tmp10 );
9443  }
9444  {
9445  Py_CLEAR( tmp12 );
9446  }
9447  return NULL;
9448 }
9449 
9450 
9451 SWIGINTERN PyObject *_wrap_plsurf3d(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
9452  PyObject *resultobj = 0;
9453  PLFLT *arg1 = (PLFLT *) 0 ;
9454  PLFLT *arg2 = (PLFLT *) 0 ;
9455  PLFLT **arg3 = (PLFLT **) 0 ;
9456  PLINT arg4 ;
9457  PLINT arg5 ;
9458  PLINT arg6 ;
9459  PLFLT *arg7 = (PLFLT *) 0 ;
9460  PLINT arg8 ;
9461  PyArrayObject *tmp1 = NULL ;
9462  PyArrayObject *tmp2 = NULL ;
9463  PyArrayObject *tmp3 = NULL ;
9464  int val6 ;
9465  int ecode6 = 0 ;
9466  PyArrayObject *tmp7 = NULL ;
9467  PyObject * obj0 = 0 ;
9468  PyObject * obj1 = 0 ;
9469  PyObject * obj2 = 0 ;
9470  PyObject * obj3 = 0 ;
9471  PyObject * obj4 = 0 ;
9472 
9473  if (!PyArg_ParseTuple(args,(char *)"OOOOO:plsurf3d",&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
9474  {
9475  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
9476  if ( tmp1 == NULL )
9477  return NULL;
9478  Xlen = PyArray_DIMS( tmp1 )[0];
9479  arg1 = (PLFLT *) PyArray_DATA( tmp1 );
9480  }
9481  {
9482  tmp2 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
9483  if ( tmp2 == NULL )
9484  return NULL;
9485  Ylen = PyArray_DIMS( tmp2 )[0];
9486  arg2 = (PLFLT *) PyArray_DATA( tmp2 );
9487  }
9488  {
9489  int i, size;
9490  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 2, 2 );
9491  if ( tmp3 == NULL )
9492  return NULL;
9493  if ( Xlen != PyArray_DIMS( tmp3 )[0] || Ylen != PyArray_DIMS( tmp3 )[1] )
9494  {
9495  PyErr_SetString( PyExc_ValueError, "Vectors must match matrix." );
9496  return NULL;
9497  }
9498  arg4 = PyArray_DIMS( tmp3 )[0];
9499  arg5 = PyArray_DIMS( tmp3 )[1];
9500  size = arg5;
9501  arg3 = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) arg4 );
9502  for ( i = 0; i < arg4; i++ )
9503  arg3[i] = ( (PLFLT *) PyArray_DATA( tmp3 ) + i * size );
9504  }
9505  ecode6 = SWIG_AsVal_int(obj3, &val6);
9506  if (!SWIG_IsOK(ecode6)) {
9507  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plsurf3d" "', argument " "6"" of type '" "PLINT""'");
9508  }
9509  arg6 = (PLINT)(val6);
9510  {
9511  tmp7 = (PyArrayObject *) myArray_ContiguousFromObject( obj4, NPY_PLFLT, 1, 1 );
9512  if ( tmp7 == NULL )
9513  return NULL;
9514  arg8 = PyArray_DIMS( tmp7 )[0];
9515  arg7 = (PLFLT *) PyArray_DATA( tmp7 );
9516  }
9517  plsurf3d((double const *)arg1,(double const *)arg2,(double const **)arg3,arg4,arg5,arg6,(double const *)arg7,arg8);
9518  resultobj = SWIG_Py_Void();
9519  {
9520  Py_CLEAR( tmp1 );
9521  }
9522  {
9523  Py_CLEAR( tmp2 );
9524  }
9525  {
9526  Py_CLEAR( tmp3 );
9527  free( arg3 );
9528  }
9529  {
9530  Py_CLEAR( tmp7 );
9531  }
9532  return resultobj;
9533 fail:
9534  {
9535  Py_CLEAR( tmp1 );
9536  }
9537  {
9538  Py_CLEAR( tmp2 );
9539  }
9540  {
9541  Py_CLEAR( tmp3 );
9542  free( arg3 );
9543  }
9544  {
9545  Py_CLEAR( tmp7 );
9546  }
9547  return NULL;
9548 }
9549 
9550 
9551 SWIGINTERN PyObject *_wrap_plsurf3dl(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
9552  PyObject *resultobj = 0;
9553  PLFLT *arg1 = (PLFLT *) 0 ;
9554  PLFLT *arg2 = (PLFLT *) 0 ;
9555  PLFLT **arg3 = (PLFLT **) 0 ;
9556  PLINT arg4 ;
9557  PLINT arg5 ;
9558  PLINT arg6 ;
9559  PLFLT *arg7 = (PLFLT *) 0 ;
9560  PLINT arg8 ;
9561  PLINT arg9 ;
9562  PLINT arg10 ;
9563  PLINT *arg11 = (PLINT *) 0 ;
9564  PLINT *arg12 = (PLINT *) 0 ;
9565  PyArrayObject *tmp1 = NULL ;
9566  PyArrayObject *tmp2 = NULL ;
9567  PyArrayObject *tmp3 = NULL ;
9568  int val6 ;
9569  int ecode6 = 0 ;
9570  PyArrayObject *tmp7 = NULL ;
9571  int val9 ;
9572  int ecode9 = 0 ;
9573  PyArrayObject *tmp10 = NULL ;
9574  PyArrayObject *tmp12 = NULL ;
9575  PyObject * obj0 = 0 ;
9576  PyObject * obj1 = 0 ;
9577  PyObject * obj2 = 0 ;
9578  PyObject * obj3 = 0 ;
9579  PyObject * obj4 = 0 ;
9580  PyObject * obj5 = 0 ;
9581  PyObject * obj6 = 0 ;
9582  PyObject * obj7 = 0 ;
9583 
9584  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOO:plsurf3dl",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
9585  {
9586  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
9587  if ( tmp1 == NULL )
9588  return NULL;
9589  Xlen = PyArray_DIMS( tmp1 )[0];
9590  arg1 = (PLFLT *) PyArray_DATA( tmp1 );
9591  }
9592  {
9593  tmp2 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
9594  if ( tmp2 == NULL )
9595  return NULL;
9596  Ylen = PyArray_DIMS( tmp2 )[0];
9597  arg2 = (PLFLT *) PyArray_DATA( tmp2 );
9598  }
9599  {
9600  int i, size;
9601  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 2, 2 );
9602  if ( tmp3 == NULL )
9603  return NULL;
9604  if ( Xlen != PyArray_DIMS( tmp3 )[0] || Ylen != PyArray_DIMS( tmp3 )[1] )
9605  {
9606  PyErr_SetString( PyExc_ValueError, "Vectors must match matrix." );
9607  return NULL;
9608  }
9609  arg4 = PyArray_DIMS( tmp3 )[0];
9610  arg5 = PyArray_DIMS( tmp3 )[1];
9611  size = arg5;
9612  arg3 = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) arg4 );
9613  for ( i = 0; i < arg4; i++ )
9614  arg3[i] = ( (PLFLT *) PyArray_DATA( tmp3 ) + i * size );
9615  }
9616  ecode6 = SWIG_AsVal_int(obj3, &val6);
9617  if (!SWIG_IsOK(ecode6)) {
9618  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plsurf3dl" "', argument " "6"" of type '" "PLINT""'");
9619  }
9620  arg6 = (PLINT)(val6);
9621  {
9622  tmp7 = (PyArrayObject *) myArray_ContiguousFromObject( obj4, NPY_PLFLT, 1, 1 );
9623  if ( tmp7 == NULL )
9624  return NULL;
9625  arg8 = PyArray_DIMS( tmp7 )[0];
9626  arg7 = (PLFLT *) PyArray_DATA( tmp7 );
9627  }
9628  ecode9 = SWIG_AsVal_int(obj5, &val9);
9629  if (!SWIG_IsOK(ecode9)) {
9630  SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "plsurf3dl" "', argument " "9"" of type '" "PLINT""'");
9631  }
9632  arg9 = (PLINT)(val9);
9633  {
9634  tmp10 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj6, NPY_PLINT, 1, 1 );
9635  if ( tmp10 == NULL )
9636  return NULL;
9637  arg10 = Alen = PyArray_DIMS( tmp10 )[0];
9638  arg11 = (PLINT *) PyArray_DATA( tmp10 );
9639  }
9640  {
9641  tmp12 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj7, NPY_PLINT, 1, 1 );
9642  if ( tmp12 == NULL )
9643  return NULL;
9644  if ( PyArray_DIMS( tmp12 )[0] != Alen )
9645  {
9646  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
9647  return NULL;
9648  }
9649  arg12 = (PLINT *) PyArray_DATA( tmp12 );
9650  }
9651  plsurf3dl((double const *)arg1,(double const *)arg2,(double const **)arg3,arg4,arg5,arg6,(double const *)arg7,arg8,arg9,arg10,(int const *)arg11,(int const *)arg12);
9652  resultobj = SWIG_Py_Void();
9653  {
9654  Py_CLEAR( tmp1 );
9655  }
9656  {
9657  Py_CLEAR( tmp2 );
9658  }
9659  {
9660  Py_CLEAR( tmp3 );
9661  free( arg3 );
9662  }
9663  {
9664  Py_CLEAR( tmp7 );
9665  }
9666  {
9667  Py_CLEAR( tmp10 );
9668  }
9669  {
9670  Py_CLEAR( tmp12 );
9671  }
9672  return resultobj;
9673 fail:
9674  {
9675  Py_CLEAR( tmp1 );
9676  }
9677  {
9678  Py_CLEAR( tmp2 );
9679  }
9680  {
9681  Py_CLEAR( tmp3 );
9682  free( arg3 );
9683  }
9684  {
9685  Py_CLEAR( tmp7 );
9686  }
9687  {
9688  Py_CLEAR( tmp10 );
9689  }
9690  {
9691  Py_CLEAR( tmp12 );
9692  }
9693  return NULL;
9694 }
9695 
9696 
9697 SWIGINTERN PyObject *_wrap_plparseopts(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
9698  PyObject *resultobj = 0;
9699  int *arg1 = (int *) 0 ;
9700  char **arg2 = (char **) 0 ;
9701  PLINT arg3 ;
9702  int tmp1 ;
9703  int val3 ;
9704  int ecode3 = 0 ;
9705  PyObject * obj0 = 0 ;
9706  PyObject * obj1 = 0 ;
9707  PLINT result;
9708 
9709  if (!PyArg_ParseTuple(args,(char *)"OO:plparseopts",&obj0,&obj1)) SWIG_fail;
9710  {
9711  int i;
9712  PyObject *unicode_string;
9713 
9714  if ( !PyList_Check( obj0 ) )
9715  {
9716  PyErr_SetString( PyExc_ValueError, "Expecting a list" );
9717  return NULL;
9718  }
9719  tmp1 = PyList_Size( obj0 );
9720  arg1 = &tmp1;
9721  arg2 = (char **) malloc( (size_t) ( tmp1 + 1 ) * sizeof ( char * ) );
9722  for ( i = 0; i < tmp1; i++ )
9723  {
9724  PyObject *s = PyList_GetItem( obj0, i );
9725  if ( PyString_Check( s ) )
9726  {
9727  arg2[i] = PyString_AsString( s );
9728  }
9729  else if ( PyUnicode_Check( s ) )
9730  {
9731  // unicode_string is never freed? memory leak here?
9732  unicode_string = PyUnicode_AsEncodedString( s, "utf-8", "Error ~" );
9733  arg2[i] = PyBytes_AS_STRING( unicode_string );
9734  }
9735  else
9736  {
9737  free( arg2 );
9738  PyErr_SetString( PyExc_ValueError, "List items must be strings" );
9739  return NULL;
9740  }
9741  }
9742  arg2[i] = 0;
9743  }
9744  ecode3 = SWIG_AsVal_int(obj1, &val3);
9745  if (!SWIG_IsOK(ecode3)) {
9746  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plparseopts" "', argument " "3"" of type '" "PLINT""'");
9747  }
9748  arg3 = (PLINT)(val3);
9749  result = (PLINT)plparseopts(arg1,arg2,arg3);
9750  resultobj = SWIG_From_int((int)(result));
9751  {
9752  if ( arg2 )
9753  free( arg2 );
9754  }
9755  return resultobj;
9756 fail:
9757  {
9758  if ( arg2 )
9759  free( arg2 );
9760  }
9761  return NULL;
9762 }
9763 
9764 
9765 SWIGINTERN PyObject *_wrap_plpat(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
9766  PyObject *resultobj = 0;
9767  PLINT arg1 ;
9768  PLINT *arg2 = (PLINT *) 0 ;
9769  PLINT *arg3 = (PLINT *) 0 ;
9770  PyArrayObject *tmp1 = NULL ;
9771  PyArrayObject *tmp3 = NULL ;
9772  PyObject * obj0 = 0 ;
9773  PyObject * obj1 = 0 ;
9774 
9775  if (!PyArg_ParseTuple(args,(char *)"OO:plpat",&obj0,&obj1)) SWIG_fail;
9776  {
9777  tmp1 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj0, NPY_PLINT, 1, 1 );
9778  if ( tmp1 == NULL )
9779  return NULL;
9780  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
9781  arg2 = (PLINT *) PyArray_DATA( tmp1 );
9782  }
9783  {
9784  tmp3 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj1, NPY_PLINT, 1, 1 );
9785  if ( tmp3 == NULL )
9786  return NULL;
9787  if ( PyArray_DIMS( tmp3 )[0] != Alen )
9788  {
9789  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
9790  return NULL;
9791  }
9792  arg3 = (PLINT *) PyArray_DATA( tmp3 );
9793  }
9794  plpat(arg1,(int const *)arg2,(int const *)arg3);
9795  resultobj = SWIG_Py_Void();
9796  {
9797  Py_CLEAR( tmp1 );
9798  }
9799  {
9800  Py_CLEAR( tmp3 );
9801  }
9802  return resultobj;
9803 fail:
9804  {
9805  Py_CLEAR( tmp1 );
9806  }
9807  {
9808  Py_CLEAR( tmp3 );
9809  }
9810  return NULL;
9811 }
9812 
9813 
9814 SWIGINTERN PyObject *_wrap_plpath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
9815  PyObject *resultobj = 0;
9816  PLINT arg1 ;
9817  PLFLT arg2 ;
9818  PLFLT arg3 ;
9819  PLFLT arg4 ;
9820  PLFLT arg5 ;
9821  int val1 ;
9822  int ecode1 = 0 ;
9823  double val2 ;
9824  int ecode2 = 0 ;
9825  double val3 ;
9826  int ecode3 = 0 ;
9827  double val4 ;
9828  int ecode4 = 0 ;
9829  double val5 ;
9830  int ecode5 = 0 ;
9831  PyObject * obj0 = 0 ;
9832  PyObject * obj1 = 0 ;
9833  PyObject * obj2 = 0 ;
9834  PyObject * obj3 = 0 ;
9835  PyObject * obj4 = 0 ;
9836 
9837  if (!PyArg_ParseTuple(args,(char *)"OOOOO:plpath",&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
9838  ecode1 = SWIG_AsVal_int(obj0, &val1);
9839  if (!SWIG_IsOK(ecode1)) {
9840  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plpath" "', argument " "1"" of type '" "PLINT""'");
9841  }
9842  arg1 = (PLINT)(val1);
9843  ecode2 = SWIG_AsVal_double(obj1, &val2);
9844  if (!SWIG_IsOK(ecode2)) {
9845  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plpath" "', argument " "2"" of type '" "PLFLT""'");
9846  }
9847  arg2 = (PLFLT)(val2);
9848  ecode3 = SWIG_AsVal_double(obj2, &val3);
9849  if (!SWIG_IsOK(ecode3)) {
9850  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plpath" "', argument " "3"" of type '" "PLFLT""'");
9851  }
9852  arg3 = (PLFLT)(val3);
9853  ecode4 = SWIG_AsVal_double(obj3, &val4);
9854  if (!SWIG_IsOK(ecode4)) {
9855  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plpath" "', argument " "4"" of type '" "PLFLT""'");
9856  }
9857  arg4 = (PLFLT)(val4);
9858  ecode5 = SWIG_AsVal_double(obj4, &val5);
9859  if (!SWIG_IsOK(ecode5)) {
9860  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plpath" "', argument " "5"" of type '" "PLFLT""'");
9861  }
9862  arg5 = (PLFLT)(val5);
9863  plpath(arg1,arg2,arg3,arg4,arg5);
9864  resultobj = SWIG_Py_Void();
9865  return resultobj;
9866 fail:
9867  return NULL;
9868 }
9869 
9870 
9871 SWIGINTERN PyObject *_wrap_plpoin(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
9872  PyObject *resultobj = 0;
9873  PLINT arg1 ;
9874  PLFLT *arg2 = (PLFLT *) 0 ;
9875  PLFLT *arg3 = (PLFLT *) 0 ;
9876  PLINT arg4 ;
9877  PyArrayObject *tmp1 = NULL ;
9878  PyArrayObject *tmp3 = NULL ;
9879  int val4 ;
9880  int ecode4 = 0 ;
9881  PyObject * obj0 = 0 ;
9882  PyObject * obj1 = 0 ;
9883  PyObject * obj2 = 0 ;
9884 
9885  if (!PyArg_ParseTuple(args,(char *)"OOO:plpoin",&obj0,&obj1,&obj2)) SWIG_fail;
9886  {
9887  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
9888  if ( tmp1 == NULL )
9889  return NULL;
9890  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
9891  arg2 = (PLFLT *) PyArray_DATA( tmp1 );
9892  }
9893  {
9894  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
9895  if ( tmp3 == NULL )
9896  return NULL;
9897  if ( PyArray_DIMS( tmp3 )[0] != Alen )
9898  {
9899  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
9900  return NULL;
9901  }
9902  arg3 = (PLFLT *) PyArray_DATA( tmp3 );
9903  }
9904  ecode4 = SWIG_AsVal_int(obj2, &val4);
9905  if (!SWIG_IsOK(ecode4)) {
9906  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plpoin" "', argument " "4"" of type '" "PLINT""'");
9907  }
9908  arg4 = (PLINT)(val4);
9909  plpoin(arg1,(double const *)arg2,(double const *)arg3,arg4);
9910  resultobj = SWIG_Py_Void();
9911  {
9912  Py_CLEAR( tmp1 );
9913  }
9914  {
9915  Py_CLEAR( tmp3 );
9916  }
9917  return resultobj;
9918 fail:
9919  {
9920  Py_CLEAR( tmp1 );
9921  }
9922  {
9923  Py_CLEAR( tmp3 );
9924  }
9925  return NULL;
9926 }
9927 
9928 
9929 SWIGINTERN PyObject *_wrap_plpoin3(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
9930  PyObject *resultobj = 0;
9931  PLINT arg1 ;
9932  PLFLT *arg2 = (PLFLT *) 0 ;
9933  PLFLT *arg3 = (PLFLT *) 0 ;
9934  PLFLT *arg4 = (PLFLT *) 0 ;
9935  PLINT arg5 ;
9936  PyArrayObject *tmp1 = NULL ;
9937  PyArrayObject *tmp3 = NULL ;
9938  PyArrayObject *tmp4 = NULL ;
9939  int val5 ;
9940  int ecode5 = 0 ;
9941  PyObject * obj0 = 0 ;
9942  PyObject * obj1 = 0 ;
9943  PyObject * obj2 = 0 ;
9944  PyObject * obj3 = 0 ;
9945 
9946  if (!PyArg_ParseTuple(args,(char *)"OOOO:plpoin3",&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
9947  {
9948  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
9949  if ( tmp1 == NULL )
9950  return NULL;
9951  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
9952  arg2 = (PLFLT *) PyArray_DATA( tmp1 );
9953  }
9954  {
9955  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
9956  if ( tmp3 == NULL )
9957  return NULL;
9958  if ( PyArray_DIMS( tmp3 )[0] != Alen )
9959  {
9960  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
9961  return NULL;
9962  }
9963  arg3 = (PLFLT *) PyArray_DATA( tmp3 );
9964  }
9965  {
9966  tmp4 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 1, 1 );
9967  if ( tmp4 == NULL )
9968  return NULL;
9969  if ( PyArray_DIMS( tmp4 )[0] != Alen )
9970  {
9971  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
9972  return NULL;
9973  }
9974  arg4 = (PLFLT *) PyArray_DATA( tmp4 );
9975  }
9976  ecode5 = SWIG_AsVal_int(obj3, &val5);
9977  if (!SWIG_IsOK(ecode5)) {
9978  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plpoin3" "', argument " "5"" of type '" "PLINT""'");
9979  }
9980  arg5 = (PLINT)(val5);
9981  plpoin3(arg1,(double const *)arg2,(double const *)arg3,(double const *)arg4,arg5);
9982  resultobj = SWIG_Py_Void();
9983  {
9984  Py_CLEAR( tmp1 );
9985  }
9986  {
9987  Py_CLEAR( tmp3 );
9988  }
9989  {
9990  Py_CLEAR( tmp4 );
9991  }
9992  return resultobj;
9993 fail:
9994  {
9995  Py_CLEAR( tmp1 );
9996  }
9997  {
9998  Py_CLEAR( tmp3 );
9999  }
10000  {
10001  Py_CLEAR( tmp4 );
10002  }
10003  return NULL;
10004 }
10005 
10006 
10007 SWIGINTERN PyObject *_wrap_plpoly3(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
10008  PyObject *resultobj = 0;
10009  PLINT arg1 ;
10010  PLFLT *arg2 = (PLFLT *) 0 ;
10011  PLFLT *arg3 = (PLFLT *) 0 ;
10012  PLFLT *arg4 = (PLFLT *) 0 ;
10013  PLBOOL *arg5 = (PLBOOL *) 0 ;
10014  PLBOOL arg6 ;
10015  PyArrayObject *tmp1 = NULL ;
10016  PyArrayObject *tmp3 = NULL ;
10017  PyArrayObject *tmp4 = NULL ;
10018  PyArrayObject *tmp5 = NULL ;
10019  int val6 ;
10020  int ecode6 = 0 ;
10021  PyObject * obj0 = 0 ;
10022  PyObject * obj1 = 0 ;
10023  PyObject * obj2 = 0 ;
10024  PyObject * obj3 = 0 ;
10025  PyObject * obj4 = 0 ;
10026 
10027  if (!PyArg_ParseTuple(args,(char *)"OOOOO:plpoly3",&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
10028  {
10029  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
10030  if ( tmp1 == NULL )
10031  return NULL;
10032  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
10033  arg2 = (PLFLT *) PyArray_DATA( tmp1 );
10034  }
10035  {
10036  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
10037  if ( tmp3 == NULL )
10038  return NULL;
10039  if ( PyArray_DIMS( tmp3 )[0] != Alen )
10040  {
10041  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10042  return NULL;
10043  }
10044  arg3 = (PLFLT *) PyArray_DATA( tmp3 );
10045  }
10046  {
10047  tmp4 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 1, 1 );
10048  if ( tmp4 == NULL )
10049  return NULL;
10050  if ( PyArray_DIMS( tmp4 )[0] != Alen )
10051  {
10052  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10053  return NULL;
10054  }
10055  arg4 = (PLFLT *) PyArray_DATA( tmp4 );
10056  }
10057  {
10058  tmp5 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj3, NPY_PLINT, 1, 1 );
10059  if ( tmp5 == NULL )
10060  return NULL;
10061  if ( PyArray_DIMS( tmp5 )[0] < Alen - 1 )
10062  {
10063  PyErr_SetString( PyExc_ValueError, "Vector must be at least length of others minus 1." );
10064  return NULL;
10065  }
10066  arg5 = (PLINT *) PyArray_DATA( tmp5 );
10067  }
10068  ecode6 = SWIG_AsVal_int(obj4, &val6);
10069  if (!SWIG_IsOK(ecode6)) {
10070  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plpoly3" "', argument " "6"" of type '" "PLBOOL""'");
10071  }
10072  arg6 = (PLBOOL)(val6);
10073  plpoly3(arg1,(double const *)arg2,(double const *)arg3,(double const *)arg4,(int const *)arg5,arg6);
10074  resultobj = SWIG_Py_Void();
10075  {
10076  Py_CLEAR( tmp1 );
10077  }
10078  {
10079  Py_CLEAR( tmp3 );
10080  }
10081  {
10082  Py_CLEAR( tmp4 );
10083  }
10084  {
10085  Py_CLEAR( tmp5 );
10086  }
10087  return resultobj;
10088 fail:
10089  {
10090  Py_CLEAR( tmp1 );
10091  }
10092  {
10093  Py_CLEAR( tmp3 );
10094  }
10095  {
10096  Py_CLEAR( tmp4 );
10097  }
10098  {
10099  Py_CLEAR( tmp5 );
10100  }
10101  return NULL;
10102 }
10103 
10104 
10105 SWIGINTERN PyObject *_wrap_plprec(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
10106  PyObject *resultobj = 0;
10107  PLINT arg1 ;
10108  PLINT arg2 ;
10109  int val1 ;
10110  int ecode1 = 0 ;
10111  int val2 ;
10112  int ecode2 = 0 ;
10113  PyObject * obj0 = 0 ;
10114  PyObject * obj1 = 0 ;
10115 
10116  if (!PyArg_ParseTuple(args,(char *)"OO:plprec",&obj0,&obj1)) SWIG_fail;
10117  ecode1 = SWIG_AsVal_int(obj0, &val1);
10118  if (!SWIG_IsOK(ecode1)) {
10119  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plprec" "', argument " "1"" of type '" "PLINT""'");
10120  }
10121  arg1 = (PLINT)(val1);
10122  ecode2 = SWIG_AsVal_int(obj1, &val2);
10123  if (!SWIG_IsOK(ecode2)) {
10124  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plprec" "', argument " "2"" of type '" "PLINT""'");
10125  }
10126  arg2 = (PLINT)(val2);
10127  plprec(arg1,arg2);
10128  resultobj = SWIG_Py_Void();
10129  return resultobj;
10130 fail:
10131  return NULL;
10132 }
10133 
10134 
10135 SWIGINTERN PyObject *_wrap_plpsty(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
10136  PyObject *resultobj = 0;
10137  PLINT arg1 ;
10138  int val1 ;
10139  int ecode1 = 0 ;
10140  PyObject * obj0 = 0 ;
10141 
10142  if (!PyArg_ParseTuple(args,(char *)"O:plpsty",&obj0)) SWIG_fail;
10143  ecode1 = SWIG_AsVal_int(obj0, &val1);
10144  if (!SWIG_IsOK(ecode1)) {
10145  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plpsty" "', argument " "1"" of type '" "PLINT""'");
10146  }
10147  arg1 = (PLINT)(val1);
10148  plpsty(arg1);
10149  resultobj = SWIG_Py_Void();
10150  return resultobj;
10151 fail:
10152  return NULL;
10153 }
10154 
10155 
10156 SWIGINTERN PyObject *_wrap_plptex(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
10157  PyObject *resultobj = 0;
10158  PLFLT arg1 ;
10159  PLFLT arg2 ;
10160  PLFLT arg3 ;
10161  PLFLT arg4 ;
10162  PLFLT arg5 ;
10163  char *arg6 = (char *) 0 ;
10164  double val1 ;
10165  int ecode1 = 0 ;
10166  double val2 ;
10167  int ecode2 = 0 ;
10168  double val3 ;
10169  int ecode3 = 0 ;
10170  double val4 ;
10171  int ecode4 = 0 ;
10172  double val5 ;
10173  int ecode5 = 0 ;
10174  int res6 ;
10175  char *buf6 = 0 ;
10176  int alloc6 = 0 ;
10177  PyObject * obj0 = 0 ;
10178  PyObject * obj1 = 0 ;
10179  PyObject * obj2 = 0 ;
10180  PyObject * obj3 = 0 ;
10181  PyObject * obj4 = 0 ;
10182  PyObject * obj5 = 0 ;
10183 
10184  if (!PyArg_ParseTuple(args,(char *)"OOOOOO:plptex",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
10185  ecode1 = SWIG_AsVal_double(obj0, &val1);
10186  if (!SWIG_IsOK(ecode1)) {
10187  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plptex" "', argument " "1"" of type '" "PLFLT""'");
10188  }
10189  arg1 = (PLFLT)(val1);
10190  ecode2 = SWIG_AsVal_double(obj1, &val2);
10191  if (!SWIG_IsOK(ecode2)) {
10192  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plptex" "', argument " "2"" of type '" "PLFLT""'");
10193  }
10194  arg2 = (PLFLT)(val2);
10195  ecode3 = SWIG_AsVal_double(obj2, &val3);
10196  if (!SWIG_IsOK(ecode3)) {
10197  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plptex" "', argument " "3"" of type '" "PLFLT""'");
10198  }
10199  arg3 = (PLFLT)(val3);
10200  ecode4 = SWIG_AsVal_double(obj3, &val4);
10201  if (!SWIG_IsOK(ecode4)) {
10202  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plptex" "', argument " "4"" of type '" "PLFLT""'");
10203  }
10204  arg4 = (PLFLT)(val4);
10205  ecode5 = SWIG_AsVal_double(obj4, &val5);
10206  if (!SWIG_IsOK(ecode5)) {
10207  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plptex" "', argument " "5"" of type '" "PLFLT""'");
10208  }
10209  arg5 = (PLFLT)(val5);
10210  res6 = SWIG_AsCharPtrAndSize(obj5, &buf6, NULL, &alloc6);
10211  if (!SWIG_IsOK(res6)) {
10212  SWIG_exception_fail(SWIG_ArgError(res6), "in method '" "plptex" "', argument " "6"" of type '" "char const *""'");
10213  }
10214  arg6 = (char *)(buf6);
10215  plptex(arg1,arg2,arg3,arg4,arg5,(char const *)arg6);
10216  resultobj = SWIG_Py_Void();
10217  if (alloc6 == SWIG_NEWOBJ) free((char*)buf6);
10218  return resultobj;
10219 fail:
10220  if (alloc6 == SWIG_NEWOBJ) free((char*)buf6);
10221  return NULL;
10222 }
10223 
10224 
10225 SWIGINTERN PyObject *_wrap_plptex3(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
10226  PyObject *resultobj = 0;
10227  PLFLT arg1 ;
10228  PLFLT arg2 ;
10229  PLFLT arg3 ;
10230  PLFLT arg4 ;
10231  PLFLT arg5 ;
10232  PLFLT arg6 ;
10233  PLFLT arg7 ;
10234  PLFLT arg8 ;
10235  PLFLT arg9 ;
10236  PLFLT arg10 ;
10237  char *arg11 = (char *) 0 ;
10238  double val1 ;
10239  int ecode1 = 0 ;
10240  double val2 ;
10241  int ecode2 = 0 ;
10242  double val3 ;
10243  int ecode3 = 0 ;
10244  double val4 ;
10245  int ecode4 = 0 ;
10246  double val5 ;
10247  int ecode5 = 0 ;
10248  double val6 ;
10249  int ecode6 = 0 ;
10250  double val7 ;
10251  int ecode7 = 0 ;
10252  double val8 ;
10253  int ecode8 = 0 ;
10254  double val9 ;
10255  int ecode9 = 0 ;
10256  double val10 ;
10257  int ecode10 = 0 ;
10258  int res11 ;
10259  char *buf11 = 0 ;
10260  int alloc11 = 0 ;
10261  PyObject * obj0 = 0 ;
10262  PyObject * obj1 = 0 ;
10263  PyObject * obj2 = 0 ;
10264  PyObject * obj3 = 0 ;
10265  PyObject * obj4 = 0 ;
10266  PyObject * obj5 = 0 ;
10267  PyObject * obj6 = 0 ;
10268  PyObject * obj7 = 0 ;
10269  PyObject * obj8 = 0 ;
10270  PyObject * obj9 = 0 ;
10271  PyObject * obj10 = 0 ;
10272 
10273  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOOOOO:plptex3",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9,&obj10)) SWIG_fail;
10274  ecode1 = SWIG_AsVal_double(obj0, &val1);
10275  if (!SWIG_IsOK(ecode1)) {
10276  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plptex3" "', argument " "1"" of type '" "PLFLT""'");
10277  }
10278  arg1 = (PLFLT)(val1);
10279  ecode2 = SWIG_AsVal_double(obj1, &val2);
10280  if (!SWIG_IsOK(ecode2)) {
10281  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plptex3" "', argument " "2"" of type '" "PLFLT""'");
10282  }
10283  arg2 = (PLFLT)(val2);
10284  ecode3 = SWIG_AsVal_double(obj2, &val3);
10285  if (!SWIG_IsOK(ecode3)) {
10286  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plptex3" "', argument " "3"" of type '" "PLFLT""'");
10287  }
10288  arg3 = (PLFLT)(val3);
10289  ecode4 = SWIG_AsVal_double(obj3, &val4);
10290  if (!SWIG_IsOK(ecode4)) {
10291  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plptex3" "', argument " "4"" of type '" "PLFLT""'");
10292  }
10293  arg4 = (PLFLT)(val4);
10294  ecode5 = SWIG_AsVal_double(obj4, &val5);
10295  if (!SWIG_IsOK(ecode5)) {
10296  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plptex3" "', argument " "5"" of type '" "PLFLT""'");
10297  }
10298  arg5 = (PLFLT)(val5);
10299  ecode6 = SWIG_AsVal_double(obj5, &val6);
10300  if (!SWIG_IsOK(ecode6)) {
10301  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plptex3" "', argument " "6"" of type '" "PLFLT""'");
10302  }
10303  arg6 = (PLFLT)(val6);
10304  ecode7 = SWIG_AsVal_double(obj6, &val7);
10305  if (!SWIG_IsOK(ecode7)) {
10306  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plptex3" "', argument " "7"" of type '" "PLFLT""'");
10307  }
10308  arg7 = (PLFLT)(val7);
10309  ecode8 = SWIG_AsVal_double(obj7, &val8);
10310  if (!SWIG_IsOK(ecode8)) {
10311  SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "plptex3" "', argument " "8"" of type '" "PLFLT""'");
10312  }
10313  arg8 = (PLFLT)(val8);
10314  ecode9 = SWIG_AsVal_double(obj8, &val9);
10315  if (!SWIG_IsOK(ecode9)) {
10316  SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "plptex3" "', argument " "9"" of type '" "PLFLT""'");
10317  }
10318  arg9 = (PLFLT)(val9);
10319  ecode10 = SWIG_AsVal_double(obj9, &val10);
10320  if (!SWIG_IsOK(ecode10)) {
10321  SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "plptex3" "', argument " "10"" of type '" "PLFLT""'");
10322  }
10323  arg10 = (PLFLT)(val10);
10324  res11 = SWIG_AsCharPtrAndSize(obj10, &buf11, NULL, &alloc11);
10325  if (!SWIG_IsOK(res11)) {
10326  SWIG_exception_fail(SWIG_ArgError(res11), "in method '" "plptex3" "', argument " "11"" of type '" "char const *""'");
10327  }
10328  arg11 = (char *)(buf11);
10329  plptex3(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,(char const *)arg11);
10330  resultobj = SWIG_Py_Void();
10331  if (alloc11 == SWIG_NEWOBJ) free((char*)buf11);
10332  return resultobj;
10333 fail:
10334  if (alloc11 == SWIG_NEWOBJ) free((char*)buf11);
10335  return NULL;
10336 }
10337 
10338 
10339 SWIGINTERN PyObject *_wrap_plrandd(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
10340  PyObject *resultobj = 0;
10341  PLFLT result;
10342 
10343  if (!PyArg_ParseTuple(args,(char *)":plrandd")) SWIG_fail;
10344  result = (PLFLT)plrandd();
10345  resultobj = SWIG_From_double((double)(result));
10346  return resultobj;
10347 fail:
10348  return NULL;
10349 }
10350 
10351 
10352 SWIGINTERN PyObject *_wrap_plreplot(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
10353  PyObject *resultobj = 0;
10354 
10355  if (!PyArg_ParseTuple(args,(char *)":plreplot")) SWIG_fail;
10356  plreplot();
10357  resultobj = SWIG_Py_Void();
10358  return resultobj;
10359 fail:
10360  return NULL;
10361 }
10362 
10363 
10364 SWIGINTERN PyObject *_wrap_plrgbhls(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
10365  PyObject *resultobj = 0;
10366  PLFLT arg1 ;
10367  PLFLT arg2 ;
10368  PLFLT arg3 ;
10369  PLFLT *arg4 = (PLFLT *) 0 ;
10370  PLFLT *arg5 = (PLFLT *) 0 ;
10371  PLFLT *arg6 = (PLFLT *) 0 ;
10372  double val1 ;
10373  int ecode1 = 0 ;
10374  double val2 ;
10375  int ecode2 = 0 ;
10376  double val3 ;
10377  int ecode3 = 0 ;
10378  PLFLT temp4 ;
10379  int res4 = SWIG_TMPOBJ ;
10380  PLFLT temp5 ;
10381  int res5 = SWIG_TMPOBJ ;
10382  PLFLT temp6 ;
10383  int res6 = SWIG_TMPOBJ ;
10384  PyObject * obj0 = 0 ;
10385  PyObject * obj1 = 0 ;
10386  PyObject * obj2 = 0 ;
10387 
10388  arg4 = &temp4;
10389  arg5 = &temp5;
10390  arg6 = &temp6;
10391  if (!PyArg_ParseTuple(args,(char *)"OOO:plrgbhls",&obj0,&obj1,&obj2)) SWIG_fail;
10392  ecode1 = SWIG_AsVal_double(obj0, &val1);
10393  if (!SWIG_IsOK(ecode1)) {
10394  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plrgbhls" "', argument " "1"" of type '" "PLFLT""'");
10395  }
10396  arg1 = (PLFLT)(val1);
10397  ecode2 = SWIG_AsVal_double(obj1, &val2);
10398  if (!SWIG_IsOK(ecode2)) {
10399  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plrgbhls" "', argument " "2"" of type '" "PLFLT""'");
10400  }
10401  arg2 = (PLFLT)(val2);
10402  ecode3 = SWIG_AsVal_double(obj2, &val3);
10403  if (!SWIG_IsOK(ecode3)) {
10404  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plrgbhls" "', argument " "3"" of type '" "PLFLT""'");
10405  }
10406  arg3 = (PLFLT)(val3);
10407  plrgbhls(arg1,arg2,arg3,arg4,arg5,arg6);
10408  resultobj = SWIG_Py_Void();
10409  if (SWIG_IsTmpObj(res4)) {
10410  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg4)));
10411  } else {
10412  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
10413  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_double, new_flags));
10414  }
10415  if (SWIG_IsTmpObj(res5)) {
10416  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg5)));
10417  } else {
10418  int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
10419  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_double, new_flags));
10420  }
10421  if (SWIG_IsTmpObj(res6)) {
10422  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg6)));
10423  } else {
10424  int new_flags = SWIG_IsNewObj(res6) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
10425  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg6), SWIGTYPE_p_double, new_flags));
10426  }
10427  return resultobj;
10428 fail:
10429  return NULL;
10430 }
10431 
10432 
10433 SWIGINTERN PyObject *_wrap_plschr(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
10434  PyObject *resultobj = 0;
10435  PLFLT arg1 ;
10436  PLFLT arg2 ;
10437  double val1 ;
10438  int ecode1 = 0 ;
10439  double val2 ;
10440  int ecode2 = 0 ;
10441  PyObject * obj0 = 0 ;
10442  PyObject * obj1 = 0 ;
10443 
10444  if (!PyArg_ParseTuple(args,(char *)"OO:plschr",&obj0,&obj1)) SWIG_fail;
10445  ecode1 = SWIG_AsVal_double(obj0, &val1);
10446  if (!SWIG_IsOK(ecode1)) {
10447  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plschr" "', argument " "1"" of type '" "PLFLT""'");
10448  }
10449  arg1 = (PLFLT)(val1);
10450  ecode2 = SWIG_AsVal_double(obj1, &val2);
10451  if (!SWIG_IsOK(ecode2)) {
10452  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plschr" "', argument " "2"" of type '" "PLFLT""'");
10453  }
10454  arg2 = (PLFLT)(val2);
10455  plschr(arg1,arg2);
10456  resultobj = SWIG_Py_Void();
10457  return resultobj;
10458 fail:
10459  return NULL;
10460 }
10461 
10462 
10463 SWIGINTERN PyObject *_wrap_plscmap0(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
10464  PyObject *resultobj = 0;
10465  PLINT *arg1 = (PLINT *) 0 ;
10466  PLINT *arg2 = (PLINT *) 0 ;
10467  PLINT *arg3 = (PLINT *) 0 ;
10468  PLINT arg4 ;
10469  PyArrayObject *tmp1 = NULL ;
10470  PyArrayObject *tmp2 = NULL ;
10471  PyArrayObject *tmp3 = NULL ;
10472  PyObject * obj0 = 0 ;
10473  PyObject * obj1 = 0 ;
10474  PyObject * obj2 = 0 ;
10475 
10476  if (!PyArg_ParseTuple(args,(char *)"OOO:plscmap0",&obj0,&obj1,&obj2)) SWIG_fail;
10477  {
10478  tmp1 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj0, NPY_PLINT, 1, 1 );
10479  if ( tmp1 == NULL )
10480  return NULL;
10481  Alen = PyArray_DIMS( tmp1 )[0];
10482  arg1 = (PLINT *) PyArray_DATA( tmp1 );
10483  }
10484  {
10485  tmp2 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj1, NPY_PLINT, 1, 1 );
10486  if ( tmp2 == NULL )
10487  return NULL;
10488  if ( PyArray_DIMS( tmp2 )[0] != Alen )
10489  {
10490  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10491  return NULL;
10492  }
10493  arg2 = (PLINT *) PyArray_DATA( tmp2 );
10494  }
10495  {
10496  tmp3 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj2, NPY_PLINT, 1, 1 );
10497  if ( tmp3 == NULL )
10498  return NULL;
10499  if ( PyArray_DIMS( tmp3 )[0] != Alen )
10500  {
10501  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10502  return NULL;
10503  }
10504  arg4 = PyArray_DIMS( tmp3 )[0];
10505  arg3 = (PLINT *) PyArray_DATA( tmp3 );
10506  }
10507  plscmap0((int const *)arg1,(int const *)arg2,(int const *)arg3,arg4);
10508  resultobj = SWIG_Py_Void();
10509  {
10510  Py_CLEAR( tmp1 );
10511  }
10512  {
10513  Py_CLEAR( tmp2 );
10514  }
10515  {
10516  Py_CLEAR( tmp3 );
10517  }
10518  return resultobj;
10519 fail:
10520  {
10521  Py_CLEAR( tmp1 );
10522  }
10523  {
10524  Py_CLEAR( tmp2 );
10525  }
10526  {
10527  Py_CLEAR( tmp3 );
10528  }
10529  return NULL;
10530 }
10531 
10532 
10533 SWIGINTERN PyObject *_wrap_plscmap0a(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
10534  PyObject *resultobj = 0;
10535  PLINT *arg1 = (PLINT *) 0 ;
10536  PLINT *arg2 = (PLINT *) 0 ;
10537  PLINT *arg3 = (PLINT *) 0 ;
10538  PLFLT *arg4 = (PLFLT *) 0 ;
10539  PLINT arg5 ;
10540  PyArrayObject *tmp1 = NULL ;
10541  PyArrayObject *tmp2 = NULL ;
10542  PyArrayObject *tmp3 = NULL ;
10543  PyArrayObject *tmp4 = NULL ;
10544  PyObject * obj0 = 0 ;
10545  PyObject * obj1 = 0 ;
10546  PyObject * obj2 = 0 ;
10547  PyObject * obj3 = 0 ;
10548 
10549  if (!PyArg_ParseTuple(args,(char *)"OOOO:plscmap0a",&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
10550  {
10551  tmp1 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj0, NPY_PLINT, 1, 1 );
10552  if ( tmp1 == NULL )
10553  return NULL;
10554  Alen = PyArray_DIMS( tmp1 )[0];
10555  arg1 = (PLINT *) PyArray_DATA( tmp1 );
10556  }
10557  {
10558  tmp2 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj1, NPY_PLINT, 1, 1 );
10559  if ( tmp2 == NULL )
10560  return NULL;
10561  if ( PyArray_DIMS( tmp2 )[0] != Alen )
10562  {
10563  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10564  return NULL;
10565  }
10566  arg2 = (PLINT *) PyArray_DATA( tmp2 );
10567  }
10568  {
10569  tmp3 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj2, NPY_PLINT, 1, 1 );
10570  if ( tmp3 == NULL )
10571  return NULL;
10572  if ( PyArray_DIMS( tmp3 )[0] != Alen )
10573  {
10574  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10575  return NULL;
10576  }
10577  arg3 = (PLINT *) PyArray_DATA( tmp3 );
10578  }
10579  {
10580  tmp4 = (PyArrayObject *) myArray_ContiguousFromObject( obj3, NPY_PLFLT, 1, 1 );
10581  if ( tmp4 == NULL )
10582  return NULL;
10583  if ( PyArray_DIMS( tmp4 )[0] != Alen )
10584  {
10585  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10586  return NULL;
10587  }
10588  arg4 = (PLFLT *) PyArray_DATA( tmp4 );
10589  arg5 = PyArray_DIMS( tmp4 )[0];
10590  }
10591  plscmap0a((int const *)arg1,(int const *)arg2,(int const *)arg3,(double const *)arg4,arg5);
10592  resultobj = SWIG_Py_Void();
10593  {
10594  Py_CLEAR( tmp1 );
10595  }
10596  {
10597  Py_CLEAR( tmp2 );
10598  }
10599  {
10600  Py_CLEAR( tmp3 );
10601  }
10602  {
10603  Py_CLEAR( tmp4 );
10604  }
10605  return resultobj;
10606 fail:
10607  {
10608  Py_CLEAR( tmp1 );
10609  }
10610  {
10611  Py_CLEAR( tmp2 );
10612  }
10613  {
10614  Py_CLEAR( tmp3 );
10615  }
10616  {
10617  Py_CLEAR( tmp4 );
10618  }
10619  return NULL;
10620 }
10621 
10622 
10623 SWIGINTERN PyObject *_wrap_plscmap0n(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
10624  PyObject *resultobj = 0;
10625  PLINT arg1 ;
10626  int val1 ;
10627  int ecode1 = 0 ;
10628  PyObject * obj0 = 0 ;
10629 
10630  if (!PyArg_ParseTuple(args,(char *)"O:plscmap0n",&obj0)) SWIG_fail;
10631  ecode1 = SWIG_AsVal_int(obj0, &val1);
10632  if (!SWIG_IsOK(ecode1)) {
10633  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plscmap0n" "', argument " "1"" of type '" "PLINT""'");
10634  }
10635  arg1 = (PLINT)(val1);
10636  plscmap0n(arg1);
10637  resultobj = SWIG_Py_Void();
10638  return resultobj;
10639 fail:
10640  return NULL;
10641 }
10642 
10643 
10644 SWIGINTERN PyObject *_wrap_plscmap1(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
10645  PyObject *resultobj = 0;
10646  PLINT *arg1 = (PLINT *) 0 ;
10647  PLINT *arg2 = (PLINT *) 0 ;
10648  PLINT *arg3 = (PLINT *) 0 ;
10649  PLINT arg4 ;
10650  PyArrayObject *tmp1 = NULL ;
10651  PyArrayObject *tmp2 = NULL ;
10652  PyArrayObject *tmp3 = NULL ;
10653  PyObject * obj0 = 0 ;
10654  PyObject * obj1 = 0 ;
10655  PyObject * obj2 = 0 ;
10656 
10657  if (!PyArg_ParseTuple(args,(char *)"OOO:plscmap1",&obj0,&obj1,&obj2)) SWIG_fail;
10658  {
10659  tmp1 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj0, NPY_PLINT, 1, 1 );
10660  if ( tmp1 == NULL )
10661  return NULL;
10662  Alen = PyArray_DIMS( tmp1 )[0];
10663  arg1 = (PLINT *) PyArray_DATA( tmp1 );
10664  }
10665  {
10666  tmp2 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj1, NPY_PLINT, 1, 1 );
10667  if ( tmp2 == NULL )
10668  return NULL;
10669  if ( PyArray_DIMS( tmp2 )[0] != Alen )
10670  {
10671  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10672  return NULL;
10673  }
10674  arg2 = (PLINT *) PyArray_DATA( tmp2 );
10675  }
10676  {
10677  tmp3 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj2, NPY_PLINT, 1, 1 );
10678  if ( tmp3 == NULL )
10679  return NULL;
10680  if ( PyArray_DIMS( tmp3 )[0] != Alen )
10681  {
10682  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10683  return NULL;
10684  }
10685  arg4 = PyArray_DIMS( tmp3 )[0];
10686  arg3 = (PLINT *) PyArray_DATA( tmp3 );
10687  }
10688  plscmap1((int const *)arg1,(int const *)arg2,(int const *)arg3,arg4);
10689  resultobj = SWIG_Py_Void();
10690  {
10691  Py_CLEAR( tmp1 );
10692  }
10693  {
10694  Py_CLEAR( tmp2 );
10695  }
10696  {
10697  Py_CLEAR( tmp3 );
10698  }
10699  return resultobj;
10700 fail:
10701  {
10702  Py_CLEAR( tmp1 );
10703  }
10704  {
10705  Py_CLEAR( tmp2 );
10706  }
10707  {
10708  Py_CLEAR( tmp3 );
10709  }
10710  return NULL;
10711 }
10712 
10713 
10714 SWIGINTERN PyObject *_wrap_plscmap1a(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
10715  PyObject *resultobj = 0;
10716  PLINT *arg1 = (PLINT *) 0 ;
10717  PLINT *arg2 = (PLINT *) 0 ;
10718  PLINT *arg3 = (PLINT *) 0 ;
10719  PLFLT *arg4 = (PLFLT *) 0 ;
10720  PLINT arg5 ;
10721  PyArrayObject *tmp1 = NULL ;
10722  PyArrayObject *tmp2 = NULL ;
10723  PyArrayObject *tmp3 = NULL ;
10724  PyArrayObject *tmp4 = NULL ;
10725  PyObject * obj0 = 0 ;
10726  PyObject * obj1 = 0 ;
10727  PyObject * obj2 = 0 ;
10728  PyObject * obj3 = 0 ;
10729 
10730  if (!PyArg_ParseTuple(args,(char *)"OOOO:plscmap1a",&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
10731  {
10732  tmp1 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj0, NPY_PLINT, 1, 1 );
10733  if ( tmp1 == NULL )
10734  return NULL;
10735  Alen = PyArray_DIMS( tmp1 )[0];
10736  arg1 = (PLINT *) PyArray_DATA( tmp1 );
10737  }
10738  {
10739  tmp2 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj1, NPY_PLINT, 1, 1 );
10740  if ( tmp2 == NULL )
10741  return NULL;
10742  if ( PyArray_DIMS( tmp2 )[0] != Alen )
10743  {
10744  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10745  return NULL;
10746  }
10747  arg2 = (PLINT *) PyArray_DATA( tmp2 );
10748  }
10749  {
10750  tmp3 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj2, NPY_PLINT, 1, 1 );
10751  if ( tmp3 == NULL )
10752  return NULL;
10753  if ( PyArray_DIMS( tmp3 )[0] != Alen )
10754  {
10755  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10756  return NULL;
10757  }
10758  arg3 = (PLINT *) PyArray_DATA( tmp3 );
10759  }
10760  {
10761  tmp4 = (PyArrayObject *) myArray_ContiguousFromObject( obj3, NPY_PLFLT, 1, 1 );
10762  if ( tmp4 == NULL )
10763  return NULL;
10764  if ( PyArray_DIMS( tmp4 )[0] != Alen )
10765  {
10766  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10767  return NULL;
10768  }
10769  arg4 = (PLFLT *) PyArray_DATA( tmp4 );
10770  arg5 = PyArray_DIMS( tmp4 )[0];
10771  }
10772  plscmap1a((int const *)arg1,(int const *)arg2,(int const *)arg3,(double const *)arg4,arg5);
10773  resultobj = SWIG_Py_Void();
10774  {
10775  Py_CLEAR( tmp1 );
10776  }
10777  {
10778  Py_CLEAR( tmp2 );
10779  }
10780  {
10781  Py_CLEAR( tmp3 );
10782  }
10783  {
10784  Py_CLEAR( tmp4 );
10785  }
10786  return resultobj;
10787 fail:
10788  {
10789  Py_CLEAR( tmp1 );
10790  }
10791  {
10792  Py_CLEAR( tmp2 );
10793  }
10794  {
10795  Py_CLEAR( tmp3 );
10796  }
10797  {
10798  Py_CLEAR( tmp4 );
10799  }
10800  return NULL;
10801 }
10802 
10803 
10804 SWIGINTERN PyObject *_wrap_plscmap1l(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
10805  PyObject *resultobj = 0;
10806  PLBOOL arg1 ;
10807  PLINT arg2 ;
10808  PLFLT *arg3 = (PLFLT *) 0 ;
10809  PLFLT *arg4 = (PLFLT *) 0 ;
10810  PLFLT *arg5 = (PLFLT *) 0 ;
10811  PLFLT *arg6 = (PLFLT *) 0 ;
10812  PLBOOL *arg7 = (PLBOOL *) 0 ;
10813  int val1 ;
10814  int ecode1 = 0 ;
10815  PyArrayObject *tmp2 = NULL ;
10816  PyArrayObject *tmp4 = NULL ;
10817  PyArrayObject *tmp5 = NULL ;
10818  PyArrayObject *tmp6 = NULL ;
10819  PyArrayObject *tmp7 = NULL ;
10820  PyObject * obj0 = 0 ;
10821  PyObject * obj1 = 0 ;
10822  PyObject * obj2 = 0 ;
10823  PyObject * obj3 = 0 ;
10824  PyObject * obj4 = 0 ;
10825  PyObject * obj5 = 0 ;
10826 
10827  if (!PyArg_ParseTuple(args,(char *)"OOOOOO:plscmap1l",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
10828  ecode1 = SWIG_AsVal_int(obj0, &val1);
10829  if (!SWIG_IsOK(ecode1)) {
10830  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plscmap1l" "', argument " "1"" of type '" "PLBOOL""'");
10831  }
10832  arg1 = (PLBOOL)(val1);
10833  {
10834  tmp2 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
10835  if ( tmp2 == NULL )
10836  return NULL;
10837  arg2 = Alen = PyArray_DIMS( tmp2 )[0];
10838  arg3 = (PLFLT *) PyArray_DATA( tmp2 );
10839  }
10840  {
10841  tmp4 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 1, 1 );
10842  if ( tmp4 == NULL )
10843  return NULL;
10844  if ( PyArray_DIMS( tmp4 )[0] != Alen )
10845  {
10846  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10847  return NULL;
10848  }
10849  arg4 = (PLFLT *) PyArray_DATA( tmp4 );
10850  }
10851  {
10852  tmp5 = (PyArrayObject *) myArray_ContiguousFromObject( obj3, NPY_PLFLT, 1, 1 );
10853  if ( tmp5 == NULL )
10854  return NULL;
10855  if ( PyArray_DIMS( tmp5 )[0] != Alen )
10856  {
10857  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10858  return NULL;
10859  }
10860  arg5 = (PLFLT *) PyArray_DATA( tmp5 );
10861  }
10862  {
10863  tmp6 = (PyArrayObject *) myArray_ContiguousFromObject( obj4, NPY_PLFLT, 1, 1 );
10864  if ( tmp6 == NULL )
10865  return NULL;
10866  if ( PyArray_DIMS( tmp6 )[0] != Alen )
10867  {
10868  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10869  return NULL;
10870  }
10871  arg6 = (PLFLT *) PyArray_DATA( tmp6 );
10872  }
10873  {
10874  tmp7 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj5, NPY_PLINT, 1, 1 );
10875  if ( tmp7 == NULL )
10876  return NULL;
10877  if ( PyArray_DIMS( tmp7 )[0] < Alen - 1 )
10878  {
10879  PyErr_SetString( PyExc_ValueError, "Vector must be at least length of others minus 1." );
10880  return NULL;
10881  }
10882  arg7 = (PLINT *) PyArray_DATA( tmp7 );
10883  }
10884  plscmap1l(arg1,arg2,(double const *)arg3,(double const *)arg4,(double const *)arg5,(double const *)arg6,(int const *)arg7);
10885  resultobj = SWIG_Py_Void();
10886  {
10887  Py_CLEAR( tmp2 );
10888  }
10889  {
10890  Py_CLEAR( tmp4 );
10891  }
10892  {
10893  Py_CLEAR( tmp5 );
10894  }
10895  {
10896  Py_CLEAR( tmp6 );
10897  }
10898  {
10899  Py_CLEAR( tmp7 );
10900  }
10901  return resultobj;
10902 fail:
10903  {
10904  Py_CLEAR( tmp2 );
10905  }
10906  {
10907  Py_CLEAR( tmp4 );
10908  }
10909  {
10910  Py_CLEAR( tmp5 );
10911  }
10912  {
10913  Py_CLEAR( tmp6 );
10914  }
10915  {
10916  Py_CLEAR( tmp7 );
10917  }
10918  return NULL;
10919 }
10920 
10921 
10922 SWIGINTERN PyObject *_wrap_plscmap1la(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
10923  PyObject *resultobj = 0;
10924  PLBOOL arg1 ;
10925  PLINT arg2 ;
10926  PLFLT *arg3 = (PLFLT *) 0 ;
10927  PLFLT *arg4 = (PLFLT *) 0 ;
10928  PLFLT *arg5 = (PLFLT *) 0 ;
10929  PLFLT *arg6 = (PLFLT *) 0 ;
10930  PLFLT *arg7 = (PLFLT *) 0 ;
10931  PLBOOL *arg8 = (PLBOOL *) 0 ;
10932  int val1 ;
10933  int ecode1 = 0 ;
10934  PyArrayObject *tmp2 = NULL ;
10935  PyArrayObject *tmp4 = NULL ;
10936  PyArrayObject *tmp5 = NULL ;
10937  PyArrayObject *tmp6 = NULL ;
10938  PyArrayObject *tmp7 = NULL ;
10939  PyArrayObject *tmp8 = NULL ;
10940  PyObject * obj0 = 0 ;
10941  PyObject * obj1 = 0 ;
10942  PyObject * obj2 = 0 ;
10943  PyObject * obj3 = 0 ;
10944  PyObject * obj4 = 0 ;
10945  PyObject * obj5 = 0 ;
10946  PyObject * obj6 = 0 ;
10947 
10948  if (!PyArg_ParseTuple(args,(char *)"OOOOOOO:plscmap1la",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
10949  ecode1 = SWIG_AsVal_int(obj0, &val1);
10950  if (!SWIG_IsOK(ecode1)) {
10951  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plscmap1la" "', argument " "1"" of type '" "PLBOOL""'");
10952  }
10953  arg1 = (PLBOOL)(val1);
10954  {
10955  tmp2 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
10956  if ( tmp2 == NULL )
10957  return NULL;
10958  arg2 = Alen = PyArray_DIMS( tmp2 )[0];
10959  arg3 = (PLFLT *) PyArray_DATA( tmp2 );
10960  }
10961  {
10962  tmp4 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 1, 1 );
10963  if ( tmp4 == NULL )
10964  return NULL;
10965  if ( PyArray_DIMS( tmp4 )[0] != Alen )
10966  {
10967  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10968  return NULL;
10969  }
10970  arg4 = (PLFLT *) PyArray_DATA( tmp4 );
10971  }
10972  {
10973  tmp5 = (PyArrayObject *) myArray_ContiguousFromObject( obj3, NPY_PLFLT, 1, 1 );
10974  if ( tmp5 == NULL )
10975  return NULL;
10976  if ( PyArray_DIMS( tmp5 )[0] != Alen )
10977  {
10978  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10979  return NULL;
10980  }
10981  arg5 = (PLFLT *) PyArray_DATA( tmp5 );
10982  }
10983  {
10984  tmp6 = (PyArrayObject *) myArray_ContiguousFromObject( obj4, NPY_PLFLT, 1, 1 );
10985  if ( tmp6 == NULL )
10986  return NULL;
10987  if ( PyArray_DIMS( tmp6 )[0] != Alen )
10988  {
10989  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
10990  return NULL;
10991  }
10992  arg6 = (PLFLT *) PyArray_DATA( tmp6 );
10993  }
10994  {
10995  tmp7 = (PyArrayObject *) myArray_ContiguousFromObject( obj5, NPY_PLFLT, 1, 1 );
10996  if ( tmp7 == NULL )
10997  return NULL;
10998  if ( PyArray_DIMS( tmp7 )[0] != Alen )
10999  {
11000  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
11001  return NULL;
11002  }
11003  arg7 = (PLFLT *) PyArray_DATA( tmp7 );
11004  }
11005  {
11006  tmp8 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj6, NPY_PLINT, 1, 1 );
11007  if ( tmp8 == NULL )
11008  return NULL;
11009  if ( PyArray_DIMS( tmp8 )[0] < Alen - 1 )
11010  {
11011  PyErr_SetString( PyExc_ValueError, "Vector must be at least length of others minus 1." );
11012  return NULL;
11013  }
11014  arg8 = (PLINT *) PyArray_DATA( tmp8 );
11015  }
11016  plscmap1la(arg1,arg2,(double const *)arg3,(double const *)arg4,(double const *)arg5,(double const *)arg6,(double const *)arg7,(int const *)arg8);
11017  resultobj = SWIG_Py_Void();
11018  {
11019  Py_CLEAR( tmp2 );
11020  }
11021  {
11022  Py_CLEAR( tmp4 );
11023  }
11024  {
11025  Py_CLEAR( tmp5 );
11026  }
11027  {
11028  Py_CLEAR( tmp6 );
11029  }
11030  {
11031  Py_CLEAR( tmp7 );
11032  }
11033  {
11034  Py_CLEAR( tmp8 );
11035  }
11036  return resultobj;
11037 fail:
11038  {
11039  Py_CLEAR( tmp2 );
11040  }
11041  {
11042  Py_CLEAR( tmp4 );
11043  }
11044  {
11045  Py_CLEAR( tmp5 );
11046  }
11047  {
11048  Py_CLEAR( tmp6 );
11049  }
11050  {
11051  Py_CLEAR( tmp7 );
11052  }
11053  {
11054  Py_CLEAR( tmp8 );
11055  }
11056  return NULL;
11057 }
11058 
11059 
11060 SWIGINTERN PyObject *_wrap_plscmap1n(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11061  PyObject *resultobj = 0;
11062  PLINT arg1 ;
11063  int val1 ;
11064  int ecode1 = 0 ;
11065  PyObject * obj0 = 0 ;
11066 
11067  if (!PyArg_ParseTuple(args,(char *)"O:plscmap1n",&obj0)) SWIG_fail;
11068  ecode1 = SWIG_AsVal_int(obj0, &val1);
11069  if (!SWIG_IsOK(ecode1)) {
11070  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plscmap1n" "', argument " "1"" of type '" "PLINT""'");
11071  }
11072  arg1 = (PLINT)(val1);
11073  plscmap1n(arg1);
11074  resultobj = SWIG_Py_Void();
11075  return resultobj;
11076 fail:
11077  return NULL;
11078 }
11079 
11080 
11081 SWIGINTERN PyObject *_wrap_plscmap1_range(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11082  PyObject *resultobj = 0;
11083  PLFLT arg1 ;
11084  PLFLT arg2 ;
11085  double val1 ;
11086  int ecode1 = 0 ;
11087  double val2 ;
11088  int ecode2 = 0 ;
11089  PyObject * obj0 = 0 ;
11090  PyObject * obj1 = 0 ;
11091 
11092  if (!PyArg_ParseTuple(args,(char *)"OO:plscmap1_range",&obj0,&obj1)) SWIG_fail;
11093  ecode1 = SWIG_AsVal_double(obj0, &val1);
11094  if (!SWIG_IsOK(ecode1)) {
11095  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plscmap1_range" "', argument " "1"" of type '" "PLFLT""'");
11096  }
11097  arg1 = (PLFLT)(val1);
11098  ecode2 = SWIG_AsVal_double(obj1, &val2);
11099  if (!SWIG_IsOK(ecode2)) {
11100  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plscmap1_range" "', argument " "2"" of type '" "PLFLT""'");
11101  }
11102  arg2 = (PLFLT)(val2);
11103  plscmap1_range(arg1,arg2);
11104  resultobj = SWIG_Py_Void();
11105  return resultobj;
11106 fail:
11107  return NULL;
11108 }
11109 
11110 
11111 SWIGINTERN PyObject *_wrap_plgcmap1_range(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11112  PyObject *resultobj = 0;
11113  PLFLT *arg1 = (PLFLT *) 0 ;
11114  PLFLT *arg2 = (PLFLT *) 0 ;
11115  PLFLT temp1 ;
11116  int res1 = SWIG_TMPOBJ ;
11117  PLFLT temp2 ;
11118  int res2 = SWIG_TMPOBJ ;
11119 
11120  arg1 = &temp1;
11121  arg2 = &temp2;
11122  if (!PyArg_ParseTuple(args,(char *)":plgcmap1_range")) SWIG_fail;
11123  plgcmap1_range(arg1,arg2);
11124  resultobj = SWIG_Py_Void();
11125  if (SWIG_IsTmpObj(res1)) {
11126  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg1)));
11127  } else {
11128  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
11129  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_double, new_flags));
11130  }
11131  if (SWIG_IsTmpObj(res2)) {
11132  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
11133  } else {
11134  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
11135  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
11136  }
11137  return resultobj;
11138 fail:
11139  return NULL;
11140 }
11141 
11142 
11143 SWIGINTERN PyObject *_wrap_plscol0(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11144  PyObject *resultobj = 0;
11145  PLINT arg1 ;
11146  PLINT arg2 ;
11147  PLINT arg3 ;
11148  PLINT arg4 ;
11149  int val1 ;
11150  int ecode1 = 0 ;
11151  int val2 ;
11152  int ecode2 = 0 ;
11153  int val3 ;
11154  int ecode3 = 0 ;
11155  int val4 ;
11156  int ecode4 = 0 ;
11157  PyObject * obj0 = 0 ;
11158  PyObject * obj1 = 0 ;
11159  PyObject * obj2 = 0 ;
11160  PyObject * obj3 = 0 ;
11161 
11162  if (!PyArg_ParseTuple(args,(char *)"OOOO:plscol0",&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
11163  ecode1 = SWIG_AsVal_int(obj0, &val1);
11164  if (!SWIG_IsOK(ecode1)) {
11165  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plscol0" "', argument " "1"" of type '" "PLINT""'");
11166  }
11167  arg1 = (PLINT)(val1);
11168  ecode2 = SWIG_AsVal_int(obj1, &val2);
11169  if (!SWIG_IsOK(ecode2)) {
11170  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plscol0" "', argument " "2"" of type '" "PLINT""'");
11171  }
11172  arg2 = (PLINT)(val2);
11173  ecode3 = SWIG_AsVal_int(obj2, &val3);
11174  if (!SWIG_IsOK(ecode3)) {
11175  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plscol0" "', argument " "3"" of type '" "PLINT""'");
11176  }
11177  arg3 = (PLINT)(val3);
11178  ecode4 = SWIG_AsVal_int(obj3, &val4);
11179  if (!SWIG_IsOK(ecode4)) {
11180  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plscol0" "', argument " "4"" of type '" "PLINT""'");
11181  }
11182  arg4 = (PLINT)(val4);
11183  plscol0(arg1,arg2,arg3,arg4);
11184  resultobj = SWIG_Py_Void();
11185  return resultobj;
11186 fail:
11187  return NULL;
11188 }
11189 
11190 
11191 SWIGINTERN PyObject *_wrap_plscol0a(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11192  PyObject *resultobj = 0;
11193  PLINT arg1 ;
11194  PLINT arg2 ;
11195  PLINT arg3 ;
11196  PLINT arg4 ;
11197  PLFLT arg5 ;
11198  int val1 ;
11199  int ecode1 = 0 ;
11200  int val2 ;
11201  int ecode2 = 0 ;
11202  int val3 ;
11203  int ecode3 = 0 ;
11204  int val4 ;
11205  int ecode4 = 0 ;
11206  double val5 ;
11207  int ecode5 = 0 ;
11208  PyObject * obj0 = 0 ;
11209  PyObject * obj1 = 0 ;
11210  PyObject * obj2 = 0 ;
11211  PyObject * obj3 = 0 ;
11212  PyObject * obj4 = 0 ;
11213 
11214  if (!PyArg_ParseTuple(args,(char *)"OOOOO:plscol0a",&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
11215  ecode1 = SWIG_AsVal_int(obj0, &val1);
11216  if (!SWIG_IsOK(ecode1)) {
11217  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plscol0a" "', argument " "1"" of type '" "PLINT""'");
11218  }
11219  arg1 = (PLINT)(val1);
11220  ecode2 = SWIG_AsVal_int(obj1, &val2);
11221  if (!SWIG_IsOK(ecode2)) {
11222  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plscol0a" "', argument " "2"" of type '" "PLINT""'");
11223  }
11224  arg2 = (PLINT)(val2);
11225  ecode3 = SWIG_AsVal_int(obj2, &val3);
11226  if (!SWIG_IsOK(ecode3)) {
11227  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plscol0a" "', argument " "3"" of type '" "PLINT""'");
11228  }
11229  arg3 = (PLINT)(val3);
11230  ecode4 = SWIG_AsVal_int(obj3, &val4);
11231  if (!SWIG_IsOK(ecode4)) {
11232  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plscol0a" "', argument " "4"" of type '" "PLINT""'");
11233  }
11234  arg4 = (PLINT)(val4);
11235  ecode5 = SWIG_AsVal_double(obj4, &val5);
11236  if (!SWIG_IsOK(ecode5)) {
11237  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plscol0a" "', argument " "5"" of type '" "PLFLT""'");
11238  }
11239  arg5 = (PLFLT)(val5);
11240  plscol0a(arg1,arg2,arg3,arg4,arg5);
11241  resultobj = SWIG_Py_Void();
11242  return resultobj;
11243 fail:
11244  return NULL;
11245 }
11246 
11247 
11248 SWIGINTERN PyObject *_wrap_plscolbg(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11249  PyObject *resultobj = 0;
11250  PLINT arg1 ;
11251  PLINT arg2 ;
11252  PLINT arg3 ;
11253  int val1 ;
11254  int ecode1 = 0 ;
11255  int val2 ;
11256  int ecode2 = 0 ;
11257  int val3 ;
11258  int ecode3 = 0 ;
11259  PyObject * obj0 = 0 ;
11260  PyObject * obj1 = 0 ;
11261  PyObject * obj2 = 0 ;
11262 
11263  if (!PyArg_ParseTuple(args,(char *)"OOO:plscolbg",&obj0,&obj1,&obj2)) SWIG_fail;
11264  ecode1 = SWIG_AsVal_int(obj0, &val1);
11265  if (!SWIG_IsOK(ecode1)) {
11266  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plscolbg" "', argument " "1"" of type '" "PLINT""'");
11267  }
11268  arg1 = (PLINT)(val1);
11269  ecode2 = SWIG_AsVal_int(obj1, &val2);
11270  if (!SWIG_IsOK(ecode2)) {
11271  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plscolbg" "', argument " "2"" of type '" "PLINT""'");
11272  }
11273  arg2 = (PLINT)(val2);
11274  ecode3 = SWIG_AsVal_int(obj2, &val3);
11275  if (!SWIG_IsOK(ecode3)) {
11276  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plscolbg" "', argument " "3"" of type '" "PLINT""'");
11277  }
11278  arg3 = (PLINT)(val3);
11279  plscolbg(arg1,arg2,arg3);
11280  resultobj = SWIG_Py_Void();
11281  return resultobj;
11282 fail:
11283  return NULL;
11284 }
11285 
11286 
11287 SWIGINTERN PyObject *_wrap_plscolbga(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11288  PyObject *resultobj = 0;
11289  PLINT arg1 ;
11290  PLINT arg2 ;
11291  PLINT arg3 ;
11292  PLFLT arg4 ;
11293  int val1 ;
11294  int ecode1 = 0 ;
11295  int val2 ;
11296  int ecode2 = 0 ;
11297  int val3 ;
11298  int ecode3 = 0 ;
11299  double val4 ;
11300  int ecode4 = 0 ;
11301  PyObject * obj0 = 0 ;
11302  PyObject * obj1 = 0 ;
11303  PyObject * obj2 = 0 ;
11304  PyObject * obj3 = 0 ;
11305 
11306  if (!PyArg_ParseTuple(args,(char *)"OOOO:plscolbga",&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
11307  ecode1 = SWIG_AsVal_int(obj0, &val1);
11308  if (!SWIG_IsOK(ecode1)) {
11309  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plscolbga" "', argument " "1"" of type '" "PLINT""'");
11310  }
11311  arg1 = (PLINT)(val1);
11312  ecode2 = SWIG_AsVal_int(obj1, &val2);
11313  if (!SWIG_IsOK(ecode2)) {
11314  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plscolbga" "', argument " "2"" of type '" "PLINT""'");
11315  }
11316  arg2 = (PLINT)(val2);
11317  ecode3 = SWIG_AsVal_int(obj2, &val3);
11318  if (!SWIG_IsOK(ecode3)) {
11319  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plscolbga" "', argument " "3"" of type '" "PLINT""'");
11320  }
11321  arg3 = (PLINT)(val3);
11322  ecode4 = SWIG_AsVal_double(obj3, &val4);
11323  if (!SWIG_IsOK(ecode4)) {
11324  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plscolbga" "', argument " "4"" of type '" "PLFLT""'");
11325  }
11326  arg4 = (PLFLT)(val4);
11327  plscolbga(arg1,arg2,arg3,arg4);
11328  resultobj = SWIG_Py_Void();
11329  return resultobj;
11330 fail:
11331  return NULL;
11332 }
11333 
11334 
11335 SWIGINTERN PyObject *_wrap_plscolor(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11336  PyObject *resultobj = 0;
11337  PLINT arg1 ;
11338  int val1 ;
11339  int ecode1 = 0 ;
11340  PyObject * obj0 = 0 ;
11341 
11342  if (!PyArg_ParseTuple(args,(char *)"O:plscolor",&obj0)) SWIG_fail;
11343  ecode1 = SWIG_AsVal_int(obj0, &val1);
11344  if (!SWIG_IsOK(ecode1)) {
11345  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plscolor" "', argument " "1"" of type '" "PLINT""'");
11346  }
11347  arg1 = (PLINT)(val1);
11348  plscolor(arg1);
11349  resultobj = SWIG_Py_Void();
11350  return resultobj;
11351 fail:
11352  return NULL;
11353 }
11354 
11355 
11356 SWIGINTERN PyObject *_wrap_plscompression(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11357  PyObject *resultobj = 0;
11358  PLINT arg1 ;
11359  int val1 ;
11360  int ecode1 = 0 ;
11361  PyObject * obj0 = 0 ;
11362 
11363  if (!PyArg_ParseTuple(args,(char *)"O:plscompression",&obj0)) SWIG_fail;
11364  ecode1 = SWIG_AsVal_int(obj0, &val1);
11365  if (!SWIG_IsOK(ecode1)) {
11366  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plscompression" "', argument " "1"" of type '" "PLINT""'");
11367  }
11368  arg1 = (PLINT)(val1);
11369  plscompression(arg1);
11370  resultobj = SWIG_Py_Void();
11371  return resultobj;
11372 fail:
11373  return NULL;
11374 }
11375 
11376 
11377 SWIGINTERN PyObject *_wrap_plsdev(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11378  PyObject *resultobj = 0;
11379  char *arg1 = (char *) 0 ;
11380  int res1 ;
11381  char *buf1 = 0 ;
11382  int alloc1 = 0 ;
11383  PyObject * obj0 = 0 ;
11384 
11385  if (!PyArg_ParseTuple(args,(char *)"O:plsdev",&obj0)) SWIG_fail;
11386  res1 = SWIG_AsCharPtrAndSize(obj0, &buf1, NULL, &alloc1);
11387  if (!SWIG_IsOK(res1)) {
11388  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "plsdev" "', argument " "1"" of type '" "char const *""'");
11389  }
11390  arg1 = (char *)(buf1);
11391  plsdev((char const *)arg1);
11392  resultobj = SWIG_Py_Void();
11393  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
11394  return resultobj;
11395 fail:
11396  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
11397  return NULL;
11398 }
11399 
11400 
11401 SWIGINTERN PyObject *_wrap_plsdidev(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11402  PyObject *resultobj = 0;
11403  PLFLT arg1 ;
11404  PLFLT arg2 ;
11405  PLFLT arg3 ;
11406  PLFLT arg4 ;
11407  double val1 ;
11408  int ecode1 = 0 ;
11409  double val2 ;
11410  int ecode2 = 0 ;
11411  double val3 ;
11412  int ecode3 = 0 ;
11413  double val4 ;
11414  int ecode4 = 0 ;
11415  PyObject * obj0 = 0 ;
11416  PyObject * obj1 = 0 ;
11417  PyObject * obj2 = 0 ;
11418  PyObject * obj3 = 0 ;
11419 
11420  if (!PyArg_ParseTuple(args,(char *)"OOOO:plsdidev",&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
11421  ecode1 = SWIG_AsVal_double(obj0, &val1);
11422  if (!SWIG_IsOK(ecode1)) {
11423  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsdidev" "', argument " "1"" of type '" "PLFLT""'");
11424  }
11425  arg1 = (PLFLT)(val1);
11426  ecode2 = SWIG_AsVal_double(obj1, &val2);
11427  if (!SWIG_IsOK(ecode2)) {
11428  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plsdidev" "', argument " "2"" of type '" "PLFLT""'");
11429  }
11430  arg2 = (PLFLT)(val2);
11431  ecode3 = SWIG_AsVal_double(obj2, &val3);
11432  if (!SWIG_IsOK(ecode3)) {
11433  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plsdidev" "', argument " "3"" of type '" "PLFLT""'");
11434  }
11435  arg3 = (PLFLT)(val3);
11436  ecode4 = SWIG_AsVal_double(obj3, &val4);
11437  if (!SWIG_IsOK(ecode4)) {
11438  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plsdidev" "', argument " "4"" of type '" "PLFLT""'");
11439  }
11440  arg4 = (PLFLT)(val4);
11441  plsdidev(arg1,arg2,arg3,arg4);
11442  resultobj = SWIG_Py_Void();
11443  return resultobj;
11444 fail:
11445  return NULL;
11446 }
11447 
11448 
11449 SWIGINTERN PyObject *_wrap_plsdimap(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11450  PyObject *resultobj = 0;
11451  PLINT arg1 ;
11452  PLINT arg2 ;
11453  PLINT arg3 ;
11454  PLINT arg4 ;
11455  PLFLT arg5 ;
11456  PLFLT arg6 ;
11457  int val1 ;
11458  int ecode1 = 0 ;
11459  int val2 ;
11460  int ecode2 = 0 ;
11461  int val3 ;
11462  int ecode3 = 0 ;
11463  int val4 ;
11464  int ecode4 = 0 ;
11465  double val5 ;
11466  int ecode5 = 0 ;
11467  double val6 ;
11468  int ecode6 = 0 ;
11469  PyObject * obj0 = 0 ;
11470  PyObject * obj1 = 0 ;
11471  PyObject * obj2 = 0 ;
11472  PyObject * obj3 = 0 ;
11473  PyObject * obj4 = 0 ;
11474  PyObject * obj5 = 0 ;
11475 
11476  if (!PyArg_ParseTuple(args,(char *)"OOOOOO:plsdimap",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
11477  ecode1 = SWIG_AsVal_int(obj0, &val1);
11478  if (!SWIG_IsOK(ecode1)) {
11479  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsdimap" "', argument " "1"" of type '" "PLINT""'");
11480  }
11481  arg1 = (PLINT)(val1);
11482  ecode2 = SWIG_AsVal_int(obj1, &val2);
11483  if (!SWIG_IsOK(ecode2)) {
11484  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plsdimap" "', argument " "2"" of type '" "PLINT""'");
11485  }
11486  arg2 = (PLINT)(val2);
11487  ecode3 = SWIG_AsVal_int(obj2, &val3);
11488  if (!SWIG_IsOK(ecode3)) {
11489  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plsdimap" "', argument " "3"" of type '" "PLINT""'");
11490  }
11491  arg3 = (PLINT)(val3);
11492  ecode4 = SWIG_AsVal_int(obj3, &val4);
11493  if (!SWIG_IsOK(ecode4)) {
11494  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plsdimap" "', argument " "4"" of type '" "PLINT""'");
11495  }
11496  arg4 = (PLINT)(val4);
11497  ecode5 = SWIG_AsVal_double(obj4, &val5);
11498  if (!SWIG_IsOK(ecode5)) {
11499  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plsdimap" "', argument " "5"" of type '" "PLFLT""'");
11500  }
11501  arg5 = (PLFLT)(val5);
11502  ecode6 = SWIG_AsVal_double(obj5, &val6);
11503  if (!SWIG_IsOK(ecode6)) {
11504  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plsdimap" "', argument " "6"" of type '" "PLFLT""'");
11505  }
11506  arg6 = (PLFLT)(val6);
11507  plsdimap(arg1,arg2,arg3,arg4,arg5,arg6);
11508  resultobj = SWIG_Py_Void();
11509  return resultobj;
11510 fail:
11511  return NULL;
11512 }
11513 
11514 
11515 SWIGINTERN PyObject *_wrap_plsdiori(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11516  PyObject *resultobj = 0;
11517  PLFLT arg1 ;
11518  double val1 ;
11519  int ecode1 = 0 ;
11520  PyObject * obj0 = 0 ;
11521 
11522  if (!PyArg_ParseTuple(args,(char *)"O:plsdiori",&obj0)) SWIG_fail;
11523  ecode1 = SWIG_AsVal_double(obj0, &val1);
11524  if (!SWIG_IsOK(ecode1)) {
11525  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsdiori" "', argument " "1"" of type '" "PLFLT""'");
11526  }
11527  arg1 = (PLFLT)(val1);
11528  plsdiori(arg1);
11529  resultobj = SWIG_Py_Void();
11530  return resultobj;
11531 fail:
11532  return NULL;
11533 }
11534 
11535 
11536 SWIGINTERN PyObject *_wrap_plsdiplt(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11537  PyObject *resultobj = 0;
11538  PLFLT arg1 ;
11539  PLFLT arg2 ;
11540  PLFLT arg3 ;
11541  PLFLT arg4 ;
11542  double val1 ;
11543  int ecode1 = 0 ;
11544  double val2 ;
11545  int ecode2 = 0 ;
11546  double val3 ;
11547  int ecode3 = 0 ;
11548  double val4 ;
11549  int ecode4 = 0 ;
11550  PyObject * obj0 = 0 ;
11551  PyObject * obj1 = 0 ;
11552  PyObject * obj2 = 0 ;
11553  PyObject * obj3 = 0 ;
11554 
11555  if (!PyArg_ParseTuple(args,(char *)"OOOO:plsdiplt",&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
11556  ecode1 = SWIG_AsVal_double(obj0, &val1);
11557  if (!SWIG_IsOK(ecode1)) {
11558  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsdiplt" "', argument " "1"" of type '" "PLFLT""'");
11559  }
11560  arg1 = (PLFLT)(val1);
11561  ecode2 = SWIG_AsVal_double(obj1, &val2);
11562  if (!SWIG_IsOK(ecode2)) {
11563  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plsdiplt" "', argument " "2"" of type '" "PLFLT""'");
11564  }
11565  arg2 = (PLFLT)(val2);
11566  ecode3 = SWIG_AsVal_double(obj2, &val3);
11567  if (!SWIG_IsOK(ecode3)) {
11568  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plsdiplt" "', argument " "3"" of type '" "PLFLT""'");
11569  }
11570  arg3 = (PLFLT)(val3);
11571  ecode4 = SWIG_AsVal_double(obj3, &val4);
11572  if (!SWIG_IsOK(ecode4)) {
11573  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plsdiplt" "', argument " "4"" of type '" "PLFLT""'");
11574  }
11575  arg4 = (PLFLT)(val4);
11576  plsdiplt(arg1,arg2,arg3,arg4);
11577  resultobj = SWIG_Py_Void();
11578  return resultobj;
11579 fail:
11580  return NULL;
11581 }
11582 
11583 
11584 SWIGINTERN PyObject *_wrap_plsdiplz(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11585  PyObject *resultobj = 0;
11586  PLFLT arg1 ;
11587  PLFLT arg2 ;
11588  PLFLT arg3 ;
11589  PLFLT arg4 ;
11590  double val1 ;
11591  int ecode1 = 0 ;
11592  double val2 ;
11593  int ecode2 = 0 ;
11594  double val3 ;
11595  int ecode3 = 0 ;
11596  double val4 ;
11597  int ecode4 = 0 ;
11598  PyObject * obj0 = 0 ;
11599  PyObject * obj1 = 0 ;
11600  PyObject * obj2 = 0 ;
11601  PyObject * obj3 = 0 ;
11602 
11603  if (!PyArg_ParseTuple(args,(char *)"OOOO:plsdiplz",&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
11604  ecode1 = SWIG_AsVal_double(obj0, &val1);
11605  if (!SWIG_IsOK(ecode1)) {
11606  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsdiplz" "', argument " "1"" of type '" "PLFLT""'");
11607  }
11608  arg1 = (PLFLT)(val1);
11609  ecode2 = SWIG_AsVal_double(obj1, &val2);
11610  if (!SWIG_IsOK(ecode2)) {
11611  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plsdiplz" "', argument " "2"" of type '" "PLFLT""'");
11612  }
11613  arg2 = (PLFLT)(val2);
11614  ecode3 = SWIG_AsVal_double(obj2, &val3);
11615  if (!SWIG_IsOK(ecode3)) {
11616  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plsdiplz" "', argument " "3"" of type '" "PLFLT""'");
11617  }
11618  arg3 = (PLFLT)(val3);
11619  ecode4 = SWIG_AsVal_double(obj3, &val4);
11620  if (!SWIG_IsOK(ecode4)) {
11621  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plsdiplz" "', argument " "4"" of type '" "PLFLT""'");
11622  }
11623  arg4 = (PLFLT)(val4);
11624  plsdiplz(arg1,arg2,arg3,arg4);
11625  resultobj = SWIG_Py_Void();
11626  return resultobj;
11627 fail:
11628  return NULL;
11629 }
11630 
11631 
11632 SWIGINTERN PyObject *_wrap_plseed(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11633  PyObject *resultobj = 0;
11634  unsigned int arg1 ;
11635  unsigned int val1 ;
11636  int ecode1 = 0 ;
11637  PyObject * obj0 = 0 ;
11638 
11639  if (!PyArg_ParseTuple(args,(char *)"O:plseed",&obj0)) SWIG_fail;
11640  ecode1 = SWIG_AsVal_unsigned_SS_int(obj0, &val1);
11641  if (!SWIG_IsOK(ecode1)) {
11642  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plseed" "', argument " "1"" of type '" "unsigned int""'");
11643  }
11644  arg1 = (unsigned int)(val1);
11645  plseed(arg1);
11646  resultobj = SWIG_Py_Void();
11647  return resultobj;
11648 fail:
11649  return NULL;
11650 }
11651 
11652 
11653 SWIGINTERN PyObject *_wrap_plsesc(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11654  PyObject *resultobj = 0;
11655  char arg1 ;
11656  char val1 ;
11657  int ecode1 = 0 ;
11658  PyObject * obj0 = 0 ;
11659 
11660  if (!PyArg_ParseTuple(args,(char *)"O:plsesc",&obj0)) SWIG_fail;
11661  ecode1 = SWIG_AsVal_char(obj0, &val1);
11662  if (!SWIG_IsOK(ecode1)) {
11663  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsesc" "', argument " "1"" of type '" "char""'");
11664  }
11665  arg1 = (char)(val1);
11666  plsesc(arg1);
11667  resultobj = SWIG_Py_Void();
11668  return resultobj;
11669 fail:
11670  return NULL;
11671 }
11672 
11673 
11674 SWIGINTERN PyObject *_wrap_plsetopt(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11675  PyObject *resultobj = 0;
11676  char *arg1 = (char *) 0 ;
11677  char *arg2 = (char *) 0 ;
11678  int res1 ;
11679  char *buf1 = 0 ;
11680  int alloc1 = 0 ;
11681  int res2 ;
11682  char *buf2 = 0 ;
11683  int alloc2 = 0 ;
11684  PyObject * obj0 = 0 ;
11685  PyObject * obj1 = 0 ;
11686  PLINT result;
11687 
11688  if (!PyArg_ParseTuple(args,(char *)"OO:plsetopt",&obj0,&obj1)) SWIG_fail;
11689  res1 = SWIG_AsCharPtrAndSize(obj0, &buf1, NULL, &alloc1);
11690  if (!SWIG_IsOK(res1)) {
11691  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "plsetopt" "', argument " "1"" of type '" "char const *""'");
11692  }
11693  arg1 = (char *)(buf1);
11694  res2 = SWIG_AsCharPtrAndSize(obj1, &buf2, NULL, &alloc2);
11695  if (!SWIG_IsOK(res2)) {
11696  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "plsetopt" "', argument " "2"" of type '" "char const *""'");
11697  }
11698  arg2 = (char *)(buf2);
11699  result = (PLINT)plsetopt((char const *)arg1,(char const *)arg2);
11700  resultobj = SWIG_From_int((int)(result));
11701  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
11702  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
11703  return resultobj;
11704 fail:
11705  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
11706  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
11707  return NULL;
11708 }
11709 
11710 
11711 SWIGINTERN PyObject *_wrap_plsfam(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11712  PyObject *resultobj = 0;
11713  PLINT arg1 ;
11714  PLINT arg2 ;
11715  PLINT arg3 ;
11716  int val1 ;
11717  int ecode1 = 0 ;
11718  int val2 ;
11719  int ecode2 = 0 ;
11720  int val3 ;
11721  int ecode3 = 0 ;
11722  PyObject * obj0 = 0 ;
11723  PyObject * obj1 = 0 ;
11724  PyObject * obj2 = 0 ;
11725 
11726  if (!PyArg_ParseTuple(args,(char *)"OOO:plsfam",&obj0,&obj1,&obj2)) SWIG_fail;
11727  ecode1 = SWIG_AsVal_int(obj0, &val1);
11728  if (!SWIG_IsOK(ecode1)) {
11729  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsfam" "', argument " "1"" of type '" "PLINT""'");
11730  }
11731  arg1 = (PLINT)(val1);
11732  ecode2 = SWIG_AsVal_int(obj1, &val2);
11733  if (!SWIG_IsOK(ecode2)) {
11734  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plsfam" "', argument " "2"" of type '" "PLINT""'");
11735  }
11736  arg2 = (PLINT)(val2);
11737  ecode3 = SWIG_AsVal_int(obj2, &val3);
11738  if (!SWIG_IsOK(ecode3)) {
11739  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plsfam" "', argument " "3"" of type '" "PLINT""'");
11740  }
11741  arg3 = (PLINT)(val3);
11742  plsfam(arg1,arg2,arg3);
11743  resultobj = SWIG_Py_Void();
11744  return resultobj;
11745 fail:
11746  return NULL;
11747 }
11748 
11749 
11750 SWIGINTERN PyObject *_wrap_plsfci(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11751  PyObject *resultobj = 0;
11752  PLUNICODE arg1 ;
11753  unsigned int val1 ;
11754  int ecode1 = 0 ;
11755  PyObject * obj0 = 0 ;
11756 
11757  if (!PyArg_ParseTuple(args,(char *)"O:plsfci",&obj0)) SWIG_fail;
11758  ecode1 = SWIG_AsVal_unsigned_SS_int(obj0, &val1);
11759  if (!SWIG_IsOK(ecode1)) {
11760  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsfci" "', argument " "1"" of type '" "PLUNICODE""'");
11761  }
11762  arg1 = (PLUNICODE)(val1);
11763  plsfci(arg1);
11764  resultobj = SWIG_Py_Void();
11765  return resultobj;
11766 fail:
11767  return NULL;
11768 }
11769 
11770 
11771 SWIGINTERN PyObject *_wrap_plsfnam(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11772  PyObject *resultobj = 0;
11773  char *arg1 = (char *) 0 ;
11774  int res1 ;
11775  char *buf1 = 0 ;
11776  int alloc1 = 0 ;
11777  PyObject * obj0 = 0 ;
11778 
11779  if (!PyArg_ParseTuple(args,(char *)"O:plsfnam",&obj0)) SWIG_fail;
11780  res1 = SWIG_AsCharPtrAndSize(obj0, &buf1, NULL, &alloc1);
11781  if (!SWIG_IsOK(res1)) {
11782  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "plsfnam" "', argument " "1"" of type '" "char const *""'");
11783  }
11784  arg1 = (char *)(buf1);
11785  plsfnam((char const *)arg1);
11786  resultobj = SWIG_Py_Void();
11787  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
11788  return resultobj;
11789 fail:
11790  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
11791  return NULL;
11792 }
11793 
11794 
11795 SWIGINTERN PyObject *_wrap_plsfont(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11796  PyObject *resultobj = 0;
11797  PLINT arg1 ;
11798  PLINT arg2 ;
11799  PLINT arg3 ;
11800  int val1 ;
11801  int ecode1 = 0 ;
11802  int val2 ;
11803  int ecode2 = 0 ;
11804  int val3 ;
11805  int ecode3 = 0 ;
11806  PyObject * obj0 = 0 ;
11807  PyObject * obj1 = 0 ;
11808  PyObject * obj2 = 0 ;
11809 
11810  if (!PyArg_ParseTuple(args,(char *)"OOO:plsfont",&obj0,&obj1,&obj2)) SWIG_fail;
11811  ecode1 = SWIG_AsVal_int(obj0, &val1);
11812  if (!SWIG_IsOK(ecode1)) {
11813  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsfont" "', argument " "1"" of type '" "PLINT""'");
11814  }
11815  arg1 = (PLINT)(val1);
11816  ecode2 = SWIG_AsVal_int(obj1, &val2);
11817  if (!SWIG_IsOK(ecode2)) {
11818  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plsfont" "', argument " "2"" of type '" "PLINT""'");
11819  }
11820  arg2 = (PLINT)(val2);
11821  ecode3 = SWIG_AsVal_int(obj2, &val3);
11822  if (!SWIG_IsOK(ecode3)) {
11823  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plsfont" "', argument " "3"" of type '" "PLINT""'");
11824  }
11825  arg3 = (PLINT)(val3);
11826  plsfont(arg1,arg2,arg3);
11827  resultobj = SWIG_Py_Void();
11828  return resultobj;
11829 fail:
11830  return NULL;
11831 }
11832 
11833 
11834 SWIGINTERN PyObject *_wrap_plshades(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
11835  PyObject *resultobj = 0;
11836  PLFLT **arg1 = (PLFLT **) 0 ;
11837  PLINT arg2 ;
11838  PLINT arg3 ;
11839  defined_func arg4 = (defined_func) 0 ;
11840  PLFLT arg5 ;
11841  PLFLT arg6 ;
11842  PLFLT arg7 ;
11843  PLFLT arg8 ;
11844  PLFLT *arg9 = (PLFLT *) 0 ;
11845  PLINT arg10 ;
11846  PLFLT arg11 ;
11847  PLINT arg12 ;
11848  PLFLT arg13 ;
11849  fill_func arg14 = (fill_func) 0 ;
11850  PLBOOL arg15 ;
11851  pltr_func arg16 = (pltr_func) 0 ;
11852  PLPointer arg17 = (PLPointer) 0 ;
11853  PyArrayObject *tmp1 = NULL ;
11854  double val5 ;
11855  int ecode5 = 0 ;
11856  double val6 ;
11857  int ecode6 = 0 ;
11858  double val7 ;
11859  int ecode7 = 0 ;
11860  double val8 ;
11861  int ecode8 = 0 ;
11862  PyArrayObject *tmp9 = NULL ;
11863  double val11 ;
11864  int ecode11 = 0 ;
11865  int val12 ;
11866  int ecode12 = 0 ;
11867  double val13 ;
11868  int ecode13 = 0 ;
11869  int val15 ;
11870  int ecode15 = 0 ;
11871  PyObject * obj0 = 0 ;
11872  PyObject * obj1 = 0 ;
11873  PyObject * obj2 = 0 ;
11874  PyObject * obj3 = 0 ;
11875  PyObject * obj4 = 0 ;
11876  PyObject * obj5 = 0 ;
11877  PyObject * obj6 = 0 ;
11878  PyObject * obj7 = 0 ;
11879  PyObject * obj8 = 0 ;
11880  PyObject * obj9 = 0 ;
11881  PyObject * obj10 = 0 ;
11882  PyObject * obj11 = 0 ;
11883 
11884  {
11885  python_pltr = 0;
11886  arg16 = NULL;
11887  }
11888  {
11889  arg17 = NULL;
11890  }
11891  {
11892  arg4 = NULL;
11893  }
11894  {
11895  arg14 = plfill;
11896  }
11897  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOOOO|OO:plshades",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9,&obj10,&obj11)) SWIG_fail;
11898  {
11899  int i, size;
11900  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 2, 2 );
11901  if ( tmp1 == NULL )
11902  return NULL;
11903  Xlen = arg2 = PyArray_DIMS( tmp1 )[0];
11904  Ylen = arg3 = PyArray_DIMS( tmp1 )[1];
11905  size = arg3;
11906  arg1 = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) arg2 );
11907  for ( i = 0; i < arg2; i++ )
11908  arg1[i] = ( (PLFLT *) PyArray_DATA( tmp1 ) + i * size );
11909  }
11910  ecode5 = SWIG_AsVal_double(obj1, &val5);
11911  if (!SWIG_IsOK(ecode5)) {
11912  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plshades" "', argument " "5"" of type '" "PLFLT""'");
11913  }
11914  arg5 = (PLFLT)(val5);
11915  ecode6 = SWIG_AsVal_double(obj2, &val6);
11916  if (!SWIG_IsOK(ecode6)) {
11917  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plshades" "', argument " "6"" of type '" "PLFLT""'");
11918  }
11919  arg6 = (PLFLT)(val6);
11920  ecode7 = SWIG_AsVal_double(obj3, &val7);
11921  if (!SWIG_IsOK(ecode7)) {
11922  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plshades" "', argument " "7"" of type '" "PLFLT""'");
11923  }
11924  arg7 = (PLFLT)(val7);
11925  ecode8 = SWIG_AsVal_double(obj4, &val8);
11926  if (!SWIG_IsOK(ecode8)) {
11927  SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "plshades" "', argument " "8"" of type '" "PLFLT""'");
11928  }
11929  arg8 = (PLFLT)(val8);
11930  {
11931  tmp9 = (PyArrayObject *) myArray_ContiguousFromObject( obj5, NPY_PLFLT, 1, 1 );
11932  if ( tmp9 == NULL )
11933  return NULL;
11934  arg10 = PyArray_DIMS( tmp9 )[0];
11935  arg9 = (PLFLT *) PyArray_DATA( tmp9 );
11936  }
11937  ecode11 = SWIG_AsVal_double(obj6, &val11);
11938  if (!SWIG_IsOK(ecode11)) {
11939  SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "plshades" "', argument " "11"" of type '" "PLFLT""'");
11940  }
11941  arg11 = (PLFLT)(val11);
11942  ecode12 = SWIG_AsVal_int(obj7, &val12);
11943  if (!SWIG_IsOK(ecode12)) {
11944  SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "plshades" "', argument " "12"" of type '" "PLINT""'");
11945  }
11946  arg12 = (PLINT)(val12);
11947  ecode13 = SWIG_AsVal_double(obj8, &val13);
11948  if (!SWIG_IsOK(ecode13)) {
11949  SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "plshades" "', argument " "13"" of type '" "PLFLT""'");
11950  }
11951  arg13 = (PLFLT)(val13);
11952  ecode15 = SWIG_AsVal_int(obj9, &val15);
11953  if (!SWIG_IsOK(ecode15)) {
11954  SWIG_exception_fail(SWIG_ArgError(ecode15), "in method '" "plshades" "', argument " "15"" of type '" "PLBOOL""'");
11955  }
11956  arg15 = (PLBOOL)(val15);
11957  if (obj10) {
11958  {
11959  // it must be a callable or None
11960  if ( obj10 == Py_None )
11961  {
11962  arg16 = NULL;
11963  }
11964  else
11965  {
11966  if ( !PyCallable_Check( (PyObject *) obj10 ) )
11967  {
11968  PyErr_SetString( PyExc_ValueError, "pltr argument must be callable" );
11969  return NULL;
11970  }
11971  arg16 = marshal_pltr( obj10 );
11972  }
11973  }
11974  }
11975  if (obj11) {
11976  {
11977  if ( obj11 == Py_None )
11978  arg17 = NULL;
11979  else
11980  {
11981  arg17 = marshal_PLPointer( obj11, 0 );
11982  }
11983  }
11984  }
11985  plshades((double const **)arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,(double const *)arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,arg17);
11986  resultobj = SWIG_Py_Void();
11987  {
11988  Py_CLEAR( tmp1 );
11989  free( arg1 );
11990  }
11991  {
11992  Py_CLEAR( tmp9 );
11993  }
11994  {
11995  cleanup_pltr();
11996  }
11997  {
11999  }
12000  return resultobj;
12001 fail:
12002  {
12003  Py_CLEAR( tmp1 );
12004  free( arg1 );
12005  }
12006  {
12007  Py_CLEAR( tmp9 );
12008  }
12009  {
12010  cleanup_pltr();
12011  }
12012  {
12014  }
12015  return NULL;
12016 }
12017 
12018 
12019 SWIGINTERN PyObject *_wrap_plshade(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12020  PyObject *resultobj = 0;
12021  PLFLT **arg1 = (PLFLT **) 0 ;
12022  PLINT arg2 ;
12023  PLINT arg3 ;
12024  defined_func arg4 = (defined_func) 0 ;
12025  PLFLT arg5 ;
12026  PLFLT arg6 ;
12027  PLFLT arg7 ;
12028  PLFLT arg8 ;
12029  PLFLT arg9 ;
12030  PLFLT arg10 ;
12031  PLINT arg11 ;
12032  PLFLT arg12 ;
12033  PLFLT arg13 ;
12034  PLINT arg14 ;
12035  PLFLT arg15 ;
12036  PLINT arg16 ;
12037  PLFLT arg17 ;
12038  fill_func arg18 = (fill_func) 0 ;
12039  PLBOOL arg19 ;
12040  pltr_func arg20 = (pltr_func) 0 ;
12041  PLPointer arg21 = (PLPointer) 0 ;
12042  PyArrayObject *tmp1 = NULL ;
12043  double val5 ;
12044  int ecode5 = 0 ;
12045  double val6 ;
12046  int ecode6 = 0 ;
12047  double val7 ;
12048  int ecode7 = 0 ;
12049  double val8 ;
12050  int ecode8 = 0 ;
12051  double val9 ;
12052  int ecode9 = 0 ;
12053  double val10 ;
12054  int ecode10 = 0 ;
12055  int val11 ;
12056  int ecode11 = 0 ;
12057  double val12 ;
12058  int ecode12 = 0 ;
12059  double val13 ;
12060  int ecode13 = 0 ;
12061  int val14 ;
12062  int ecode14 = 0 ;
12063  double val15 ;
12064  int ecode15 = 0 ;
12065  int val16 ;
12066  int ecode16 = 0 ;
12067  double val17 ;
12068  int ecode17 = 0 ;
12069  int val19 ;
12070  int ecode19 = 0 ;
12071  PyObject * obj0 = 0 ;
12072  PyObject * obj1 = 0 ;
12073  PyObject * obj2 = 0 ;
12074  PyObject * obj3 = 0 ;
12075  PyObject * obj4 = 0 ;
12076  PyObject * obj5 = 0 ;
12077  PyObject * obj6 = 0 ;
12078  PyObject * obj7 = 0 ;
12079  PyObject * obj8 = 0 ;
12080  PyObject * obj9 = 0 ;
12081  PyObject * obj10 = 0 ;
12082  PyObject * obj11 = 0 ;
12083  PyObject * obj12 = 0 ;
12084  PyObject * obj13 = 0 ;
12085  PyObject * obj14 = 0 ;
12086  PyObject * obj15 = 0 ;
12087  PyObject * obj16 = 0 ;
12088 
12089  {
12090  python_pltr = 0;
12091  arg20 = NULL;
12092  }
12093  {
12094  arg21 = NULL;
12095  }
12096  {
12097  arg4 = NULL;
12098  }
12099  {
12100  arg18 = plfill;
12101  }
12102  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOOOOOOOOO|OO:plshade",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9,&obj10,&obj11,&obj12,&obj13,&obj14,&obj15,&obj16)) SWIG_fail;
12103  {
12104  int i, size;
12105  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 2, 2 );
12106  if ( tmp1 == NULL )
12107  return NULL;
12108  Xlen = arg2 = PyArray_DIMS( tmp1 )[0];
12109  Ylen = arg3 = PyArray_DIMS( tmp1 )[1];
12110  size = arg3;
12111  arg1 = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) arg2 );
12112  for ( i = 0; i < arg2; i++ )
12113  arg1[i] = ( (PLFLT *) PyArray_DATA( tmp1 ) + i * size );
12114  }
12115  ecode5 = SWIG_AsVal_double(obj1, &val5);
12116  if (!SWIG_IsOK(ecode5)) {
12117  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plshade" "', argument " "5"" of type '" "PLFLT""'");
12118  }
12119  arg5 = (PLFLT)(val5);
12120  ecode6 = SWIG_AsVal_double(obj2, &val6);
12121  if (!SWIG_IsOK(ecode6)) {
12122  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plshade" "', argument " "6"" of type '" "PLFLT""'");
12123  }
12124  arg6 = (PLFLT)(val6);
12125  ecode7 = SWIG_AsVal_double(obj3, &val7);
12126  if (!SWIG_IsOK(ecode7)) {
12127  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plshade" "', argument " "7"" of type '" "PLFLT""'");
12128  }
12129  arg7 = (PLFLT)(val7);
12130  ecode8 = SWIG_AsVal_double(obj4, &val8);
12131  if (!SWIG_IsOK(ecode8)) {
12132  SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "plshade" "', argument " "8"" of type '" "PLFLT""'");
12133  }
12134  arg8 = (PLFLT)(val8);
12135  ecode9 = SWIG_AsVal_double(obj5, &val9);
12136  if (!SWIG_IsOK(ecode9)) {
12137  SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "plshade" "', argument " "9"" of type '" "PLFLT""'");
12138  }
12139  arg9 = (PLFLT)(val9);
12140  ecode10 = SWIG_AsVal_double(obj6, &val10);
12141  if (!SWIG_IsOK(ecode10)) {
12142  SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "plshade" "', argument " "10"" of type '" "PLFLT""'");
12143  }
12144  arg10 = (PLFLT)(val10);
12145  ecode11 = SWIG_AsVal_int(obj7, &val11);
12146  if (!SWIG_IsOK(ecode11)) {
12147  SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "plshade" "', argument " "11"" of type '" "PLINT""'");
12148  }
12149  arg11 = (PLINT)(val11);
12150  ecode12 = SWIG_AsVal_double(obj8, &val12);
12151  if (!SWIG_IsOK(ecode12)) {
12152  SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "plshade" "', argument " "12"" of type '" "PLFLT""'");
12153  }
12154  arg12 = (PLFLT)(val12);
12155  ecode13 = SWIG_AsVal_double(obj9, &val13);
12156  if (!SWIG_IsOK(ecode13)) {
12157  SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "plshade" "', argument " "13"" of type '" "PLFLT""'");
12158  }
12159  arg13 = (PLFLT)(val13);
12160  ecode14 = SWIG_AsVal_int(obj10, &val14);
12161  if (!SWIG_IsOK(ecode14)) {
12162  SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "plshade" "', argument " "14"" of type '" "PLINT""'");
12163  }
12164  arg14 = (PLINT)(val14);
12165  ecode15 = SWIG_AsVal_double(obj11, &val15);
12166  if (!SWIG_IsOK(ecode15)) {
12167  SWIG_exception_fail(SWIG_ArgError(ecode15), "in method '" "plshade" "', argument " "15"" of type '" "PLFLT""'");
12168  }
12169  arg15 = (PLFLT)(val15);
12170  ecode16 = SWIG_AsVal_int(obj12, &val16);
12171  if (!SWIG_IsOK(ecode16)) {
12172  SWIG_exception_fail(SWIG_ArgError(ecode16), "in method '" "plshade" "', argument " "16"" of type '" "PLINT""'");
12173  }
12174  arg16 = (PLINT)(val16);
12175  ecode17 = SWIG_AsVal_double(obj13, &val17);
12176  if (!SWIG_IsOK(ecode17)) {
12177  SWIG_exception_fail(SWIG_ArgError(ecode17), "in method '" "plshade" "', argument " "17"" of type '" "PLFLT""'");
12178  }
12179  arg17 = (PLFLT)(val17);
12180  ecode19 = SWIG_AsVal_int(obj14, &val19);
12181  if (!SWIG_IsOK(ecode19)) {
12182  SWIG_exception_fail(SWIG_ArgError(ecode19), "in method '" "plshade" "', argument " "19"" of type '" "PLBOOL""'");
12183  }
12184  arg19 = (PLBOOL)(val19);
12185  if (obj15) {
12186  {
12187  // it must be a callable or None
12188  if ( obj15 == Py_None )
12189  {
12190  arg20 = NULL;
12191  }
12192  else
12193  {
12194  if ( !PyCallable_Check( (PyObject *) obj15 ) )
12195  {
12196  PyErr_SetString( PyExc_ValueError, "pltr argument must be callable" );
12197  return NULL;
12198  }
12199  arg20 = marshal_pltr( obj15 );
12200  }
12201  }
12202  }
12203  if (obj16) {
12204  {
12205  if ( obj16 == Py_None )
12206  arg21 = NULL;
12207  else
12208  {
12209  arg21 = marshal_PLPointer( obj16, 0 );
12210  }
12211  }
12212  }
12213  plshade((double const **)arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,arg17,arg18,arg19,arg20,arg21);
12214  resultobj = SWIG_Py_Void();
12215  {
12216  Py_CLEAR( tmp1 );
12217  free( arg1 );
12218  }
12219  {
12220  cleanup_pltr();
12221  }
12222  {
12224  }
12225  return resultobj;
12226 fail:
12227  {
12228  Py_CLEAR( tmp1 );
12229  free( arg1 );
12230  }
12231  {
12232  cleanup_pltr();
12233  }
12234  {
12236  }
12237  return NULL;
12238 }
12239 
12240 
12241 SWIGINTERN PyObject *_wrap_plslabelfunc(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12242  PyObject *resultobj = 0;
12243  label_func arg1 = (label_func) 0 ;
12244  PLPointer arg2 = (PLPointer) 0 ;
12245  int res2 ;
12246  PyObject * obj0 = 0 ;
12247  PyObject * obj1 = 0 ;
12248 
12249  if (!PyArg_ParseTuple(args,(char *)"OO:plslabelfunc",&obj0,&obj1)) SWIG_fail;
12250  {
12251  // Release reference to previous function if applicable
12252  if ( python_label )
12253  {
12254  Py_CLEAR( python_label );
12255  python_label = 0;
12256  }
12257  // it must be a callable or None
12258  if ( obj0 == Py_None )
12259  {
12260  arg1 = NULL;
12261  }
12262  else
12263  {
12264  if ( !PyCallable_Check( (PyObject *) obj0 ) )
12265  {
12266  PyErr_SetString( PyExc_ValueError, "label_func argument must be callable" );
12267  return NULL;
12268  }
12269  // hold a reference to it
12270  Py_XINCREF( (PyObject *) obj0 );
12271  python_label = (PyObject *) obj0;
12272  // this function handles calling the python function
12273  arg1 = do_label_callback;
12274  }
12275  }
12276  res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2), 0, 0);
12277  if (!SWIG_IsOK(res2)) {
12278  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "plslabelfunc" "', argument " "2"" of type '" "PLPointer""'");
12279  }
12280  plslabelfunc(arg1,arg2);
12281  resultobj = SWIG_Py_Void();
12282  return resultobj;
12283 fail:
12284  return NULL;
12285 }
12286 
12287 
12288 SWIGINTERN PyObject *_wrap_plsmaj(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12289  PyObject *resultobj = 0;
12290  PLFLT arg1 ;
12291  PLFLT arg2 ;
12292  double val1 ;
12293  int ecode1 = 0 ;
12294  double val2 ;
12295  int ecode2 = 0 ;
12296  PyObject * obj0 = 0 ;
12297  PyObject * obj1 = 0 ;
12298 
12299  if (!PyArg_ParseTuple(args,(char *)"OO:plsmaj",&obj0,&obj1)) SWIG_fail;
12300  ecode1 = SWIG_AsVal_double(obj0, &val1);
12301  if (!SWIG_IsOK(ecode1)) {
12302  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsmaj" "', argument " "1"" of type '" "PLFLT""'");
12303  }
12304  arg1 = (PLFLT)(val1);
12305  ecode2 = SWIG_AsVal_double(obj1, &val2);
12306  if (!SWIG_IsOK(ecode2)) {
12307  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plsmaj" "', argument " "2"" of type '" "PLFLT""'");
12308  }
12309  arg2 = (PLFLT)(val2);
12310  plsmaj(arg1,arg2);
12311  resultobj = SWIG_Py_Void();
12312  return resultobj;
12313 fail:
12314  return NULL;
12315 }
12316 
12317 
12318 SWIGINTERN PyObject *_wrap_plsmem(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12319  PyObject *resultobj = 0;
12320  PLINT arg1 ;
12321  PLINT arg2 ;
12322  void *arg3 = (void *) 0 ;
12323  int val1 ;
12324  int ecode1 = 0 ;
12325  int val2 ;
12326  int ecode2 = 0 ;
12327  int res3 ;
12328  Py_ssize_t size3 = 0 ;
12329  void *buf3 = 0 ;
12330  PyObject * obj0 = 0 ;
12331  PyObject * obj1 = 0 ;
12332  PyObject * obj2 = 0 ;
12333 
12334  if (!PyArg_ParseTuple(args,(char *)"OOO:plsmem",&obj0,&obj1,&obj2)) SWIG_fail;
12335  ecode1 = SWIG_AsVal_int(obj0, &val1);
12336  if (!SWIG_IsOK(ecode1)) {
12337  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsmem" "', argument " "1"" of type '" "PLINT""'");
12338  }
12339  arg1 = (PLINT)(val1);
12340  ecode2 = SWIG_AsVal_int(obj1, &val2);
12341  if (!SWIG_IsOK(ecode2)) {
12342  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plsmem" "', argument " "2"" of type '" "PLINT""'");
12343  }
12344  arg2 = (PLINT)(val2);
12345  {
12346  res3 = PyObject_AsWriteBuffer(obj2, &buf3, &size3);
12347  if (res3<0) {
12348  PyErr_Clear();
12349  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "plsmem" "', argument " "3"" of type '" "(void * plotmem, SIZE)""'");
12350  }
12351  arg3 = (void *) buf3;
12352  }
12353  plsmem(arg1,arg2,arg3);
12354  resultobj = SWIG_Py_Void();
12355  return resultobj;
12356 fail:
12357  return NULL;
12358 }
12359 
12360 
12361 SWIGINTERN PyObject *_wrap_plsmema(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12362  PyObject *resultobj = 0;
12363  PLINT arg1 ;
12364  PLINT arg2 ;
12365  void *arg3 = (void *) 0 ;
12366  int val1 ;
12367  int ecode1 = 0 ;
12368  int val2 ;
12369  int ecode2 = 0 ;
12370  int res3 ;
12371  Py_ssize_t size3 = 0 ;
12372  void *buf3 = 0 ;
12373  PyObject * obj0 = 0 ;
12374  PyObject * obj1 = 0 ;
12375  PyObject * obj2 = 0 ;
12376 
12377  if (!PyArg_ParseTuple(args,(char *)"OOO:plsmema",&obj0,&obj1,&obj2)) SWIG_fail;
12378  ecode1 = SWIG_AsVal_int(obj0, &val1);
12379  if (!SWIG_IsOK(ecode1)) {
12380  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsmema" "', argument " "1"" of type '" "PLINT""'");
12381  }
12382  arg1 = (PLINT)(val1);
12383  ecode2 = SWIG_AsVal_int(obj1, &val2);
12384  if (!SWIG_IsOK(ecode2)) {
12385  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plsmema" "', argument " "2"" of type '" "PLINT""'");
12386  }
12387  arg2 = (PLINT)(val2);
12388  {
12389  res3 = PyObject_AsWriteBuffer(obj2, &buf3, &size3);
12390  if (res3<0) {
12391  PyErr_Clear();
12392  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "plsmema" "', argument " "3"" of type '" "(void * plotmem, SIZE)""'");
12393  }
12394  arg3 = (void *) buf3;
12395  }
12396  plsmema(arg1,arg2,arg3);
12397  resultobj = SWIG_Py_Void();
12398  return resultobj;
12399 fail:
12400  return NULL;
12401 }
12402 
12403 
12404 SWIGINTERN PyObject *_wrap_plsmin(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12405  PyObject *resultobj = 0;
12406  PLFLT arg1 ;
12407  PLFLT arg2 ;
12408  double val1 ;
12409  int ecode1 = 0 ;
12410  double val2 ;
12411  int ecode2 = 0 ;
12412  PyObject * obj0 = 0 ;
12413  PyObject * obj1 = 0 ;
12414 
12415  if (!PyArg_ParseTuple(args,(char *)"OO:plsmin",&obj0,&obj1)) SWIG_fail;
12416  ecode1 = SWIG_AsVal_double(obj0, &val1);
12417  if (!SWIG_IsOK(ecode1)) {
12418  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsmin" "', argument " "1"" of type '" "PLFLT""'");
12419  }
12420  arg1 = (PLFLT)(val1);
12421  ecode2 = SWIG_AsVal_double(obj1, &val2);
12422  if (!SWIG_IsOK(ecode2)) {
12423  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plsmin" "', argument " "2"" of type '" "PLFLT""'");
12424  }
12425  arg2 = (PLFLT)(val2);
12426  plsmin(arg1,arg2);
12427  resultobj = SWIG_Py_Void();
12428  return resultobj;
12429 fail:
12430  return NULL;
12431 }
12432 
12433 
12434 SWIGINTERN PyObject *_wrap_plsori(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12435  PyObject *resultobj = 0;
12436  PLINT arg1 ;
12437  int val1 ;
12438  int ecode1 = 0 ;
12439  PyObject * obj0 = 0 ;
12440 
12441  if (!PyArg_ParseTuple(args,(char *)"O:plsori",&obj0)) SWIG_fail;
12442  ecode1 = SWIG_AsVal_int(obj0, &val1);
12443  if (!SWIG_IsOK(ecode1)) {
12444  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsori" "', argument " "1"" of type '" "PLINT""'");
12445  }
12446  arg1 = (PLINT)(val1);
12447  plsori(arg1);
12448  resultobj = SWIG_Py_Void();
12449  return resultobj;
12450 fail:
12451  return NULL;
12452 }
12453 
12454 
12455 SWIGINTERN PyObject *_wrap_plspage(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12456  PyObject *resultobj = 0;
12457  PLFLT arg1 ;
12458  PLFLT arg2 ;
12459  PLINT arg3 ;
12460  PLINT arg4 ;
12461  PLINT arg5 ;
12462  PLINT arg6 ;
12463  double val1 ;
12464  int ecode1 = 0 ;
12465  double val2 ;
12466  int ecode2 = 0 ;
12467  int val3 ;
12468  int ecode3 = 0 ;
12469  int val4 ;
12470  int ecode4 = 0 ;
12471  int val5 ;
12472  int ecode5 = 0 ;
12473  int val6 ;
12474  int ecode6 = 0 ;
12475  PyObject * obj0 = 0 ;
12476  PyObject * obj1 = 0 ;
12477  PyObject * obj2 = 0 ;
12478  PyObject * obj3 = 0 ;
12479  PyObject * obj4 = 0 ;
12480  PyObject * obj5 = 0 ;
12481 
12482  if (!PyArg_ParseTuple(args,(char *)"OOOOOO:plspage",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
12483  ecode1 = SWIG_AsVal_double(obj0, &val1);
12484  if (!SWIG_IsOK(ecode1)) {
12485  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plspage" "', argument " "1"" of type '" "PLFLT""'");
12486  }
12487  arg1 = (PLFLT)(val1);
12488  ecode2 = SWIG_AsVal_double(obj1, &val2);
12489  if (!SWIG_IsOK(ecode2)) {
12490  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plspage" "', argument " "2"" of type '" "PLFLT""'");
12491  }
12492  arg2 = (PLFLT)(val2);
12493  ecode3 = SWIG_AsVal_int(obj2, &val3);
12494  if (!SWIG_IsOK(ecode3)) {
12495  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plspage" "', argument " "3"" of type '" "PLINT""'");
12496  }
12497  arg3 = (PLINT)(val3);
12498  ecode4 = SWIG_AsVal_int(obj3, &val4);
12499  if (!SWIG_IsOK(ecode4)) {
12500  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plspage" "', argument " "4"" of type '" "PLINT""'");
12501  }
12502  arg4 = (PLINT)(val4);
12503  ecode5 = SWIG_AsVal_int(obj4, &val5);
12504  if (!SWIG_IsOK(ecode5)) {
12505  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plspage" "', argument " "5"" of type '" "PLINT""'");
12506  }
12507  arg5 = (PLINT)(val5);
12508  ecode6 = SWIG_AsVal_int(obj5, &val6);
12509  if (!SWIG_IsOK(ecode6)) {
12510  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plspage" "', argument " "6"" of type '" "PLINT""'");
12511  }
12512  arg6 = (PLINT)(val6);
12513  plspage(arg1,arg2,arg3,arg4,arg5,arg6);
12514  resultobj = SWIG_Py_Void();
12515  return resultobj;
12516 fail:
12517  return NULL;
12518 }
12519 
12520 
12521 SWIGINTERN PyObject *_wrap_plspal0(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12522  PyObject *resultobj = 0;
12523  char *arg1 = (char *) 0 ;
12524  int res1 ;
12525  char *buf1 = 0 ;
12526  int alloc1 = 0 ;
12527  PyObject * obj0 = 0 ;
12528 
12529  if (!PyArg_ParseTuple(args,(char *)"O:plspal0",&obj0)) SWIG_fail;
12530  res1 = SWIG_AsCharPtrAndSize(obj0, &buf1, NULL, &alloc1);
12531  if (!SWIG_IsOK(res1)) {
12532  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "plspal0" "', argument " "1"" of type '" "char const *""'");
12533  }
12534  arg1 = (char *)(buf1);
12535  plspal0((char const *)arg1);
12536  resultobj = SWIG_Py_Void();
12537  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
12538  return resultobj;
12539 fail:
12540  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
12541  return NULL;
12542 }
12543 
12544 
12545 SWIGINTERN PyObject *_wrap_plspal1(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12546  PyObject *resultobj = 0;
12547  char *arg1 = (char *) 0 ;
12548  PLBOOL arg2 ;
12549  int res1 ;
12550  char *buf1 = 0 ;
12551  int alloc1 = 0 ;
12552  int val2 ;
12553  int ecode2 = 0 ;
12554  PyObject * obj0 = 0 ;
12555  PyObject * obj1 = 0 ;
12556 
12557  if (!PyArg_ParseTuple(args,(char *)"OO:plspal1",&obj0,&obj1)) SWIG_fail;
12558  res1 = SWIG_AsCharPtrAndSize(obj0, &buf1, NULL, &alloc1);
12559  if (!SWIG_IsOK(res1)) {
12560  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "plspal1" "', argument " "1"" of type '" "char const *""'");
12561  }
12562  arg1 = (char *)(buf1);
12563  ecode2 = SWIG_AsVal_int(obj1, &val2);
12564  if (!SWIG_IsOK(ecode2)) {
12565  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plspal1" "', argument " "2"" of type '" "PLBOOL""'");
12566  }
12567  arg2 = (PLBOOL)(val2);
12568  plspal1((char const *)arg1,arg2);
12569  resultobj = SWIG_Py_Void();
12570  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
12571  return resultobj;
12572 fail:
12573  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
12574  return NULL;
12575 }
12576 
12577 
12578 SWIGINTERN PyObject *_wrap_plspause(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12579  PyObject *resultobj = 0;
12580  PLBOOL arg1 ;
12581  int val1 ;
12582  int ecode1 = 0 ;
12583  PyObject * obj0 = 0 ;
12584 
12585  if (!PyArg_ParseTuple(args,(char *)"O:plspause",&obj0)) SWIG_fail;
12586  ecode1 = SWIG_AsVal_int(obj0, &val1);
12587  if (!SWIG_IsOK(ecode1)) {
12588  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plspause" "', argument " "1"" of type '" "PLBOOL""'");
12589  }
12590  arg1 = (PLBOOL)(val1);
12591  plspause(arg1);
12592  resultobj = SWIG_Py_Void();
12593  return resultobj;
12594 fail:
12595  return NULL;
12596 }
12597 
12598 
12599 SWIGINTERN PyObject *_wrap_plsstrm(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12600  PyObject *resultobj = 0;
12601  PLINT arg1 ;
12602  int val1 ;
12603  int ecode1 = 0 ;
12604  PyObject * obj0 = 0 ;
12605 
12606  if (!PyArg_ParseTuple(args,(char *)"O:plsstrm",&obj0)) SWIG_fail;
12607  ecode1 = SWIG_AsVal_int(obj0, &val1);
12608  if (!SWIG_IsOK(ecode1)) {
12609  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsstrm" "', argument " "1"" of type '" "PLINT""'");
12610  }
12611  arg1 = (PLINT)(val1);
12612  plsstrm(arg1);
12613  resultobj = SWIG_Py_Void();
12614  return resultobj;
12615 fail:
12616  return NULL;
12617 }
12618 
12619 
12620 SWIGINTERN PyObject *_wrap_plssub(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12621  PyObject *resultobj = 0;
12622  PLINT arg1 ;
12623  PLINT arg2 ;
12624  int val1 ;
12625  int ecode1 = 0 ;
12626  int val2 ;
12627  int ecode2 = 0 ;
12628  PyObject * obj0 = 0 ;
12629  PyObject * obj1 = 0 ;
12630 
12631  if (!PyArg_ParseTuple(args,(char *)"OO:plssub",&obj0,&obj1)) SWIG_fail;
12632  ecode1 = SWIG_AsVal_int(obj0, &val1);
12633  if (!SWIG_IsOK(ecode1)) {
12634  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plssub" "', argument " "1"" of type '" "PLINT""'");
12635  }
12636  arg1 = (PLINT)(val1);
12637  ecode2 = SWIG_AsVal_int(obj1, &val2);
12638  if (!SWIG_IsOK(ecode2)) {
12639  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plssub" "', argument " "2"" of type '" "PLINT""'");
12640  }
12641  arg2 = (PLINT)(val2);
12642  plssub(arg1,arg2);
12643  resultobj = SWIG_Py_Void();
12644  return resultobj;
12645 fail:
12646  return NULL;
12647 }
12648 
12649 
12650 SWIGINTERN PyObject *_wrap_plssym(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12651  PyObject *resultobj = 0;
12652  PLFLT arg1 ;
12653  PLFLT arg2 ;
12654  double val1 ;
12655  int ecode1 = 0 ;
12656  double val2 ;
12657  int ecode2 = 0 ;
12658  PyObject * obj0 = 0 ;
12659  PyObject * obj1 = 0 ;
12660 
12661  if (!PyArg_ParseTuple(args,(char *)"OO:plssym",&obj0,&obj1)) SWIG_fail;
12662  ecode1 = SWIG_AsVal_double(obj0, &val1);
12663  if (!SWIG_IsOK(ecode1)) {
12664  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plssym" "', argument " "1"" of type '" "PLFLT""'");
12665  }
12666  arg1 = (PLFLT)(val1);
12667  ecode2 = SWIG_AsVal_double(obj1, &val2);
12668  if (!SWIG_IsOK(ecode2)) {
12669  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plssym" "', argument " "2"" of type '" "PLFLT""'");
12670  }
12671  arg2 = (PLFLT)(val2);
12672  plssym(arg1,arg2);
12673  resultobj = SWIG_Py_Void();
12674  return resultobj;
12675 fail:
12676  return NULL;
12677 }
12678 
12679 
12680 SWIGINTERN PyObject *_wrap_plstar(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12681  PyObject *resultobj = 0;
12682  PLINT arg1 ;
12683  PLINT arg2 ;
12684  int val1 ;
12685  int ecode1 = 0 ;
12686  int val2 ;
12687  int ecode2 = 0 ;
12688  PyObject * obj0 = 0 ;
12689  PyObject * obj1 = 0 ;
12690 
12691  if (!PyArg_ParseTuple(args,(char *)"OO:plstar",&obj0,&obj1)) SWIG_fail;
12692  ecode1 = SWIG_AsVal_int(obj0, &val1);
12693  if (!SWIG_IsOK(ecode1)) {
12694  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plstar" "', argument " "1"" of type '" "PLINT""'");
12695  }
12696  arg1 = (PLINT)(val1);
12697  ecode2 = SWIG_AsVal_int(obj1, &val2);
12698  if (!SWIG_IsOK(ecode2)) {
12699  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plstar" "', argument " "2"" of type '" "PLINT""'");
12700  }
12701  arg2 = (PLINT)(val2);
12702  plstar(arg1,arg2);
12703  resultobj = SWIG_Py_Void();
12704  return resultobj;
12705 fail:
12706  return NULL;
12707 }
12708 
12709 
12710 SWIGINTERN PyObject *_wrap_plstart(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12711  PyObject *resultobj = 0;
12712  char *arg1 = (char *) 0 ;
12713  PLINT arg2 ;
12714  PLINT arg3 ;
12715  int res1 ;
12716  char *buf1 = 0 ;
12717  int alloc1 = 0 ;
12718  int val2 ;
12719  int ecode2 = 0 ;
12720  int val3 ;
12721  int ecode3 = 0 ;
12722  PyObject * obj0 = 0 ;
12723  PyObject * obj1 = 0 ;
12724  PyObject * obj2 = 0 ;
12725 
12726  if (!PyArg_ParseTuple(args,(char *)"OOO:plstart",&obj0,&obj1,&obj2)) SWIG_fail;
12727  res1 = SWIG_AsCharPtrAndSize(obj0, &buf1, NULL, &alloc1);
12728  if (!SWIG_IsOK(res1)) {
12729  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "plstart" "', argument " "1"" of type '" "char const *""'");
12730  }
12731  arg1 = (char *)(buf1);
12732  ecode2 = SWIG_AsVal_int(obj1, &val2);
12733  if (!SWIG_IsOK(ecode2)) {
12734  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plstart" "', argument " "2"" of type '" "PLINT""'");
12735  }
12736  arg2 = (PLINT)(val2);
12737  ecode3 = SWIG_AsVal_int(obj2, &val3);
12738  if (!SWIG_IsOK(ecode3)) {
12739  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plstart" "', argument " "3"" of type '" "PLINT""'");
12740  }
12741  arg3 = (PLINT)(val3);
12742  plstart((char const *)arg1,arg2,arg3);
12743  resultobj = SWIG_Py_Void();
12744  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
12745  return resultobj;
12746 fail:
12747  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
12748  return NULL;
12749 }
12750 
12751 
12752 SWIGINTERN PyObject *_wrap_plstransform(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12753  PyObject *resultobj = 0;
12754  ct_func arg1 = (ct_func) 0 ;
12755  PLPointer arg2 = (PLPointer) 0 ;
12756  int res2 ;
12757  PyObject * obj0 = 0 ;
12758  PyObject * obj1 = 0 ;
12759 
12760  {
12761  python_ct = 0;
12762  arg1 = NULL;
12763  }
12764  if (!PyArg_ParseTuple(args,(char *)"|OO:plstransform",&obj0,&obj1)) SWIG_fail;
12765  if (obj0) {
12766  {
12767  if ( python_ct )
12768  cleanup_ct();
12769  // it must be a callable or none
12770  if ( obj0 == Py_None )
12771  {
12772  arg1 = NULL;
12773  }
12774  else
12775  {
12776  if ( !PyCallable_Check( (PyObject *) obj0 ) )
12777  {
12778  PyErr_SetString( PyExc_ValueError, "coordinate transform argument must be callable" );
12779  return NULL;
12780  }
12781  arg1 = marshal_ct( obj0 );
12782  }
12783  }
12784  }
12785  if (obj1) {
12786  res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2), 0, 0);
12787  if (!SWIG_IsOK(res2)) {
12788  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "plstransform" "', argument " "2"" of type '" "PLPointer""'");
12789  }
12790  }
12791  plstransform(arg1,arg2);
12792  resultobj = SWIG_Py_Void();
12793  return resultobj;
12794 fail:
12795  return NULL;
12796 }
12797 
12798 
12799 SWIGINTERN PyObject *_wrap_plstring(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12800  PyObject *resultobj = 0;
12801  PLINT arg1 ;
12802  PLFLT *arg2 = (PLFLT *) 0 ;
12803  PLFLT *arg3 = (PLFLT *) 0 ;
12804  char *arg4 = (char *) 0 ;
12805  PyArrayObject *tmp1 = NULL ;
12806  PyArrayObject *tmp3 = NULL ;
12807  int res4 ;
12808  char *buf4 = 0 ;
12809  int alloc4 = 0 ;
12810  PyObject * obj0 = 0 ;
12811  PyObject * obj1 = 0 ;
12812  PyObject * obj2 = 0 ;
12813 
12814  if (!PyArg_ParseTuple(args,(char *)"OOO:plstring",&obj0,&obj1,&obj2)) SWIG_fail;
12815  {
12816  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
12817  if ( tmp1 == NULL )
12818  return NULL;
12819  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
12820  arg2 = (PLFLT *) PyArray_DATA( tmp1 );
12821  }
12822  {
12823  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
12824  if ( tmp3 == NULL )
12825  return NULL;
12826  if ( PyArray_DIMS( tmp3 )[0] != Alen )
12827  {
12828  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
12829  return NULL;
12830  }
12831  arg3 = (PLFLT *) PyArray_DATA( tmp3 );
12832  }
12833  res4 = SWIG_AsCharPtrAndSize(obj2, &buf4, NULL, &alloc4);
12834  if (!SWIG_IsOK(res4)) {
12835  SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "plstring" "', argument " "4"" of type '" "char const *""'");
12836  }
12837  arg4 = (char *)(buf4);
12838  plstring(arg1,(double const *)arg2,(double const *)arg3,(char const *)arg4);
12839  resultobj = SWIG_Py_Void();
12840  {
12841  Py_CLEAR( tmp1 );
12842  }
12843  {
12844  Py_CLEAR( tmp3 );
12845  }
12846  if (alloc4 == SWIG_NEWOBJ) free((char*)buf4);
12847  return resultobj;
12848 fail:
12849  {
12850  Py_CLEAR( tmp1 );
12851  }
12852  {
12853  Py_CLEAR( tmp3 );
12854  }
12855  if (alloc4 == SWIG_NEWOBJ) free((char*)buf4);
12856  return NULL;
12857 }
12858 
12859 
12860 SWIGINTERN PyObject *_wrap_plstring3(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12861  PyObject *resultobj = 0;
12862  PLINT arg1 ;
12863  PLFLT *arg2 = (PLFLT *) 0 ;
12864  PLFLT *arg3 = (PLFLT *) 0 ;
12865  PLFLT *arg4 = (PLFLT *) 0 ;
12866  char *arg5 = (char *) 0 ;
12867  PyArrayObject *tmp1 = NULL ;
12868  PyArrayObject *tmp3 = NULL ;
12869  PyArrayObject *tmp4 = NULL ;
12870  int res5 ;
12871  char *buf5 = 0 ;
12872  int alloc5 = 0 ;
12873  PyObject * obj0 = 0 ;
12874  PyObject * obj1 = 0 ;
12875  PyObject * obj2 = 0 ;
12876  PyObject * obj3 = 0 ;
12877 
12878  if (!PyArg_ParseTuple(args,(char *)"OOOO:plstring3",&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
12879  {
12880  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
12881  if ( tmp1 == NULL )
12882  return NULL;
12883  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
12884  arg2 = (PLFLT *) PyArray_DATA( tmp1 );
12885  }
12886  {
12887  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
12888  if ( tmp3 == NULL )
12889  return NULL;
12890  if ( PyArray_DIMS( tmp3 )[0] != Alen )
12891  {
12892  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
12893  return NULL;
12894  }
12895  arg3 = (PLFLT *) PyArray_DATA( tmp3 );
12896  }
12897  {
12898  tmp4 = (PyArrayObject *) myArray_ContiguousFromObject( obj2, NPY_PLFLT, 1, 1 );
12899  if ( tmp4 == NULL )
12900  return NULL;
12901  if ( PyArray_DIMS( tmp4 )[0] != Alen )
12902  {
12903  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
12904  return NULL;
12905  }
12906  arg4 = (PLFLT *) PyArray_DATA( tmp4 );
12907  }
12908  res5 = SWIG_AsCharPtrAndSize(obj3, &buf5, NULL, &alloc5);
12909  if (!SWIG_IsOK(res5)) {
12910  SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "plstring3" "', argument " "5"" of type '" "char const *""'");
12911  }
12912  arg5 = (char *)(buf5);
12913  plstring3(arg1,(double const *)arg2,(double const *)arg3,(double const *)arg4,(char const *)arg5);
12914  resultobj = SWIG_Py_Void();
12915  {
12916  Py_CLEAR( tmp1 );
12917  }
12918  {
12919  Py_CLEAR( tmp3 );
12920  }
12921  {
12922  Py_CLEAR( tmp4 );
12923  }
12924  if (alloc5 == SWIG_NEWOBJ) free((char*)buf5);
12925  return resultobj;
12926 fail:
12927  {
12928  Py_CLEAR( tmp1 );
12929  }
12930  {
12931  Py_CLEAR( tmp3 );
12932  }
12933  {
12934  Py_CLEAR( tmp4 );
12935  }
12936  if (alloc5 == SWIG_NEWOBJ) free((char*)buf5);
12937  return NULL;
12938 }
12939 
12940 
12941 SWIGINTERN PyObject *_wrap_plstripa(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12942  PyObject *resultobj = 0;
12943  PLINT arg1 ;
12944  PLINT arg2 ;
12945  PLFLT arg3 ;
12946  PLFLT arg4 ;
12947  int val1 ;
12948  int ecode1 = 0 ;
12949  int val2 ;
12950  int ecode2 = 0 ;
12951  double val3 ;
12952  int ecode3 = 0 ;
12953  double val4 ;
12954  int ecode4 = 0 ;
12955  PyObject * obj0 = 0 ;
12956  PyObject * obj1 = 0 ;
12957  PyObject * obj2 = 0 ;
12958  PyObject * obj3 = 0 ;
12959 
12960  if (!PyArg_ParseTuple(args,(char *)"OOOO:plstripa",&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
12961  ecode1 = SWIG_AsVal_int(obj0, &val1);
12962  if (!SWIG_IsOK(ecode1)) {
12963  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plstripa" "', argument " "1"" of type '" "PLINT""'");
12964  }
12965  arg1 = (PLINT)(val1);
12966  ecode2 = SWIG_AsVal_int(obj1, &val2);
12967  if (!SWIG_IsOK(ecode2)) {
12968  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plstripa" "', argument " "2"" of type '" "PLINT""'");
12969  }
12970  arg2 = (PLINT)(val2);
12971  ecode3 = SWIG_AsVal_double(obj2, &val3);
12972  if (!SWIG_IsOK(ecode3)) {
12973  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plstripa" "', argument " "3"" of type '" "PLFLT""'");
12974  }
12975  arg3 = (PLFLT)(val3);
12976  ecode4 = SWIG_AsVal_double(obj3, &val4);
12977  if (!SWIG_IsOK(ecode4)) {
12978  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plstripa" "', argument " "4"" of type '" "PLFLT""'");
12979  }
12980  arg4 = (PLFLT)(val4);
12981  plstripa(arg1,arg2,arg3,arg4);
12982  resultobj = SWIG_Py_Void();
12983  return resultobj;
12984 fail:
12985  return NULL;
12986 }
12987 
12988 
12989 SWIGINTERN PyObject *_wrap_plstripc(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
12990  PyObject *resultobj = 0;
12991  PLINT *arg1 = (PLINT *) 0 ;
12992  char *arg2 = (char *) 0 ;
12993  char *arg3 = (char *) 0 ;
12994  PLFLT arg4 ;
12995  PLFLT arg5 ;
12996  PLFLT arg6 ;
12997  PLFLT arg7 ;
12998  PLFLT arg8 ;
12999  PLFLT arg9 ;
13000  PLFLT arg10 ;
13001  PLBOOL arg11 ;
13002  PLBOOL arg12 ;
13003  PLINT arg13 ;
13004  PLINT arg14 ;
13005  PLINT *arg15 = (PLINT *) 0 ;
13006  PLINT *arg16 = (PLINT *) 0 ;
13007  char **arg17 ;
13008  char *arg18 = (char *) 0 ;
13009  char *arg19 = (char *) 0 ;
13010  char *arg20 = (char *) 0 ;
13011  PLINT temp1 ;
13012  int res1 = SWIG_TMPOBJ ;
13013  int res2 ;
13014  char *buf2 = 0 ;
13015  int alloc2 = 0 ;
13016  int res3 ;
13017  char *buf3 = 0 ;
13018  int alloc3 = 0 ;
13019  double val4 ;
13020  int ecode4 = 0 ;
13021  double val5 ;
13022  int ecode5 = 0 ;
13023  double val6 ;
13024  int ecode6 = 0 ;
13025  double val7 ;
13026  int ecode7 = 0 ;
13027  double val8 ;
13028  int ecode8 = 0 ;
13029  double val9 ;
13030  int ecode9 = 0 ;
13031  double val10 ;
13032  int ecode10 = 0 ;
13033  int val11 ;
13034  int ecode11 = 0 ;
13035  int val12 ;
13036  int ecode12 = 0 ;
13037  int val13 ;
13038  int ecode13 = 0 ;
13039  int val14 ;
13040  int ecode14 = 0 ;
13041  PyArrayObject *tmp15 = NULL ;
13042  PyArrayObject *tmp16 = NULL ;
13043  char **tmp17 = NULL ;
13044  int res18 ;
13045  char *buf18 = 0 ;
13046  int alloc18 = 0 ;
13047  int res19 ;
13048  char *buf19 = 0 ;
13049  int alloc19 = 0 ;
13050  int res20 ;
13051  char *buf20 = 0 ;
13052  int alloc20 = 0 ;
13053  PyObject * obj0 = 0 ;
13054  PyObject * obj1 = 0 ;
13055  PyObject * obj2 = 0 ;
13056  PyObject * obj3 = 0 ;
13057  PyObject * obj4 = 0 ;
13058  PyObject * obj5 = 0 ;
13059  PyObject * obj6 = 0 ;
13060  PyObject * obj7 = 0 ;
13061  PyObject * obj8 = 0 ;
13062  PyObject * obj9 = 0 ;
13063  PyObject * obj10 = 0 ;
13064  PyObject * obj11 = 0 ;
13065  PyObject * obj12 = 0 ;
13066  PyObject * obj13 = 0 ;
13067  PyObject * obj14 = 0 ;
13068  PyObject * obj15 = 0 ;
13069  PyObject * obj16 = 0 ;
13070  PyObject * obj17 = 0 ;
13071  PyObject * obj18 = 0 ;
13072 
13073  arg1 = &temp1;
13074  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOOOOOOOOOOOOO:plstripc",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9,&obj10,&obj11,&obj12,&obj13,&obj14,&obj15,&obj16,&obj17,&obj18)) SWIG_fail;
13075  res2 = SWIG_AsCharPtrAndSize(obj0, &buf2, NULL, &alloc2);
13076  if (!SWIG_IsOK(res2)) {
13077  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "plstripc" "', argument " "2"" of type '" "char const *""'");
13078  }
13079  arg2 = (char *)(buf2);
13080  res3 = SWIG_AsCharPtrAndSize(obj1, &buf3, NULL, &alloc3);
13081  if (!SWIG_IsOK(res3)) {
13082  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "plstripc" "', argument " "3"" of type '" "char const *""'");
13083  }
13084  arg3 = (char *)(buf3);
13085  ecode4 = SWIG_AsVal_double(obj2, &val4);
13086  if (!SWIG_IsOK(ecode4)) {
13087  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plstripc" "', argument " "4"" of type '" "PLFLT""'");
13088  }
13089  arg4 = (PLFLT)(val4);
13090  ecode5 = SWIG_AsVal_double(obj3, &val5);
13091  if (!SWIG_IsOK(ecode5)) {
13092  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plstripc" "', argument " "5"" of type '" "PLFLT""'");
13093  }
13094  arg5 = (PLFLT)(val5);
13095  ecode6 = SWIG_AsVal_double(obj4, &val6);
13096  if (!SWIG_IsOK(ecode6)) {
13097  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plstripc" "', argument " "6"" of type '" "PLFLT""'");
13098  }
13099  arg6 = (PLFLT)(val6);
13100  ecode7 = SWIG_AsVal_double(obj5, &val7);
13101  if (!SWIG_IsOK(ecode7)) {
13102  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plstripc" "', argument " "7"" of type '" "PLFLT""'");
13103  }
13104  arg7 = (PLFLT)(val7);
13105  ecode8 = SWIG_AsVal_double(obj6, &val8);
13106  if (!SWIG_IsOK(ecode8)) {
13107  SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "plstripc" "', argument " "8"" of type '" "PLFLT""'");
13108  }
13109  arg8 = (PLFLT)(val8);
13110  ecode9 = SWIG_AsVal_double(obj7, &val9);
13111  if (!SWIG_IsOK(ecode9)) {
13112  SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "plstripc" "', argument " "9"" of type '" "PLFLT""'");
13113  }
13114  arg9 = (PLFLT)(val9);
13115  ecode10 = SWIG_AsVal_double(obj8, &val10);
13116  if (!SWIG_IsOK(ecode10)) {
13117  SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "plstripc" "', argument " "10"" of type '" "PLFLT""'");
13118  }
13119  arg10 = (PLFLT)(val10);
13120  ecode11 = SWIG_AsVal_int(obj9, &val11);
13121  if (!SWIG_IsOK(ecode11)) {
13122  SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "plstripc" "', argument " "11"" of type '" "PLBOOL""'");
13123  }
13124  arg11 = (PLBOOL)(val11);
13125  ecode12 = SWIG_AsVal_int(obj10, &val12);
13126  if (!SWIG_IsOK(ecode12)) {
13127  SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "plstripc" "', argument " "12"" of type '" "PLBOOL""'");
13128  }
13129  arg12 = (PLBOOL)(val12);
13130  ecode13 = SWIG_AsVal_int(obj11, &val13);
13131  if (!SWIG_IsOK(ecode13)) {
13132  SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "plstripc" "', argument " "13"" of type '" "PLINT""'");
13133  }
13134  arg13 = (PLINT)(val13);
13135  ecode14 = SWIG_AsVal_int(obj12, &val14);
13136  if (!SWIG_IsOK(ecode14)) {
13137  SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "plstripc" "', argument " "14"" of type '" "PLINT""'");
13138  }
13139  arg14 = (PLINT)(val14);
13140  {
13141  tmp15 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj13, NPY_PLINT, 1, 1 );
13142  if ( tmp15 == NULL )
13143  return NULL;
13144  Alen = PyArray_DIMS( tmp15 )[0];
13145  arg15 = (PLINT *) PyArray_DATA( tmp15 );
13146  }
13147  {
13148  tmp16 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj14, NPY_PLINT, 1, 1 );
13149  if ( tmp16 == NULL )
13150  return NULL;
13151  if ( PyArray_DIMS( tmp16 )[0] != Alen )
13152  {
13153  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
13154  return NULL;
13155  }
13156  arg16 = (PLINT *) PyArray_DATA( tmp16 );
13157  }
13158  {
13159  int i;
13160  PyObject *elt, *unicode_string;
13161 
13162  if ( !PySequence_Check( obj15 ) || PySequence_Size( obj15 ) != 4 )
13163  {
13164  PyErr_SetString( PyExc_ValueError, "Requires a sequence of 4 strings." );
13165  return NULL;
13166  }
13167  if ( Alen != 4 )
13168  {
13169  PyErr_SetString( PyExc_ValueError, "colline and styline args must be length 4." );
13170  return NULL;
13171  }
13172  tmp17 = (char **) malloc( sizeof ( char* ) * 4 );
13173  if ( tmp17 == NULL )
13174  return NULL;
13175  arg17 = tmp17;
13176  for ( i = 0; i < 4; i++ )
13177  {
13178  arg17[i] = NULL;
13179  elt = PySequence_Fast_GET_ITEM( obj15, i );
13180  if ( PyString_Check( elt ) )
13181  {
13182  arg17[i] = PyString_AsString( elt );
13183  }
13184  else if ( PyUnicode_Check( elt ) )
13185  {
13186  unicode_string = PyUnicode_AsEncodedString( elt, "utf-8", "Error ~" );
13187  arg17[i] = PyBytes_AS_STRING( unicode_string );
13188  }
13189  if ( arg17[i] == NULL )
13190  {
13191  free( tmp17 );
13192  return NULL;
13193  }
13194  }
13195  }
13196  res18 = SWIG_AsCharPtrAndSize(obj16, &buf18, NULL, &alloc18);
13197  if (!SWIG_IsOK(res18)) {
13198  SWIG_exception_fail(SWIG_ArgError(res18), "in method '" "plstripc" "', argument " "18"" of type '" "char const *""'");
13199  }
13200  arg18 = (char *)(buf18);
13201  res19 = SWIG_AsCharPtrAndSize(obj17, &buf19, NULL, &alloc19);
13202  if (!SWIG_IsOK(res19)) {
13203  SWIG_exception_fail(SWIG_ArgError(res19), "in method '" "plstripc" "', argument " "19"" of type '" "char const *""'");
13204  }
13205  arg19 = (char *)(buf19);
13206  res20 = SWIG_AsCharPtrAndSize(obj18, &buf20, NULL, &alloc20);
13207  if (!SWIG_IsOK(res20)) {
13208  SWIG_exception_fail(SWIG_ArgError(res20), "in method '" "plstripc" "', argument " "20"" of type '" "char const *""'");
13209  }
13210  arg20 = (char *)(buf20);
13211  plstripc(arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,(int const *)arg15,(int const *)arg16,(char const *(*))arg17,(char const *)arg18,(char const *)arg19,(char const *)arg20);
13212  resultobj = SWIG_Py_Void();
13213  if (SWIG_IsTmpObj(res1)) {
13214  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg1)));
13215  } else {
13216  int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
13217  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_int, new_flags));
13218  }
13219  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
13220  if (alloc3 == SWIG_NEWOBJ) free((char*)buf3);
13221  {
13222  Py_CLEAR( tmp15 );
13223  }
13224  {
13225  Py_CLEAR( tmp16 );
13226  }
13227  {
13228  free( tmp17 );
13229  }
13230  if (alloc18 == SWIG_NEWOBJ) free((char*)buf18);
13231  if (alloc19 == SWIG_NEWOBJ) free((char*)buf19);
13232  if (alloc20 == SWIG_NEWOBJ) free((char*)buf20);
13233  return resultobj;
13234 fail:
13235  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
13236  if (alloc3 == SWIG_NEWOBJ) free((char*)buf3);
13237  {
13238  Py_CLEAR( tmp15 );
13239  }
13240  {
13241  Py_CLEAR( tmp16 );
13242  }
13243  {
13244  free( tmp17 );
13245  }
13246  if (alloc18 == SWIG_NEWOBJ) free((char*)buf18);
13247  if (alloc19 == SWIG_NEWOBJ) free((char*)buf19);
13248  if (alloc20 == SWIG_NEWOBJ) free((char*)buf20);
13249  return NULL;
13250 }
13251 
13252 
13253 SWIGINTERN PyObject *_wrap_plstripd(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
13254  PyObject *resultobj = 0;
13255  PLINT arg1 ;
13256  int val1 ;
13257  int ecode1 = 0 ;
13258  PyObject * obj0 = 0 ;
13259 
13260  if (!PyArg_ParseTuple(args,(char *)"O:plstripd",&obj0)) SWIG_fail;
13261  ecode1 = SWIG_AsVal_int(obj0, &val1);
13262  if (!SWIG_IsOK(ecode1)) {
13263  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plstripd" "', argument " "1"" of type '" "PLINT""'");
13264  }
13265  arg1 = (PLINT)(val1);
13266  plstripd(arg1);
13267  resultobj = SWIG_Py_Void();
13268  return resultobj;
13269 fail:
13270  return NULL;
13271 }
13272 
13273 
13274 SWIGINTERN PyObject *_wrap_plstyl(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
13275  PyObject *resultobj = 0;
13276  PLINT arg1 ;
13277  PLINT *arg2 = (PLINT *) 0 ;
13278  PLINT *arg3 = (PLINT *) 0 ;
13279  PyArrayObject *tmp1 = NULL ;
13280  PyArrayObject *tmp3 = NULL ;
13281  PyObject * obj0 = 0 ;
13282  PyObject * obj1 = 0 ;
13283 
13284  if (!PyArg_ParseTuple(args,(char *)"OO:plstyl",&obj0,&obj1)) SWIG_fail;
13285  {
13286  tmp1 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj0, NPY_PLINT, 1, 1 );
13287  if ( tmp1 == NULL )
13288  return NULL;
13289  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
13290  arg2 = (PLINT *) PyArray_DATA( tmp1 );
13291  }
13292  {
13293  tmp3 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj1, NPY_PLINT, 1, 1 );
13294  if ( tmp3 == NULL )
13295  return NULL;
13296  if ( PyArray_DIMS( tmp3 )[0] != Alen )
13297  {
13298  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
13299  return NULL;
13300  }
13301  arg3 = (PLINT *) PyArray_DATA( tmp3 );
13302  }
13303  plstyl(arg1,(int const *)arg2,(int const *)arg3);
13304  resultobj = SWIG_Py_Void();
13305  {
13306  Py_CLEAR( tmp1 );
13307  }
13308  {
13309  Py_CLEAR( tmp3 );
13310  }
13311  return resultobj;
13312 fail:
13313  {
13314  Py_CLEAR( tmp1 );
13315  }
13316  {
13317  Py_CLEAR( tmp3 );
13318  }
13319  return NULL;
13320 }
13321 
13322 
13323 SWIGINTERN PyObject *_wrap_plsvect(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
13324  PyObject *resultobj = 0;
13325  PLFLT *arg1 = (PLFLT *) 0 ;
13326  PLFLT *arg2 = (PLFLT *) 0 ;
13327  PLINT arg3 ;
13328  PLBOOL arg4 ;
13329  PyArrayObject *tmp1 = NULL ;
13330  PyArrayObject *tmp2 = NULL ;
13331  int val4 ;
13332  int ecode4 = 0 ;
13333  PyObject * obj0 = 0 ;
13334  PyObject * obj1 = 0 ;
13335  PyObject * obj2 = 0 ;
13336 
13337  if (!PyArg_ParseTuple(args,(char *)"OOO:plsvect",&obj0,&obj1,&obj2)) SWIG_fail;
13338  {
13339  if ( obj0 != Py_None )
13340  {
13341  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
13342  if ( tmp1 == NULL )
13343  return NULL;
13344  Alen = PyArray_DIMS( tmp1 )[0];
13345  arg1 = (PLFLT *) PyArray_DATA( tmp1 );
13346  }
13347  else
13348  {
13349  arg1 = NULL;
13350  Alen = 0;
13351  }
13352  }
13353  {
13354  if ( obj1 != Py_None )
13355  {
13356  tmp2 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
13357  if ( tmp2 == NULL )
13358  return NULL;
13359  if ( PyArray_DIMS( tmp2 )[0] != Alen )
13360  {
13361  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
13362  return NULL;
13363  }
13364  arg2 = (PLFLT *) PyArray_DATA( tmp2 );
13365  arg3 = PyArray_DIMS( tmp2 )[0];
13366  }
13367  else
13368  {
13369  arg2 = NULL;
13370  arg3 = 0;
13371  }
13372  }
13373  ecode4 = SWIG_AsVal_int(obj2, &val4);
13374  if (!SWIG_IsOK(ecode4)) {
13375  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plsvect" "', argument " "4"" of type '" "PLBOOL""'");
13376  }
13377  arg4 = (PLBOOL)(val4);
13378  plsvect((double const *)arg1,(double const *)arg2,arg3,arg4);
13379  resultobj = SWIG_Py_Void();
13380  {
13381  Py_CLEAR( tmp1 );
13382  }
13383  {
13384  Py_CLEAR( tmp2 );
13385  }
13386  return resultobj;
13387 fail:
13388  {
13389  Py_CLEAR( tmp1 );
13390  }
13391  {
13392  Py_CLEAR( tmp2 );
13393  }
13394  return NULL;
13395 }
13396 
13397 
13398 SWIGINTERN PyObject *_wrap_plsvpa(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
13399  PyObject *resultobj = 0;
13400  PLFLT arg1 ;
13401  PLFLT arg2 ;
13402  PLFLT arg3 ;
13403  PLFLT arg4 ;
13404  double val1 ;
13405  int ecode1 = 0 ;
13406  double val2 ;
13407  int ecode2 = 0 ;
13408  double val3 ;
13409  int ecode3 = 0 ;
13410  double val4 ;
13411  int ecode4 = 0 ;
13412  PyObject * obj0 = 0 ;
13413  PyObject * obj1 = 0 ;
13414  PyObject * obj2 = 0 ;
13415  PyObject * obj3 = 0 ;
13416 
13417  if (!PyArg_ParseTuple(args,(char *)"OOOO:plsvpa",&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
13418  ecode1 = SWIG_AsVal_double(obj0, &val1);
13419  if (!SWIG_IsOK(ecode1)) {
13420  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsvpa" "', argument " "1"" of type '" "PLFLT""'");
13421  }
13422  arg1 = (PLFLT)(val1);
13423  ecode2 = SWIG_AsVal_double(obj1, &val2);
13424  if (!SWIG_IsOK(ecode2)) {
13425  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plsvpa" "', argument " "2"" of type '" "PLFLT""'");
13426  }
13427  arg2 = (PLFLT)(val2);
13428  ecode3 = SWIG_AsVal_double(obj2, &val3);
13429  if (!SWIG_IsOK(ecode3)) {
13430  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plsvpa" "', argument " "3"" of type '" "PLFLT""'");
13431  }
13432  arg3 = (PLFLT)(val3);
13433  ecode4 = SWIG_AsVal_double(obj3, &val4);
13434  if (!SWIG_IsOK(ecode4)) {
13435  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plsvpa" "', argument " "4"" of type '" "PLFLT""'");
13436  }
13437  arg4 = (PLFLT)(val4);
13438  plsvpa(arg1,arg2,arg3,arg4);
13439  resultobj = SWIG_Py_Void();
13440  return resultobj;
13441 fail:
13442  return NULL;
13443 }
13444 
13445 
13446 SWIGINTERN PyObject *_wrap_plsxax(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
13447  PyObject *resultobj = 0;
13448  PLINT arg1 ;
13449  PLINT arg2 ;
13450  int val1 ;
13451  int ecode1 = 0 ;
13452  int val2 ;
13453  int ecode2 = 0 ;
13454  PyObject * obj0 = 0 ;
13455  PyObject * obj1 = 0 ;
13456 
13457  if (!PyArg_ParseTuple(args,(char *)"OO:plsxax",&obj0,&obj1)) SWIG_fail;
13458  ecode1 = SWIG_AsVal_int(obj0, &val1);
13459  if (!SWIG_IsOK(ecode1)) {
13460  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsxax" "', argument " "1"" of type '" "PLINT""'");
13461  }
13462  arg1 = (PLINT)(val1);
13463  ecode2 = SWIG_AsVal_int(obj1, &val2);
13464  if (!SWIG_IsOK(ecode2)) {
13465  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plsxax" "', argument " "2"" of type '" "PLINT""'");
13466  }
13467  arg2 = (PLINT)(val2);
13468  plsxax(arg1,arg2);
13469  resultobj = SWIG_Py_Void();
13470  return resultobj;
13471 fail:
13472  return NULL;
13473 }
13474 
13475 
13476 SWIGINTERN PyObject *_wrap_plsyax(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
13477  PyObject *resultobj = 0;
13478  PLINT arg1 ;
13479  PLINT arg2 ;
13480  int val1 ;
13481  int ecode1 = 0 ;
13482  int val2 ;
13483  int ecode2 = 0 ;
13484  PyObject * obj0 = 0 ;
13485  PyObject * obj1 = 0 ;
13486 
13487  if (!PyArg_ParseTuple(args,(char *)"OO:plsyax",&obj0,&obj1)) SWIG_fail;
13488  ecode1 = SWIG_AsVal_int(obj0, &val1);
13489  if (!SWIG_IsOK(ecode1)) {
13490  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plsyax" "', argument " "1"" of type '" "PLINT""'");
13491  }
13492  arg1 = (PLINT)(val1);
13493  ecode2 = SWIG_AsVal_int(obj1, &val2);
13494  if (!SWIG_IsOK(ecode2)) {
13495  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plsyax" "', argument " "2"" of type '" "PLINT""'");
13496  }
13497  arg2 = (PLINT)(val2);
13498  plsyax(arg1,arg2);
13499  resultobj = SWIG_Py_Void();
13500  return resultobj;
13501 fail:
13502  return NULL;
13503 }
13504 
13505 
13506 SWIGINTERN PyObject *_wrap_plsym(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
13507  PyObject *resultobj = 0;
13508  PLINT arg1 ;
13509  PLFLT *arg2 = (PLFLT *) 0 ;
13510  PLFLT *arg3 = (PLFLT *) 0 ;
13511  PLINT arg4 ;
13512  PyArrayObject *tmp1 = NULL ;
13513  PyArrayObject *tmp3 = NULL ;
13514  int val4 ;
13515  int ecode4 = 0 ;
13516  PyObject * obj0 = 0 ;
13517  PyObject * obj1 = 0 ;
13518  PyObject * obj2 = 0 ;
13519 
13520  if (!PyArg_ParseTuple(args,(char *)"OOO:plsym",&obj0,&obj1,&obj2)) SWIG_fail;
13521  {
13522  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 1, 1 );
13523  if ( tmp1 == NULL )
13524  return NULL;
13525  arg1 = Alen = PyArray_DIMS( tmp1 )[0];
13526  arg2 = (PLFLT *) PyArray_DATA( tmp1 );
13527  }
13528  {
13529  tmp3 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 1, 1 );
13530  if ( tmp3 == NULL )
13531  return NULL;
13532  if ( PyArray_DIMS( tmp3 )[0] != Alen )
13533  {
13534  PyErr_SetString( PyExc_ValueError, "Vectors must be same length." );
13535  return NULL;
13536  }
13537  arg3 = (PLFLT *) PyArray_DATA( tmp3 );
13538  }
13539  ecode4 = SWIG_AsVal_int(obj2, &val4);
13540  if (!SWIG_IsOK(ecode4)) {
13541  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plsym" "', argument " "4"" of type '" "PLINT""'");
13542  }
13543  arg4 = (PLINT)(val4);
13544  plsym(arg1,(double const *)arg2,(double const *)arg3,arg4);
13545  resultobj = SWIG_Py_Void();
13546  {
13547  Py_CLEAR( tmp1 );
13548  }
13549  {
13550  Py_CLEAR( tmp3 );
13551  }
13552  return resultobj;
13553 fail:
13554  {
13555  Py_CLEAR( tmp1 );
13556  }
13557  {
13558  Py_CLEAR( tmp3 );
13559  }
13560  return NULL;
13561 }
13562 
13563 
13564 SWIGINTERN PyObject *_wrap_plszax(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
13565  PyObject *resultobj = 0;
13566  PLINT arg1 ;
13567  PLINT arg2 ;
13568  int val1 ;
13569  int ecode1 = 0 ;
13570  int val2 ;
13571  int ecode2 = 0 ;
13572  PyObject * obj0 = 0 ;
13573  PyObject * obj1 = 0 ;
13574 
13575  if (!PyArg_ParseTuple(args,(char *)"OO:plszax",&obj0,&obj1)) SWIG_fail;
13576  ecode1 = SWIG_AsVal_int(obj0, &val1);
13577  if (!SWIG_IsOK(ecode1)) {
13578  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plszax" "', argument " "1"" of type '" "PLINT""'");
13579  }
13580  arg1 = (PLINT)(val1);
13581  ecode2 = SWIG_AsVal_int(obj1, &val2);
13582  if (!SWIG_IsOK(ecode2)) {
13583  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plszax" "', argument " "2"" of type '" "PLINT""'");
13584  }
13585  arg2 = (PLINT)(val2);
13586  plszax(arg1,arg2);
13587  resultobj = SWIG_Py_Void();
13588  return resultobj;
13589 fail:
13590  return NULL;
13591 }
13592 
13593 
13594 SWIGINTERN PyObject *_wrap_pltext(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
13595  PyObject *resultobj = 0;
13596 
13597  if (!PyArg_ParseTuple(args,(char *)":pltext")) SWIG_fail;
13598  pltext();
13599  resultobj = SWIG_Py_Void();
13600  return resultobj;
13601 fail:
13602  return NULL;
13603 }
13604 
13605 
13606 SWIGINTERN PyObject *_wrap_pltimefmt(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
13607  PyObject *resultobj = 0;
13608  char *arg1 = (char *) 0 ;
13609  int res1 ;
13610  char *buf1 = 0 ;
13611  int alloc1 = 0 ;
13612  PyObject * obj0 = 0 ;
13613 
13614  if (!PyArg_ParseTuple(args,(char *)"O:pltimefmt",&obj0)) SWIG_fail;
13615  res1 = SWIG_AsCharPtrAndSize(obj0, &buf1, NULL, &alloc1);
13616  if (!SWIG_IsOK(res1)) {
13617  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "pltimefmt" "', argument " "1"" of type '" "char const *""'");
13618  }
13619  arg1 = (char *)(buf1);
13620  pltimefmt((char const *)arg1);
13621  resultobj = SWIG_Py_Void();
13622  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
13623  return resultobj;
13624 fail:
13625  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
13626  return NULL;
13627 }
13628 
13629 
13630 SWIGINTERN PyObject *_wrap_plvasp(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
13631  PyObject *resultobj = 0;
13632  PLFLT arg1 ;
13633  double val1 ;
13634  int ecode1 = 0 ;
13635  PyObject * obj0 = 0 ;
13636 
13637  if (!PyArg_ParseTuple(args,(char *)"O:plvasp",&obj0)) SWIG_fail;
13638  ecode1 = SWIG_AsVal_double(obj0, &val1);
13639  if (!SWIG_IsOK(ecode1)) {
13640  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plvasp" "', argument " "1"" of type '" "PLFLT""'");
13641  }
13642  arg1 = (PLFLT)(val1);
13643  plvasp(arg1);
13644  resultobj = SWIG_Py_Void();
13645  return resultobj;
13646 fail:
13647  return NULL;
13648 }
13649 
13650 
13651 SWIGINTERN PyObject *_wrap_plvect(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
13652  PyObject *resultobj = 0;
13653  PLFLT **arg1 = (PLFLT **) 0 ;
13654  PLFLT **arg2 = (PLFLT **) 0 ;
13655  PLINT arg3 ;
13656  PLINT arg4 ;
13657  PLFLT arg5 ;
13658  pltr_func arg6 = (pltr_func) 0 ;
13659  PLPointer arg7 = (PLPointer) 0 ;
13660  PyArrayObject *tmp1 = NULL ;
13661  PyArrayObject *tmp2 = NULL ;
13662  double val5 ;
13663  int ecode5 = 0 ;
13664  PyObject * obj0 = 0 ;
13665  PyObject * obj1 = 0 ;
13666  PyObject * obj2 = 0 ;
13667  PyObject * obj3 = 0 ;
13668  PyObject * obj4 = 0 ;
13669 
13670  {
13671  python_pltr = 0;
13672  arg6 = NULL;
13673  }
13674  {
13675  arg7 = NULL;
13676  }
13677  if (!PyArg_ParseTuple(args,(char *)"OOO|OO:plvect",&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
13678  {
13679  int i, size;
13680  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 2, 2 );
13681  if ( tmp1 == NULL )
13682  return NULL;
13683  Xlen = PyArray_DIMS( tmp1 )[0];
13684  Ylen = PyArray_DIMS( tmp1 )[1];
13685  size = Ylen;
13686  arg1 = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) Xlen );
13687  for ( i = 0; i < Xlen; i++ )
13688  arg1[i] = ( (PLFLT *) PyArray_DATA( tmp1 ) + i * size );
13689  }
13690  {
13691  int i, size;
13692  tmp2 = (PyArrayObject *) myArray_ContiguousFromObject( obj1, NPY_PLFLT, 2, 2 );
13693  if ( tmp2 == NULL )
13694  return NULL;
13695  if ( Xlen != PyArray_DIMS( tmp2 )[0] || Ylen != PyArray_DIMS( tmp2 )[1] )
13696  {
13697  PyErr_SetString( PyExc_ValueError, "Vectors must match matrix." );
13698  return NULL;
13699  }
13700  arg3 = PyArray_DIMS( tmp2 )[0];
13701  arg4 = PyArray_DIMS( tmp2 )[1];
13702  size = arg4;
13703  arg2 = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) arg3 );
13704  for ( i = 0; i < arg3; i++ )
13705  arg2[i] = ( (PLFLT *) PyArray_DATA( tmp2 ) + i * size );
13706  }
13707  ecode5 = SWIG_AsVal_double(obj2, &val5);
13708  if (!SWIG_IsOK(ecode5)) {
13709  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plvect" "', argument " "5"" of type '" "PLFLT""'");
13710  }
13711  arg5 = (PLFLT)(val5);
13712  if (obj3) {
13713  {
13714  // it must be a callable or None
13715  if ( obj3 == Py_None )
13716  {
13717  arg6 = NULL;
13718  }
13719  else
13720  {
13721  if ( !PyCallable_Check( (PyObject *) obj3 ) )
13722  {
13723  PyErr_SetString( PyExc_ValueError, "pltr argument must be callable" );
13724  return NULL;
13725  }
13726  arg6 = marshal_pltr( obj3 );
13727  }
13728  }
13729  }
13730  if (obj4) {
13731  {
13732  if ( obj4 == Py_None )
13733  arg7 = NULL;
13734  else
13735  {
13736  arg7 = marshal_PLPointer( obj4, 0 );
13737  }
13738  }
13739  }
13740  plvect((double const **)arg1,(double const **)arg2,arg3,arg4,arg5,arg6,arg7);
13741  resultobj = SWIG_Py_Void();
13742  {
13743  Py_CLEAR( tmp1 );
13744  free( arg1 );
13745  }
13746  {
13747  Py_CLEAR( tmp2 );
13748  free( arg2 );
13749  }
13750  {
13751  cleanup_pltr();
13752  }
13753  {
13755  }
13756  return resultobj;
13757 fail:
13758  {
13759  Py_CLEAR( tmp1 );
13760  free( arg1 );
13761  }
13762  {
13763  Py_CLEAR( tmp2 );
13764  free( arg2 );
13765  }
13766  {
13767  cleanup_pltr();
13768  }
13769  {
13771  }
13772  return NULL;
13773 }
13774 
13775 
13776 SWIGINTERN PyObject *_wrap_plvpas(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
13777  PyObject *resultobj = 0;
13778  PLFLT arg1 ;
13779  PLFLT arg2 ;
13780  PLFLT arg3 ;
13781  PLFLT arg4 ;
13782  PLFLT arg5 ;
13783  double val1 ;
13784  int ecode1 = 0 ;
13785  double val2 ;
13786  int ecode2 = 0 ;
13787  double val3 ;
13788  int ecode3 = 0 ;
13789  double val4 ;
13790  int ecode4 = 0 ;
13791  double val5 ;
13792  int ecode5 = 0 ;
13793  PyObject * obj0 = 0 ;
13794  PyObject * obj1 = 0 ;
13795  PyObject * obj2 = 0 ;
13796  PyObject * obj3 = 0 ;
13797  PyObject * obj4 = 0 ;
13798 
13799  if (!PyArg_ParseTuple(args,(char *)"OOOOO:plvpas",&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
13800  ecode1 = SWIG_AsVal_double(obj0, &val1);
13801  if (!SWIG_IsOK(ecode1)) {
13802  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plvpas" "', argument " "1"" of type '" "PLFLT""'");
13803  }
13804  arg1 = (PLFLT)(val1);
13805  ecode2 = SWIG_AsVal_double(obj1, &val2);
13806  if (!SWIG_IsOK(ecode2)) {
13807  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plvpas" "', argument " "2"" of type '" "PLFLT""'");
13808  }
13809  arg2 = (PLFLT)(val2);
13810  ecode3 = SWIG_AsVal_double(obj2, &val3);
13811  if (!SWIG_IsOK(ecode3)) {
13812  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plvpas" "', argument " "3"" of type '" "PLFLT""'");
13813  }
13814  arg3 = (PLFLT)(val3);
13815  ecode4 = SWIG_AsVal_double(obj3, &val4);
13816  if (!SWIG_IsOK(ecode4)) {
13817  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plvpas" "', argument " "4"" of type '" "PLFLT""'");
13818  }
13819  arg4 = (PLFLT)(val4);
13820  ecode5 = SWIG_AsVal_double(obj4, &val5);
13821  if (!SWIG_IsOK(ecode5)) {
13822  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plvpas" "', argument " "5"" of type '" "PLFLT""'");
13823  }
13824  arg5 = (PLFLT)(val5);
13825  plvpas(arg1,arg2,arg3,arg4,arg5);
13826  resultobj = SWIG_Py_Void();
13827  return resultobj;
13828 fail:
13829  return NULL;
13830 }
13831 
13832 
13833 SWIGINTERN PyObject *_wrap_plvpor(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
13834  PyObject *resultobj = 0;
13835  PLFLT arg1 ;
13836  PLFLT arg2 ;
13837  PLFLT arg3 ;
13838  PLFLT arg4 ;
13839  double val1 ;
13840  int ecode1 = 0 ;
13841  double val2 ;
13842  int ecode2 = 0 ;
13843  double val3 ;
13844  int ecode3 = 0 ;
13845  double val4 ;
13846  int ecode4 = 0 ;
13847  PyObject * obj0 = 0 ;
13848  PyObject * obj1 = 0 ;
13849  PyObject * obj2 = 0 ;
13850  PyObject * obj3 = 0 ;
13851 
13852  if (!PyArg_ParseTuple(args,(char *)"OOOO:plvpor",&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
13853  ecode1 = SWIG_AsVal_double(obj0, &val1);
13854  if (!SWIG_IsOK(ecode1)) {
13855  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plvpor" "', argument " "1"" of type '" "PLFLT""'");
13856  }
13857  arg1 = (PLFLT)(val1);
13858  ecode2 = SWIG_AsVal_double(obj1, &val2);
13859  if (!SWIG_IsOK(ecode2)) {
13860  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plvpor" "', argument " "2"" of type '" "PLFLT""'");
13861  }
13862  arg2 = (PLFLT)(val2);
13863  ecode3 = SWIG_AsVal_double(obj2, &val3);
13864  if (!SWIG_IsOK(ecode3)) {
13865  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plvpor" "', argument " "3"" of type '" "PLFLT""'");
13866  }
13867  arg3 = (PLFLT)(val3);
13868  ecode4 = SWIG_AsVal_double(obj3, &val4);
13869  if (!SWIG_IsOK(ecode4)) {
13870  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plvpor" "', argument " "4"" of type '" "PLFLT""'");
13871  }
13872  arg4 = (PLFLT)(val4);
13873  plvpor(arg1,arg2,arg3,arg4);
13874  resultobj = SWIG_Py_Void();
13875  return resultobj;
13876 fail:
13877  return NULL;
13878 }
13879 
13880 
13881 SWIGINTERN PyObject *_wrap_plvsta(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
13882  PyObject *resultobj = 0;
13883 
13884  if (!PyArg_ParseTuple(args,(char *)":plvsta")) SWIG_fail;
13885  plvsta();
13886  resultobj = SWIG_Py_Void();
13887  return resultobj;
13888 fail:
13889  return NULL;
13890 }
13891 
13892 
13893 SWIGINTERN PyObject *_wrap_plw3d(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
13894  PyObject *resultobj = 0;
13895  PLFLT arg1 ;
13896  PLFLT arg2 ;
13897  PLFLT arg3 ;
13898  PLFLT arg4 ;
13899  PLFLT arg5 ;
13900  PLFLT arg6 ;
13901  PLFLT arg7 ;
13902  PLFLT arg8 ;
13903  PLFLT arg9 ;
13904  PLFLT arg10 ;
13905  PLFLT arg11 ;
13906  double val1 ;
13907  int ecode1 = 0 ;
13908  double val2 ;
13909  int ecode2 = 0 ;
13910  double val3 ;
13911  int ecode3 = 0 ;
13912  double val4 ;
13913  int ecode4 = 0 ;
13914  double val5 ;
13915  int ecode5 = 0 ;
13916  double val6 ;
13917  int ecode6 = 0 ;
13918  double val7 ;
13919  int ecode7 = 0 ;
13920  double val8 ;
13921  int ecode8 = 0 ;
13922  double val9 ;
13923  int ecode9 = 0 ;
13924  double val10 ;
13925  int ecode10 = 0 ;
13926  double val11 ;
13927  int ecode11 = 0 ;
13928  PyObject * obj0 = 0 ;
13929  PyObject * obj1 = 0 ;
13930  PyObject * obj2 = 0 ;
13931  PyObject * obj3 = 0 ;
13932  PyObject * obj4 = 0 ;
13933  PyObject * obj5 = 0 ;
13934  PyObject * obj6 = 0 ;
13935  PyObject * obj7 = 0 ;
13936  PyObject * obj8 = 0 ;
13937  PyObject * obj9 = 0 ;
13938  PyObject * obj10 = 0 ;
13939 
13940  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOOOOO:plw3d",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9,&obj10)) SWIG_fail;
13941  ecode1 = SWIG_AsVal_double(obj0, &val1);
13942  if (!SWIG_IsOK(ecode1)) {
13943  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plw3d" "', argument " "1"" of type '" "PLFLT""'");
13944  }
13945  arg1 = (PLFLT)(val1);
13946  ecode2 = SWIG_AsVal_double(obj1, &val2);
13947  if (!SWIG_IsOK(ecode2)) {
13948  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plw3d" "', argument " "2"" of type '" "PLFLT""'");
13949  }
13950  arg2 = (PLFLT)(val2);
13951  ecode3 = SWIG_AsVal_double(obj2, &val3);
13952  if (!SWIG_IsOK(ecode3)) {
13953  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plw3d" "', argument " "3"" of type '" "PLFLT""'");
13954  }
13955  arg3 = (PLFLT)(val3);
13956  ecode4 = SWIG_AsVal_double(obj3, &val4);
13957  if (!SWIG_IsOK(ecode4)) {
13958  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plw3d" "', argument " "4"" of type '" "PLFLT""'");
13959  }
13960  arg4 = (PLFLT)(val4);
13961  ecode5 = SWIG_AsVal_double(obj4, &val5);
13962  if (!SWIG_IsOK(ecode5)) {
13963  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plw3d" "', argument " "5"" of type '" "PLFLT""'");
13964  }
13965  arg5 = (PLFLT)(val5);
13966  ecode6 = SWIG_AsVal_double(obj5, &val6);
13967  if (!SWIG_IsOK(ecode6)) {
13968  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plw3d" "', argument " "6"" of type '" "PLFLT""'");
13969  }
13970  arg6 = (PLFLT)(val6);
13971  ecode7 = SWIG_AsVal_double(obj6, &val7);
13972  if (!SWIG_IsOK(ecode7)) {
13973  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plw3d" "', argument " "7"" of type '" "PLFLT""'");
13974  }
13975  arg7 = (PLFLT)(val7);
13976  ecode8 = SWIG_AsVal_double(obj7, &val8);
13977  if (!SWIG_IsOK(ecode8)) {
13978  SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "plw3d" "', argument " "8"" of type '" "PLFLT""'");
13979  }
13980  arg8 = (PLFLT)(val8);
13981  ecode9 = SWIG_AsVal_double(obj8, &val9);
13982  if (!SWIG_IsOK(ecode9)) {
13983  SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "plw3d" "', argument " "9"" of type '" "PLFLT""'");
13984  }
13985  arg9 = (PLFLT)(val9);
13986  ecode10 = SWIG_AsVal_double(obj9, &val10);
13987  if (!SWIG_IsOK(ecode10)) {
13988  SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "plw3d" "', argument " "10"" of type '" "PLFLT""'");
13989  }
13990  arg10 = (PLFLT)(val10);
13991  ecode11 = SWIG_AsVal_double(obj10, &val11);
13992  if (!SWIG_IsOK(ecode11)) {
13993  SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "plw3d" "', argument " "11"" of type '" "PLFLT""'");
13994  }
13995  arg11 = (PLFLT)(val11);
13996  plw3d(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11);
13997  resultobj = SWIG_Py_Void();
13998  return resultobj;
13999 fail:
14000  return NULL;
14001 }
14002 
14003 
14004 SWIGINTERN PyObject *_wrap_plwidth(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
14005  PyObject *resultobj = 0;
14006  PLFLT arg1 ;
14007  double val1 ;
14008  int ecode1 = 0 ;
14009  PyObject * obj0 = 0 ;
14010 
14011  if (!PyArg_ParseTuple(args,(char *)"O:plwidth",&obj0)) SWIG_fail;
14012  ecode1 = SWIG_AsVal_double(obj0, &val1);
14013  if (!SWIG_IsOK(ecode1)) {
14014  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plwidth" "', argument " "1"" of type '" "PLFLT""'");
14015  }
14016  arg1 = (PLFLT)(val1);
14017  plwidth(arg1);
14018  resultobj = SWIG_Py_Void();
14019  return resultobj;
14020 fail:
14021  return NULL;
14022 }
14023 
14024 
14025 SWIGINTERN PyObject *_wrap_plwind(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
14026  PyObject *resultobj = 0;
14027  PLFLT arg1 ;
14028  PLFLT arg2 ;
14029  PLFLT arg3 ;
14030  PLFLT arg4 ;
14031  double val1 ;
14032  int ecode1 = 0 ;
14033  double val2 ;
14034  int ecode2 = 0 ;
14035  double val3 ;
14036  int ecode3 = 0 ;
14037  double val4 ;
14038  int ecode4 = 0 ;
14039  PyObject * obj0 = 0 ;
14040  PyObject * obj1 = 0 ;
14041  PyObject * obj2 = 0 ;
14042  PyObject * obj3 = 0 ;
14043 
14044  if (!PyArg_ParseTuple(args,(char *)"OOOO:plwind",&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
14045  ecode1 = SWIG_AsVal_double(obj0, &val1);
14046  if (!SWIG_IsOK(ecode1)) {
14047  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plwind" "', argument " "1"" of type '" "PLFLT""'");
14048  }
14049  arg1 = (PLFLT)(val1);
14050  ecode2 = SWIG_AsVal_double(obj1, &val2);
14051  if (!SWIG_IsOK(ecode2)) {
14052  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plwind" "', argument " "2"" of type '" "PLFLT""'");
14053  }
14054  arg2 = (PLFLT)(val2);
14055  ecode3 = SWIG_AsVal_double(obj2, &val3);
14056  if (!SWIG_IsOK(ecode3)) {
14057  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plwind" "', argument " "3"" of type '" "PLFLT""'");
14058  }
14059  arg3 = (PLFLT)(val3);
14060  ecode4 = SWIG_AsVal_double(obj3, &val4);
14061  if (!SWIG_IsOK(ecode4)) {
14062  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plwind" "', argument " "4"" of type '" "PLFLT""'");
14063  }
14064  arg4 = (PLFLT)(val4);
14065  plwind(arg1,arg2,arg3,arg4);
14066  resultobj = SWIG_Py_Void();
14067  return resultobj;
14068 fail:
14069  return NULL;
14070 }
14071 
14072 
14073 SWIGINTERN PyObject *_wrap_plxormod(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
14074  PyObject *resultobj = 0;
14075  PLBOOL arg1 ;
14076  PLBOOL *arg2 = (PLBOOL *) 0 ;
14077  int val1 ;
14078  int ecode1 = 0 ;
14079  PLBOOL temp2 ;
14080  int res2 = SWIG_TMPOBJ ;
14081  PyObject * obj0 = 0 ;
14082 
14083  arg2 = &temp2;
14084  if (!PyArg_ParseTuple(args,(char *)"O:plxormod",&obj0)) SWIG_fail;
14085  ecode1 = SWIG_AsVal_int(obj0, &val1);
14086  if (!SWIG_IsOK(ecode1)) {
14087  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "plxormod" "', argument " "1"" of type '" "PLBOOL""'");
14088  }
14089  arg1 = (PLBOOL)(val1);
14090  plxormod(arg1,arg2);
14091  resultobj = SWIG_Py_Void();
14092  if (SWIG_IsTmpObj(res2)) {
14093  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg2)));
14094  } else {
14095  int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
14096  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_int, new_flags));
14097  }
14098  return resultobj;
14099 fail:
14100  return NULL;
14101 }
14102 
14103 
14104 SWIGINTERN PyObject *_wrap_plmap(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
14105  PyObject *resultobj = 0;
14106  mapform_func arg1 = (mapform_func) 0 ;
14107  char *arg2 = (char *) 0 ;
14108  PLFLT arg3 ;
14109  PLFLT arg4 ;
14110  PLFLT arg5 ;
14111  PLFLT arg6 ;
14112  int res2 ;
14113  char *buf2 = 0 ;
14114  int alloc2 = 0 ;
14115  double val3 ;
14116  int ecode3 = 0 ;
14117  double val4 ;
14118  int ecode4 = 0 ;
14119  double val5 ;
14120  int ecode5 = 0 ;
14121  double val6 ;
14122  int ecode6 = 0 ;
14123  PyObject * obj0 = 0 ;
14124  PyObject * obj1 = 0 ;
14125  PyObject * obj2 = 0 ;
14126  PyObject * obj3 = 0 ;
14127  PyObject * obj4 = 0 ;
14128  PyObject * obj5 = 0 ;
14129 
14130  if (!PyArg_ParseTuple(args,(char *)"OOOOOO:plmap",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
14131  {
14132  // it must be a callable or none
14133  if ( obj0 == Py_None )
14134  {
14135  arg1 = NULL;
14136  }
14137  else
14138  {
14139  if ( !PyCallable_Check( (PyObject *) obj0 ) )
14140  {
14141  PyErr_SetString( PyExc_ValueError, "mapform argument must be callable" );
14142  return NULL;
14143  }
14144  arg1 = marshal_mapform( obj0 );
14145  }
14146  }
14147  res2 = SWIG_AsCharPtrAndSize(obj1, &buf2, NULL, &alloc2);
14148  if (!SWIG_IsOK(res2)) {
14149  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "plmap" "', argument " "2"" of type '" "char const *""'");
14150  }
14151  arg2 = (char *)(buf2);
14152  ecode3 = SWIG_AsVal_double(obj2, &val3);
14153  if (!SWIG_IsOK(ecode3)) {
14154  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plmap" "', argument " "3"" of type '" "PLFLT""'");
14155  }
14156  arg3 = (PLFLT)(val3);
14157  ecode4 = SWIG_AsVal_double(obj3, &val4);
14158  if (!SWIG_IsOK(ecode4)) {
14159  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plmap" "', argument " "4"" of type '" "PLFLT""'");
14160  }
14161  arg4 = (PLFLT)(val4);
14162  ecode5 = SWIG_AsVal_double(obj4, &val5);
14163  if (!SWIG_IsOK(ecode5)) {
14164  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plmap" "', argument " "5"" of type '" "PLFLT""'");
14165  }
14166  arg5 = (PLFLT)(val5);
14167  ecode6 = SWIG_AsVal_double(obj5, &val6);
14168  if (!SWIG_IsOK(ecode6)) {
14169  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plmap" "', argument " "6"" of type '" "PLFLT""'");
14170  }
14171  arg6 = (PLFLT)(val6);
14172  plmap(arg1,(char const *)arg2,arg3,arg4,arg5,arg6);
14173  resultobj = SWIG_Py_Void();
14174  {
14175  cleanup_mapform();
14176  }
14177  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
14178  return resultobj;
14179 fail:
14180  {
14181  cleanup_mapform();
14182  }
14183  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
14184  return NULL;
14185 }
14186 
14187 
14188 SWIGINTERN PyObject *_wrap_plmapline(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
14189  PyObject *resultobj = 0;
14190  mapform_func arg1 = (mapform_func) 0 ;
14191  char *arg2 = (char *) 0 ;
14192  PLFLT arg3 ;
14193  PLFLT arg4 ;
14194  PLFLT arg5 ;
14195  PLFLT arg6 ;
14196  PLINT *arg7 = (PLINT *) 0 ;
14197  PLINT arg8 ;
14198  int res2 ;
14199  char *buf2 = 0 ;
14200  int alloc2 = 0 ;
14201  double val3 ;
14202  int ecode3 = 0 ;
14203  double val4 ;
14204  int ecode4 = 0 ;
14205  double val5 ;
14206  int ecode5 = 0 ;
14207  double val6 ;
14208  int ecode6 = 0 ;
14209  PyArrayObject *tmp7 = NULL ;
14210  PyObject * obj0 = 0 ;
14211  PyObject * obj1 = 0 ;
14212  PyObject * obj2 = 0 ;
14213  PyObject * obj3 = 0 ;
14214  PyObject * obj4 = 0 ;
14215  PyObject * obj5 = 0 ;
14216  PyObject * obj6 = 0 ;
14217 
14218  if (!PyArg_ParseTuple(args,(char *)"OOOOOOO:plmapline",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
14219  {
14220  // it must be a callable or none
14221  if ( obj0 == Py_None )
14222  {
14223  arg1 = NULL;
14224  }
14225  else
14226  {
14227  if ( !PyCallable_Check( (PyObject *) obj0 ) )
14228  {
14229  PyErr_SetString( PyExc_ValueError, "mapform argument must be callable" );
14230  return NULL;
14231  }
14232  arg1 = marshal_mapform( obj0 );
14233  }
14234  }
14235  res2 = SWIG_AsCharPtrAndSize(obj1, &buf2, NULL, &alloc2);
14236  if (!SWIG_IsOK(res2)) {
14237  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "plmapline" "', argument " "2"" of type '" "char const *""'");
14238  }
14239  arg2 = (char *)(buf2);
14240  ecode3 = SWIG_AsVal_double(obj2, &val3);
14241  if (!SWIG_IsOK(ecode3)) {
14242  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plmapline" "', argument " "3"" of type '" "PLFLT""'");
14243  }
14244  arg3 = (PLFLT)(val3);
14245  ecode4 = SWIG_AsVal_double(obj3, &val4);
14246  if (!SWIG_IsOK(ecode4)) {
14247  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plmapline" "', argument " "4"" of type '" "PLFLT""'");
14248  }
14249  arg4 = (PLFLT)(val4);
14250  ecode5 = SWIG_AsVal_double(obj4, &val5);
14251  if (!SWIG_IsOK(ecode5)) {
14252  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plmapline" "', argument " "5"" of type '" "PLFLT""'");
14253  }
14254  arg5 = (PLFLT)(val5);
14255  ecode6 = SWIG_AsVal_double(obj5, &val6);
14256  if (!SWIG_IsOK(ecode6)) {
14257  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plmapline" "', argument " "6"" of type '" "PLFLT""'");
14258  }
14259  arg6 = (PLFLT)(val6);
14260  {
14261  if ( obj6 != Py_None )
14262  {
14263  tmp7 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj6, NPY_PLINT, 1, 1 );
14264  if ( tmp7 == NULL )
14265  return NULL;
14266  arg7 = (PLINT *) PyArray_DATA( tmp7 );
14267  arg8 = PyArray_DIMS( tmp7 )[0];
14268  }
14269  else
14270  {
14271  arg7 = NULL;
14272  arg8 = 0;
14273  }
14274  }
14275  plmapline(arg1,(char const *)arg2,arg3,arg4,arg5,arg6,(int const *)arg7,arg8);
14276  resultobj = SWIG_Py_Void();
14277  {
14278  cleanup_mapform();
14279  }
14280  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
14281  {
14282  Py_CLEAR( tmp7 );
14283  }
14284  return resultobj;
14285 fail:
14286  {
14287  cleanup_mapform();
14288  }
14289  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
14290  {
14291  Py_CLEAR( tmp7 );
14292  }
14293  return NULL;
14294 }
14295 
14296 
14297 SWIGINTERN PyObject *_wrap_plmapstring(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
14298  PyObject *resultobj = 0;
14299  mapform_func arg1 = (mapform_func) 0 ;
14300  char *arg2 = (char *) 0 ;
14301  char *arg3 = (char *) 0 ;
14302  PLFLT arg4 ;
14303  PLFLT arg5 ;
14304  PLFLT arg6 ;
14305  PLFLT arg7 ;
14306  PLINT *arg8 = (PLINT *) 0 ;
14307  PLINT arg9 ;
14308  int res2 ;
14309  char *buf2 = 0 ;
14310  int alloc2 = 0 ;
14311  int res3 ;
14312  char *buf3 = 0 ;
14313  int alloc3 = 0 ;
14314  double val4 ;
14315  int ecode4 = 0 ;
14316  double val5 ;
14317  int ecode5 = 0 ;
14318  double val6 ;
14319  int ecode6 = 0 ;
14320  double val7 ;
14321  int ecode7 = 0 ;
14322  PyArrayObject *tmp8 = NULL ;
14323  PyObject * obj0 = 0 ;
14324  PyObject * obj1 = 0 ;
14325  PyObject * obj2 = 0 ;
14326  PyObject * obj3 = 0 ;
14327  PyObject * obj4 = 0 ;
14328  PyObject * obj5 = 0 ;
14329  PyObject * obj6 = 0 ;
14330  PyObject * obj7 = 0 ;
14331 
14332  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOO:plmapstring",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
14333  {
14334  // it must be a callable or none
14335  if ( obj0 == Py_None )
14336  {
14337  arg1 = NULL;
14338  }
14339  else
14340  {
14341  if ( !PyCallable_Check( (PyObject *) obj0 ) )
14342  {
14343  PyErr_SetString( PyExc_ValueError, "mapform argument must be callable" );
14344  return NULL;
14345  }
14346  arg1 = marshal_mapform( obj0 );
14347  }
14348  }
14349  res2 = SWIG_AsCharPtrAndSize(obj1, &buf2, NULL, &alloc2);
14350  if (!SWIG_IsOK(res2)) {
14351  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "plmapstring" "', argument " "2"" of type '" "char const *""'");
14352  }
14353  arg2 = (char *)(buf2);
14354  res3 = SWIG_AsCharPtrAndSize(obj2, &buf3, NULL, &alloc3);
14355  if (!SWIG_IsOK(res3)) {
14356  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "plmapstring" "', argument " "3"" of type '" "char const *""'");
14357  }
14358  arg3 = (char *)(buf3);
14359  ecode4 = SWIG_AsVal_double(obj3, &val4);
14360  if (!SWIG_IsOK(ecode4)) {
14361  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plmapstring" "', argument " "4"" of type '" "PLFLT""'");
14362  }
14363  arg4 = (PLFLT)(val4);
14364  ecode5 = SWIG_AsVal_double(obj4, &val5);
14365  if (!SWIG_IsOK(ecode5)) {
14366  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plmapstring" "', argument " "5"" of type '" "PLFLT""'");
14367  }
14368  arg5 = (PLFLT)(val5);
14369  ecode6 = SWIG_AsVal_double(obj5, &val6);
14370  if (!SWIG_IsOK(ecode6)) {
14371  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plmapstring" "', argument " "6"" of type '" "PLFLT""'");
14372  }
14373  arg6 = (PLFLT)(val6);
14374  ecode7 = SWIG_AsVal_double(obj6, &val7);
14375  if (!SWIG_IsOK(ecode7)) {
14376  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plmapstring" "', argument " "7"" of type '" "PLFLT""'");
14377  }
14378  arg7 = (PLFLT)(val7);
14379  {
14380  if ( obj7 != Py_None )
14381  {
14382  tmp8 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj7, NPY_PLINT, 1, 1 );
14383  if ( tmp8 == NULL )
14384  return NULL;
14385  arg8 = (PLINT *) PyArray_DATA( tmp8 );
14386  arg9 = PyArray_DIMS( tmp8 )[0];
14387  }
14388  else
14389  {
14390  arg8 = NULL;
14391  arg9 = 0;
14392  }
14393  }
14394  plmapstring(arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,(int const *)arg8,arg9);
14395  resultobj = SWIG_Py_Void();
14396  {
14397  cleanup_mapform();
14398  }
14399  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
14400  if (alloc3 == SWIG_NEWOBJ) free((char*)buf3);
14401  {
14402  Py_CLEAR( tmp8 );
14403  }
14404  return resultobj;
14405 fail:
14406  {
14407  cleanup_mapform();
14408  }
14409  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
14410  if (alloc3 == SWIG_NEWOBJ) free((char*)buf3);
14411  {
14412  Py_CLEAR( tmp8 );
14413  }
14414  return NULL;
14415 }
14416 
14417 
14418 SWIGINTERN PyObject *_wrap_plmaptex(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
14419  PyObject *resultobj = 0;
14420  mapform_func arg1 = (mapform_func) 0 ;
14421  char *arg2 = (char *) 0 ;
14422  PLFLT arg3 ;
14423  PLFLT arg4 ;
14424  PLFLT arg5 ;
14425  char *arg6 = (char *) 0 ;
14426  PLFLT arg7 ;
14427  PLFLT arg8 ;
14428  PLFLT arg9 ;
14429  PLFLT arg10 ;
14430  PLINT arg11 ;
14431  int res2 ;
14432  char *buf2 = 0 ;
14433  int alloc2 = 0 ;
14434  double val3 ;
14435  int ecode3 = 0 ;
14436  double val4 ;
14437  int ecode4 = 0 ;
14438  double val5 ;
14439  int ecode5 = 0 ;
14440  int res6 ;
14441  char *buf6 = 0 ;
14442  int alloc6 = 0 ;
14443  double val7 ;
14444  int ecode7 = 0 ;
14445  double val8 ;
14446  int ecode8 = 0 ;
14447  double val9 ;
14448  int ecode9 = 0 ;
14449  double val10 ;
14450  int ecode10 = 0 ;
14451  int val11 ;
14452  int ecode11 = 0 ;
14453  PyObject * obj0 = 0 ;
14454  PyObject * obj1 = 0 ;
14455  PyObject * obj2 = 0 ;
14456  PyObject * obj3 = 0 ;
14457  PyObject * obj4 = 0 ;
14458  PyObject * obj5 = 0 ;
14459  PyObject * obj6 = 0 ;
14460  PyObject * obj7 = 0 ;
14461  PyObject * obj8 = 0 ;
14462  PyObject * obj9 = 0 ;
14463  PyObject * obj10 = 0 ;
14464 
14465  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOOOOO:plmaptex",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9,&obj10)) SWIG_fail;
14466  {
14467  // it must be a callable or none
14468  if ( obj0 == Py_None )
14469  {
14470  arg1 = NULL;
14471  }
14472  else
14473  {
14474  if ( !PyCallable_Check( (PyObject *) obj0 ) )
14475  {
14476  PyErr_SetString( PyExc_ValueError, "mapform argument must be callable" );
14477  return NULL;
14478  }
14479  arg1 = marshal_mapform( obj0 );
14480  }
14481  }
14482  res2 = SWIG_AsCharPtrAndSize(obj1, &buf2, NULL, &alloc2);
14483  if (!SWIG_IsOK(res2)) {
14484  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "plmaptex" "', argument " "2"" of type '" "char const *""'");
14485  }
14486  arg2 = (char *)(buf2);
14487  ecode3 = SWIG_AsVal_double(obj2, &val3);
14488  if (!SWIG_IsOK(ecode3)) {
14489  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plmaptex" "', argument " "3"" of type '" "PLFLT""'");
14490  }
14491  arg3 = (PLFLT)(val3);
14492  ecode4 = SWIG_AsVal_double(obj3, &val4);
14493  if (!SWIG_IsOK(ecode4)) {
14494  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plmaptex" "', argument " "4"" of type '" "PLFLT""'");
14495  }
14496  arg4 = (PLFLT)(val4);
14497  ecode5 = SWIG_AsVal_double(obj4, &val5);
14498  if (!SWIG_IsOK(ecode5)) {
14499  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plmaptex" "', argument " "5"" of type '" "PLFLT""'");
14500  }
14501  arg5 = (PLFLT)(val5);
14502  res6 = SWIG_AsCharPtrAndSize(obj5, &buf6, NULL, &alloc6);
14503  if (!SWIG_IsOK(res6)) {
14504  SWIG_exception_fail(SWIG_ArgError(res6), "in method '" "plmaptex" "', argument " "6"" of type '" "char const *""'");
14505  }
14506  arg6 = (char *)(buf6);
14507  ecode7 = SWIG_AsVal_double(obj6, &val7);
14508  if (!SWIG_IsOK(ecode7)) {
14509  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plmaptex" "', argument " "7"" of type '" "PLFLT""'");
14510  }
14511  arg7 = (PLFLT)(val7);
14512  ecode8 = SWIG_AsVal_double(obj7, &val8);
14513  if (!SWIG_IsOK(ecode8)) {
14514  SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "plmaptex" "', argument " "8"" of type '" "PLFLT""'");
14515  }
14516  arg8 = (PLFLT)(val8);
14517  ecode9 = SWIG_AsVal_double(obj8, &val9);
14518  if (!SWIG_IsOK(ecode9)) {
14519  SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "plmaptex" "', argument " "9"" of type '" "PLFLT""'");
14520  }
14521  arg9 = (PLFLT)(val9);
14522  ecode10 = SWIG_AsVal_double(obj9, &val10);
14523  if (!SWIG_IsOK(ecode10)) {
14524  SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "plmaptex" "', argument " "10"" of type '" "PLFLT""'");
14525  }
14526  arg10 = (PLFLT)(val10);
14527  ecode11 = SWIG_AsVal_int(obj10, &val11);
14528  if (!SWIG_IsOK(ecode11)) {
14529  SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "plmaptex" "', argument " "11"" of type '" "PLINT""'");
14530  }
14531  arg11 = (PLINT)(val11);
14532  plmaptex(arg1,(char const *)arg2,arg3,arg4,arg5,(char const *)arg6,arg7,arg8,arg9,arg10,arg11);
14533  resultobj = SWIG_Py_Void();
14534  {
14535  cleanup_mapform();
14536  }
14537  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
14538  if (alloc6 == SWIG_NEWOBJ) free((char*)buf6);
14539  return resultobj;
14540 fail:
14541  {
14542  cleanup_mapform();
14543  }
14544  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
14545  if (alloc6 == SWIG_NEWOBJ) free((char*)buf6);
14546  return NULL;
14547 }
14548 
14549 
14550 SWIGINTERN PyObject *_wrap_plmapfill(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
14551  PyObject *resultobj = 0;
14552  mapform_func arg1 = (mapform_func) 0 ;
14553  char *arg2 = (char *) 0 ;
14554  PLFLT arg3 ;
14555  PLFLT arg4 ;
14556  PLFLT arg5 ;
14557  PLFLT arg6 ;
14558  PLINT *arg7 = (PLINT *) 0 ;
14559  PLINT arg8 ;
14560  int res2 ;
14561  char *buf2 = 0 ;
14562  int alloc2 = 0 ;
14563  double val3 ;
14564  int ecode3 = 0 ;
14565  double val4 ;
14566  int ecode4 = 0 ;
14567  double val5 ;
14568  int ecode5 = 0 ;
14569  double val6 ;
14570  int ecode6 = 0 ;
14571  PyArrayObject *tmp7 = NULL ;
14572  PyObject * obj0 = 0 ;
14573  PyObject * obj1 = 0 ;
14574  PyObject * obj2 = 0 ;
14575  PyObject * obj3 = 0 ;
14576  PyObject * obj4 = 0 ;
14577  PyObject * obj5 = 0 ;
14578  PyObject * obj6 = 0 ;
14579 
14580  if (!PyArg_ParseTuple(args,(char *)"OOOOOOO:plmapfill",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
14581  {
14582  // it must be a callable or none
14583  if ( obj0 == Py_None )
14584  {
14585  arg1 = NULL;
14586  }
14587  else
14588  {
14589  if ( !PyCallable_Check( (PyObject *) obj0 ) )
14590  {
14591  PyErr_SetString( PyExc_ValueError, "mapform argument must be callable" );
14592  return NULL;
14593  }
14594  arg1 = marshal_mapform( obj0 );
14595  }
14596  }
14597  res2 = SWIG_AsCharPtrAndSize(obj1, &buf2, NULL, &alloc2);
14598  if (!SWIG_IsOK(res2)) {
14599  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "plmapfill" "', argument " "2"" of type '" "char const *""'");
14600  }
14601  arg2 = (char *)(buf2);
14602  ecode3 = SWIG_AsVal_double(obj2, &val3);
14603  if (!SWIG_IsOK(ecode3)) {
14604  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plmapfill" "', argument " "3"" of type '" "PLFLT""'");
14605  }
14606  arg3 = (PLFLT)(val3);
14607  ecode4 = SWIG_AsVal_double(obj3, &val4);
14608  if (!SWIG_IsOK(ecode4)) {
14609  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plmapfill" "', argument " "4"" of type '" "PLFLT""'");
14610  }
14611  arg4 = (PLFLT)(val4);
14612  ecode5 = SWIG_AsVal_double(obj4, &val5);
14613  if (!SWIG_IsOK(ecode5)) {
14614  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plmapfill" "', argument " "5"" of type '" "PLFLT""'");
14615  }
14616  arg5 = (PLFLT)(val5);
14617  ecode6 = SWIG_AsVal_double(obj5, &val6);
14618  if (!SWIG_IsOK(ecode6)) {
14619  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plmapfill" "', argument " "6"" of type '" "PLFLT""'");
14620  }
14621  arg6 = (PLFLT)(val6);
14622  {
14623  if ( obj6 != Py_None )
14624  {
14625  tmp7 = (PyArrayObject *) myIntArray_ContiguousFromObject( obj6, NPY_PLINT, 1, 1 );
14626  if ( tmp7 == NULL )
14627  return NULL;
14628  arg7 = (PLINT *) PyArray_DATA( tmp7 );
14629  arg8 = PyArray_DIMS( tmp7 )[0];
14630  }
14631  else
14632  {
14633  arg7 = NULL;
14634  arg8 = 0;
14635  }
14636  }
14637  plmapfill(arg1,(char const *)arg2,arg3,arg4,arg5,arg6,(int const *)arg7,arg8);
14638  resultobj = SWIG_Py_Void();
14639  {
14640  cleanup_mapform();
14641  }
14642  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
14643  {
14644  Py_CLEAR( tmp7 );
14645  }
14646  return resultobj;
14647 fail:
14648  {
14649  cleanup_mapform();
14650  }
14651  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
14652  {
14653  Py_CLEAR( tmp7 );
14654  }
14655  return NULL;
14656 }
14657 
14658 
14659 SWIGINTERN PyObject *_wrap_plmeridians(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
14660  PyObject *resultobj = 0;
14661  mapform_func arg1 = (mapform_func) 0 ;
14662  PLFLT arg2 ;
14663  PLFLT arg3 ;
14664  PLFLT arg4 ;
14665  PLFLT arg5 ;
14666  PLFLT arg6 ;
14667  PLFLT arg7 ;
14668  double val2 ;
14669  int ecode2 = 0 ;
14670  double val3 ;
14671  int ecode3 = 0 ;
14672  double val4 ;
14673  int ecode4 = 0 ;
14674  double val5 ;
14675  int ecode5 = 0 ;
14676  double val6 ;
14677  int ecode6 = 0 ;
14678  double val7 ;
14679  int ecode7 = 0 ;
14680  PyObject * obj0 = 0 ;
14681  PyObject * obj1 = 0 ;
14682  PyObject * obj2 = 0 ;
14683  PyObject * obj3 = 0 ;
14684  PyObject * obj4 = 0 ;
14685  PyObject * obj5 = 0 ;
14686  PyObject * obj6 = 0 ;
14687 
14688  if (!PyArg_ParseTuple(args,(char *)"OOOOOOO:plmeridians",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
14689  {
14690  // it must be a callable or none
14691  if ( obj0 == Py_None )
14692  {
14693  arg1 = NULL;
14694  }
14695  else
14696  {
14697  if ( !PyCallable_Check( (PyObject *) obj0 ) )
14698  {
14699  PyErr_SetString( PyExc_ValueError, "mapform argument must be callable" );
14700  return NULL;
14701  }
14702  arg1 = marshal_mapform( obj0 );
14703  }
14704  }
14705  ecode2 = SWIG_AsVal_double(obj1, &val2);
14706  if (!SWIG_IsOK(ecode2)) {
14707  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plmeridians" "', argument " "2"" of type '" "PLFLT""'");
14708  }
14709  arg2 = (PLFLT)(val2);
14710  ecode3 = SWIG_AsVal_double(obj2, &val3);
14711  if (!SWIG_IsOK(ecode3)) {
14712  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "plmeridians" "', argument " "3"" of type '" "PLFLT""'");
14713  }
14714  arg3 = (PLFLT)(val3);
14715  ecode4 = SWIG_AsVal_double(obj3, &val4);
14716  if (!SWIG_IsOK(ecode4)) {
14717  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plmeridians" "', argument " "4"" of type '" "PLFLT""'");
14718  }
14719  arg4 = (PLFLT)(val4);
14720  ecode5 = SWIG_AsVal_double(obj4, &val5);
14721  if (!SWIG_IsOK(ecode5)) {
14722  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plmeridians" "', argument " "5"" of type '" "PLFLT""'");
14723  }
14724  arg5 = (PLFLT)(val5);
14725  ecode6 = SWIG_AsVal_double(obj5, &val6);
14726  if (!SWIG_IsOK(ecode6)) {
14727  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plmeridians" "', argument " "6"" of type '" "PLFLT""'");
14728  }
14729  arg6 = (PLFLT)(val6);
14730  ecode7 = SWIG_AsVal_double(obj6, &val7);
14731  if (!SWIG_IsOK(ecode7)) {
14732  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plmeridians" "', argument " "7"" of type '" "PLFLT""'");
14733  }
14734  arg7 = (PLFLT)(val7);
14735  plmeridians(arg1,arg2,arg3,arg4,arg5,arg6,arg7);
14736  resultobj = SWIG_Py_Void();
14737  {
14738  cleanup_mapform();
14739  }
14740  return resultobj;
14741 fail:
14742  {
14743  cleanup_mapform();
14744  }
14745  return NULL;
14746 }
14747 
14748 
14749 SWIGINTERN PyObject *_wrap_plimage(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
14750  PyObject *resultobj = 0;
14751  PLFLT **arg1 = (PLFLT **) 0 ;
14752  PLINT arg2 ;
14753  PLINT arg3 ;
14754  PLFLT arg4 ;
14755  PLFLT arg5 ;
14756  PLFLT arg6 ;
14757  PLFLT arg7 ;
14758  PLFLT arg8 ;
14759  PLFLT arg9 ;
14760  PLFLT arg10 ;
14761  PLFLT arg11 ;
14762  PLFLT arg12 ;
14763  PLFLT arg13 ;
14764  PyArrayObject *tmp1 = NULL ;
14765  double val4 ;
14766  int ecode4 = 0 ;
14767  double val5 ;
14768  int ecode5 = 0 ;
14769  double val6 ;
14770  int ecode6 = 0 ;
14771  double val7 ;
14772  int ecode7 = 0 ;
14773  double val8 ;
14774  int ecode8 = 0 ;
14775  double val9 ;
14776  int ecode9 = 0 ;
14777  double val10 ;
14778  int ecode10 = 0 ;
14779  double val11 ;
14780  int ecode11 = 0 ;
14781  double val12 ;
14782  int ecode12 = 0 ;
14783  double val13 ;
14784  int ecode13 = 0 ;
14785  PyObject * obj0 = 0 ;
14786  PyObject * obj1 = 0 ;
14787  PyObject * obj2 = 0 ;
14788  PyObject * obj3 = 0 ;
14789  PyObject * obj4 = 0 ;
14790  PyObject * obj5 = 0 ;
14791  PyObject * obj6 = 0 ;
14792  PyObject * obj7 = 0 ;
14793  PyObject * obj8 = 0 ;
14794  PyObject * obj9 = 0 ;
14795  PyObject * obj10 = 0 ;
14796 
14797  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOOOOO:plimage",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9,&obj10)) SWIG_fail;
14798  {
14799  int i, size;
14800  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 2, 2 );
14801  if ( tmp1 == NULL )
14802  return NULL;
14803  Xlen = arg2 = PyArray_DIMS( tmp1 )[0];
14804  Ylen = arg3 = PyArray_DIMS( tmp1 )[1];
14805  size = arg3;
14806  arg1 = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) arg2 );
14807  for ( i = 0; i < arg2; i++ )
14808  arg1[i] = ( (PLFLT *) PyArray_DATA( tmp1 ) + i * size );
14809  }
14810  ecode4 = SWIG_AsVal_double(obj1, &val4);
14811  if (!SWIG_IsOK(ecode4)) {
14812  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plimage" "', argument " "4"" of type '" "PLFLT""'");
14813  }
14814  arg4 = (PLFLT)(val4);
14815  ecode5 = SWIG_AsVal_double(obj2, &val5);
14816  if (!SWIG_IsOK(ecode5)) {
14817  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plimage" "', argument " "5"" of type '" "PLFLT""'");
14818  }
14819  arg5 = (PLFLT)(val5);
14820  ecode6 = SWIG_AsVal_double(obj3, &val6);
14821  if (!SWIG_IsOK(ecode6)) {
14822  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plimage" "', argument " "6"" of type '" "PLFLT""'");
14823  }
14824  arg6 = (PLFLT)(val6);
14825  ecode7 = SWIG_AsVal_double(obj4, &val7);
14826  if (!SWIG_IsOK(ecode7)) {
14827  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plimage" "', argument " "7"" of type '" "PLFLT""'");
14828  }
14829  arg7 = (PLFLT)(val7);
14830  ecode8 = SWIG_AsVal_double(obj5, &val8);
14831  if (!SWIG_IsOK(ecode8)) {
14832  SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "plimage" "', argument " "8"" of type '" "PLFLT""'");
14833  }
14834  arg8 = (PLFLT)(val8);
14835  ecode9 = SWIG_AsVal_double(obj6, &val9);
14836  if (!SWIG_IsOK(ecode9)) {
14837  SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "plimage" "', argument " "9"" of type '" "PLFLT""'");
14838  }
14839  arg9 = (PLFLT)(val9);
14840  ecode10 = SWIG_AsVal_double(obj7, &val10);
14841  if (!SWIG_IsOK(ecode10)) {
14842  SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "plimage" "', argument " "10"" of type '" "PLFLT""'");
14843  }
14844  arg10 = (PLFLT)(val10);
14845  ecode11 = SWIG_AsVal_double(obj8, &val11);
14846  if (!SWIG_IsOK(ecode11)) {
14847  SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "plimage" "', argument " "11"" of type '" "PLFLT""'");
14848  }
14849  arg11 = (PLFLT)(val11);
14850  ecode12 = SWIG_AsVal_double(obj9, &val12);
14851  if (!SWIG_IsOK(ecode12)) {
14852  SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "plimage" "', argument " "12"" of type '" "PLFLT""'");
14853  }
14854  arg12 = (PLFLT)(val12);
14855  ecode13 = SWIG_AsVal_double(obj10, &val13);
14856  if (!SWIG_IsOK(ecode13)) {
14857  SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "plimage" "', argument " "13"" of type '" "PLFLT""'");
14858  }
14859  arg13 = (PLFLT)(val13);
14860  plimage((double const **)arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13);
14861  resultobj = SWIG_Py_Void();
14862  {
14863  Py_CLEAR( tmp1 );
14864  free( arg1 );
14865  }
14866  return resultobj;
14867 fail:
14868  {
14869  Py_CLEAR( tmp1 );
14870  free( arg1 );
14871  }
14872  return NULL;
14873 }
14874 
14875 
14876 SWIGINTERN PyObject *_wrap_plimagefr(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
14877  PyObject *resultobj = 0;
14878  PLFLT **arg1 = (PLFLT **) 0 ;
14879  PLINT arg2 ;
14880  PLINT arg3 ;
14881  PLFLT arg4 ;
14882  PLFLT arg5 ;
14883  PLFLT arg6 ;
14884  PLFLT arg7 ;
14885  PLFLT arg8 ;
14886  PLFLT arg9 ;
14887  PLFLT arg10 ;
14888  PLFLT arg11 ;
14889  pltr_func arg12 = (pltr_func) 0 ;
14890  PLPointer arg13 = (PLPointer) 0 ;
14891  PyArrayObject *tmp1 = NULL ;
14892  double val4 ;
14893  int ecode4 = 0 ;
14894  double val5 ;
14895  int ecode5 = 0 ;
14896  double val6 ;
14897  int ecode6 = 0 ;
14898  double val7 ;
14899  int ecode7 = 0 ;
14900  double val8 ;
14901  int ecode8 = 0 ;
14902  double val9 ;
14903  int ecode9 = 0 ;
14904  double val10 ;
14905  int ecode10 = 0 ;
14906  double val11 ;
14907  int ecode11 = 0 ;
14908  PyObject * obj0 = 0 ;
14909  PyObject * obj1 = 0 ;
14910  PyObject * obj2 = 0 ;
14911  PyObject * obj3 = 0 ;
14912  PyObject * obj4 = 0 ;
14913  PyObject * obj5 = 0 ;
14914  PyObject * obj6 = 0 ;
14915  PyObject * obj7 = 0 ;
14916  PyObject * obj8 = 0 ;
14917  PyObject * obj9 = 0 ;
14918  PyObject * obj10 = 0 ;
14919 
14920  {
14921  python_pltr = 0;
14922  arg12 = NULL;
14923  }
14924  {
14925  arg13 = NULL;
14926  }
14927  if (!PyArg_ParseTuple(args,(char *)"OOOOOOOOO|OO:plimagefr",&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9,&obj10)) SWIG_fail;
14928  {
14929  int i, size;
14930  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 2, 2 );
14931  if ( tmp1 == NULL )
14932  return NULL;
14933  Xlen = arg2 = PyArray_DIMS( tmp1 )[0];
14934  Ylen = arg3 = PyArray_DIMS( tmp1 )[1];
14935  size = arg3;
14936  arg1 = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) arg2 );
14937  for ( i = 0; i < arg2; i++ )
14938  arg1[i] = ( (PLFLT *) PyArray_DATA( tmp1 ) + i * size );
14939  }
14940  ecode4 = SWIG_AsVal_double(obj1, &val4);
14941  if (!SWIG_IsOK(ecode4)) {
14942  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "plimagefr" "', argument " "4"" of type '" "PLFLT""'");
14943  }
14944  arg4 = (PLFLT)(val4);
14945  ecode5 = SWIG_AsVal_double(obj2, &val5);
14946  if (!SWIG_IsOK(ecode5)) {
14947  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "plimagefr" "', argument " "5"" of type '" "PLFLT""'");
14948  }
14949  arg5 = (PLFLT)(val5);
14950  ecode6 = SWIG_AsVal_double(obj3, &val6);
14951  if (!SWIG_IsOK(ecode6)) {
14952  SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "plimagefr" "', argument " "6"" of type '" "PLFLT""'");
14953  }
14954  arg6 = (PLFLT)(val6);
14955  ecode7 = SWIG_AsVal_double(obj4, &val7);
14956  if (!SWIG_IsOK(ecode7)) {
14957  SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "plimagefr" "', argument " "7"" of type '" "PLFLT""'");
14958  }
14959  arg7 = (PLFLT)(val7);
14960  ecode8 = SWIG_AsVal_double(obj5, &val8);
14961  if (!SWIG_IsOK(ecode8)) {
14962  SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "plimagefr" "', argument " "8"" of type '" "PLFLT""'");
14963  }
14964  arg8 = (PLFLT)(val8);
14965  ecode9 = SWIG_AsVal_double(obj6, &val9);
14966  if (!SWIG_IsOK(ecode9)) {
14967  SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "plimagefr" "', argument " "9"" of type '" "PLFLT""'");
14968  }
14969  arg9 = (PLFLT)(val9);
14970  ecode10 = SWIG_AsVal_double(obj7, &val10);
14971  if (!SWIG_IsOK(ecode10)) {
14972  SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "plimagefr" "', argument " "10"" of type '" "PLFLT""'");
14973  }
14974  arg10 = (PLFLT)(val10);
14975  ecode11 = SWIG_AsVal_double(obj8, &val11);
14976  if (!SWIG_IsOK(ecode11)) {
14977  SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "plimagefr" "', argument " "11"" of type '" "PLFLT""'");
14978  }
14979  arg11 = (PLFLT)(val11);
14980  if (obj9) {
14981  {
14982  // it must be a callable or None
14983  if ( obj9 == Py_None )
14984  {
14985  arg12 = NULL;
14986  }
14987  else
14988  {
14989  if ( !PyCallable_Check( (PyObject *) obj9 ) )
14990  {
14991  PyErr_SetString( PyExc_ValueError, "pltr argument must be callable" );
14992  return NULL;
14993  }
14994  arg12 = marshal_pltr( obj9 );
14995  }
14996  }
14997  }
14998  if (obj10) {
14999  {
15000  if ( obj10 == Py_None )
15001  arg13 = NULL;
15002  else
15003  {
15004  arg13 = marshal_PLPointer( obj10, 1 );
15005  }
15006  }
15007  }
15008  plimagefr((double const **)arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13);
15009  resultobj = SWIG_Py_Void();
15010  {
15011  Py_CLEAR( tmp1 );
15012  free( arg1 );
15013  }
15014  {
15015  cleanup_pltr();
15016  }
15017  {
15019  }
15020  return resultobj;
15021 fail:
15022  {
15023  Py_CLEAR( tmp1 );
15024  free( arg1 );
15025  }
15026  {
15027  cleanup_pltr();
15028  }
15029  {
15031  }
15032  return NULL;
15033 }
15034 
15035 
15036 SWIGINTERN PyObject *_wrap_plClearOpts(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
15037  PyObject *resultobj = 0;
15038 
15039  if (!PyArg_ParseTuple(args,(char *)":plClearOpts")) SWIG_fail;
15040  plClearOpts();
15041  resultobj = SWIG_Py_Void();
15042  return resultobj;
15043 fail:
15044  return NULL;
15045 }
15046 
15047 
15048 SWIGINTERN PyObject *_wrap_plResetOpts(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
15049  PyObject *resultobj = 0;
15050 
15051  if (!PyArg_ParseTuple(args,(char *)":plResetOpts")) SWIG_fail;
15052  plResetOpts();
15053  resultobj = SWIG_Py_Void();
15054  return resultobj;
15055 fail:
15056  return NULL;
15057 }
15058 
15059 
15060 SWIGINTERN PyObject *_wrap_plSetUsage(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
15061  PyObject *resultobj = 0;
15062  char *arg1 = (char *) 0 ;
15063  char *arg2 = (char *) 0 ;
15064  int res1 ;
15065  char *buf1 = 0 ;
15066  int alloc1 = 0 ;
15067  int res2 ;
15068  char *buf2 = 0 ;
15069  int alloc2 = 0 ;
15070  PyObject * obj0 = 0 ;
15071  PyObject * obj1 = 0 ;
15072 
15073  if (!PyArg_ParseTuple(args,(char *)"OO:plSetUsage",&obj0,&obj1)) SWIG_fail;
15074  res1 = SWIG_AsCharPtrAndSize(obj0, &buf1, NULL, &alloc1);
15075  if (!SWIG_IsOK(res1)) {
15076  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "plSetUsage" "', argument " "1"" of type '" "char const *""'");
15077  }
15078  arg1 = (char *)(buf1);
15079  res2 = SWIG_AsCharPtrAndSize(obj1, &buf2, NULL, &alloc2);
15080  if (!SWIG_IsOK(res2)) {
15081  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "plSetUsage" "', argument " "2"" of type '" "char const *""'");
15082  }
15083  arg2 = (char *)(buf2);
15084  plSetUsage((char const *)arg1,(char const *)arg2);
15085  resultobj = SWIG_Py_Void();
15086  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
15087  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
15088  return resultobj;
15089 fail:
15090  if (alloc1 == SWIG_NEWOBJ) free((char*)buf1);
15091  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
15092  return NULL;
15093 }
15094 
15095 
15096 SWIGINTERN PyObject *_wrap_plOptUsage(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
15097  PyObject *resultobj = 0;
15098 
15099  if (!PyArg_ParseTuple(args,(char *)":plOptUsage")) SWIG_fail;
15100  plOptUsage();
15101  resultobj = SWIG_Py_Void();
15102  return resultobj;
15103 fail:
15104  return NULL;
15105 }
15106 
15107 
15108 SWIGINTERN PyObject *_wrap_plMinMax2dGrid(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
15109  PyObject *resultobj = 0;
15110  PLFLT **arg1 = (PLFLT **) 0 ;
15111  PLINT arg2 ;
15112  PLINT arg3 ;
15113  PLFLT *arg4 = (PLFLT *) 0 ;
15114  PLFLT *arg5 = (PLFLT *) 0 ;
15115  PyArrayObject *tmp1 = NULL ;
15116  PLFLT temp4 ;
15117  int res4 = SWIG_TMPOBJ ;
15118  PLFLT temp5 ;
15119  int res5 = SWIG_TMPOBJ ;
15120  PyObject * obj0 = 0 ;
15121 
15122  arg4 = &temp4;
15123  arg5 = &temp5;
15124  if (!PyArg_ParseTuple(args,(char *)"O:plMinMax2dGrid",&obj0)) SWIG_fail;
15125  {
15126  int i, size;
15127  tmp1 = (PyArrayObject *) myArray_ContiguousFromObject( obj0, NPY_PLFLT, 2, 2 );
15128  if ( tmp1 == NULL )
15129  return NULL;
15130  Xlen = arg2 = PyArray_DIMS( tmp1 )[0];
15131  Ylen = arg3 = PyArray_DIMS( tmp1 )[1];
15132  size = arg3;
15133  arg1 = (PLFLT **) malloc( sizeof ( PLFLT* ) * (size_t) arg2 );
15134  for ( i = 0; i < arg2; i++ )
15135  arg1[i] = ( (PLFLT *) PyArray_DATA( tmp1 ) + i * size );
15136  }
15137  plMinMax2dGrid((double const **)arg1,arg2,arg3,arg4,arg5);
15138  resultobj = SWIG_Py_Void();
15139  if (SWIG_IsTmpObj(res4)) {
15140  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg4)));
15141  } else {
15142  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
15143  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_double, new_flags));
15144  }
15145  if (SWIG_IsTmpObj(res5)) {
15146  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg5)));
15147  } else {
15148  int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
15149  resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_double, new_flags));
15150  }
15151  {
15152  Py_CLEAR( tmp1 );
15153  free( arg1 );
15154  }
15155  return resultobj;
15156 fail:
15157  {
15158  Py_CLEAR( tmp1 );
15159  free( arg1 );
15160  }
15161  return NULL;
15162 }
15163 
15164 
15165 SWIGINTERN PyObject *_wrap_plGetCursor(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
15166  PyObject *resultobj = 0;
15167  PLGraphicsIn *arg1 = (PLGraphicsIn *) 0 ;
15168  void *argp1 = 0 ;
15169  int res1 = 0 ;
15170  PyObject * obj0 = 0 ;
15171  PLINT result;
15172 
15173  if (!PyArg_ParseTuple(args,(char *)"O:plGetCursor",&obj0)) SWIG_fail;
15174  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_PLGraphicsIn, 0 | 0 );
15175  if (!SWIG_IsOK(res1)) {
15176  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "plGetCursor" "', argument " "1"" of type '" "PLGraphicsIn *""'");
15177  }
15178  arg1 = (PLGraphicsIn *)(argp1);
15179  result = (PLINT)plGetCursor(arg1);
15180  resultobj = SWIG_From_int((int)(result));
15181  return resultobj;
15182 fail:
15183  return NULL;
15184 }
15185 
15186 
15187 static PyMethodDef SwigMethods[] = {
15188  { (char *)"SWIG_PyInstanceMethod_New", (PyCFunction)SWIG_PyInstanceMethod_New, METH_O, NULL},
15189  { (char *)"pltr0", _wrap_pltr0, METH_VARARGS, NULL},
15190  { (char *)"pltr1", _wrap_pltr1, METH_VARARGS, NULL},
15191  { (char *)"pltr2", _wrap_pltr2, METH_VARARGS, NULL},
15192  { (char *)"PLGraphicsIn_type_set", _wrap_PLGraphicsIn_type_set, METH_VARARGS, NULL},
15193  { (char *)"PLGraphicsIn_type_get", _wrap_PLGraphicsIn_type_get, METH_VARARGS, NULL},
15194  { (char *)"PLGraphicsIn_state_set", _wrap_PLGraphicsIn_state_set, METH_VARARGS, NULL},
15195  { (char *)"PLGraphicsIn_state_get", _wrap_PLGraphicsIn_state_get, METH_VARARGS, NULL},
15196  { (char *)"PLGraphicsIn_keysym_set", _wrap_PLGraphicsIn_keysym_set, METH_VARARGS, NULL},
15197  { (char *)"PLGraphicsIn_keysym_get", _wrap_PLGraphicsIn_keysym_get, METH_VARARGS, NULL},
15198  { (char *)"PLGraphicsIn_button_set", _wrap_PLGraphicsIn_button_set, METH_VARARGS, NULL},
15199  { (char *)"PLGraphicsIn_button_get", _wrap_PLGraphicsIn_button_get, METH_VARARGS, NULL},
15200  { (char *)"PLGraphicsIn_subwindow_set", _wrap_PLGraphicsIn_subwindow_set, METH_VARARGS, NULL},
15201  { (char *)"PLGraphicsIn_subwindow_get", _wrap_PLGraphicsIn_subwindow_get, METH_VARARGS, NULL},
15202  { (char *)"PLGraphicsIn_string_set", _wrap_PLGraphicsIn_string_set, METH_VARARGS, NULL},
15203  { (char *)"PLGraphicsIn_string_get", _wrap_PLGraphicsIn_string_get, METH_VARARGS, NULL},
15204  { (char *)"PLGraphicsIn_pX_set", _wrap_PLGraphicsIn_pX_set, METH_VARARGS, NULL},
15205  { (char *)"PLGraphicsIn_pX_get", _wrap_PLGraphicsIn_pX_get, METH_VARARGS, NULL},
15206  { (char *)"PLGraphicsIn_pY_set", _wrap_PLGraphicsIn_pY_set, METH_VARARGS, NULL},
15207  { (char *)"PLGraphicsIn_pY_get", _wrap_PLGraphicsIn_pY_get, METH_VARARGS, NULL},
15208  { (char *)"PLGraphicsIn_dX_set", _wrap_PLGraphicsIn_dX_set, METH_VARARGS, NULL},
15209  { (char *)"PLGraphicsIn_dX_get", _wrap_PLGraphicsIn_dX_get, METH_VARARGS, NULL},
15210  { (char *)"PLGraphicsIn_dY_set", _wrap_PLGraphicsIn_dY_set, METH_VARARGS, NULL},
15211  { (char *)"PLGraphicsIn_dY_get", _wrap_PLGraphicsIn_dY_get, METH_VARARGS, NULL},
15212  { (char *)"PLGraphicsIn_wX_set", _wrap_PLGraphicsIn_wX_set, METH_VARARGS, NULL},
15213  { (char *)"PLGraphicsIn_wX_get", _wrap_PLGraphicsIn_wX_get, METH_VARARGS, NULL},
15214  { (char *)"PLGraphicsIn_wY_set", _wrap_PLGraphicsIn_wY_set, METH_VARARGS, NULL},
15215  { (char *)"PLGraphicsIn_wY_get", _wrap_PLGraphicsIn_wY_get, METH_VARARGS, NULL},
15216  { (char *)"new_PLGraphicsIn", _wrap_new_PLGraphicsIn, METH_VARARGS, NULL},
15217  { (char *)"delete_PLGraphicsIn", _wrap_delete_PLGraphicsIn, METH_VARARGS, NULL},
15218  { (char *)"PLGraphicsIn_swigregister", PLGraphicsIn_swigregister, METH_VARARGS, NULL},
15219  { (char *)"plsxwin", _wrap_plsxwin, METH_VARARGS, NULL},
15220  { (char *)"pl_setcontlabelformat", _wrap_pl_setcontlabelformat, METH_VARARGS, (char *)"\n"
15221  "Set format of numerical label for contours\n"
15222  "\n"
15223  "DESCRIPTION:\n"
15224  "\n"
15225  " Set format of numerical label for contours.\n"
15226  "\n"
15227  " Redacted form: pl_setcontlabelformat(lexp, sigdig)\n"
15228  "\n"
15229  " This function is used example 9.\n"
15230  "\n"
15231  "\n"
15232  "\n"
15233  "SYNOPSIS:\n"
15234  "\n"
15235  "pl_setcontlabelformat(lexp, sigdig)\n"
15236  "\n"
15237  "ARGUMENTS:\n"
15238  "\n"
15239  " lexp (PLINT, input) : If the contour numerical label is greater\n"
15240  " than 10^(lexp) or less than 10^(-lexp), then the exponential\n"
15241  " format is used. Default value of lexp is 4.\n"
15242  "\n"
15243  " sigdig (PLINT, input) : Number of significant digits. Default\n"
15244  " value is 2.\n"
15245  "\n"
15246  ""},
15247  { (char *)"pl_setcontlabelparam", _wrap_pl_setcontlabelparam, METH_VARARGS, (char *)"\n"
15248  "Set parameters of contour labelling other than format of numerical label\n"
15249  "\n"
15250  "DESCRIPTION:\n"
15251  "\n"
15252  " Set parameters of contour labelling other than those handled by\n"
15253  " pl_setcontlabelformat.\n"
15254  "\n"
15255  " Redacted form: pl_setcontlabelparam(offset, size, spacing, active)\n"
15256  "\n"
15257  " This function is used in example 9.\n"
15258  "\n"
15259  "\n"
15260  "\n"
15261  "SYNOPSIS:\n"
15262  "\n"
15263  "pl_setcontlabelparam(offset, size, spacing, active)\n"
15264  "\n"
15265  "ARGUMENTS:\n"
15266  "\n"
15267  " offset (PLFLT, input) : Offset of label from contour line (if set\n"
15268  " to 0.0, labels are printed on the lines). Default value is 0.006.\n"
15269  "\n"
15270  " size (PLFLT, input) : Font height for contour labels (normalized).\n"
15271  " Default value is 0.3.\n"
15272  "\n"
15273  " spacing (PLFLT, input) : Spacing parameter for contour labels.\n"
15274  " Default value is 0.1.\n"
15275  "\n"
15276  " active (PLINT, input) : Activate labels. Set to 1 if you want\n"
15277  " contour labels on. Default is off (0).\n"
15278  "\n"
15279  ""},
15280  { (char *)"pladv", _wrap_pladv, METH_VARARGS, (char *)"\n"
15281  "Advance the (sub-)page\n"
15282  "\n"
15283  "DESCRIPTION:\n"
15284  "\n"
15285  " Advances to the next subpage if sub=0, performing a page advance if\n"
15286  " there are no remaining subpages on the current page. If subpages\n"
15287  " aren't being used, pladv(0) will always advance the page. If page>0,\n"
15288  " PLplot switches to the specified subpage. Note that this allows you\n"
15289  " to overwrite a plot on the specified subpage; if this is not what you\n"
15290  " intended, use pleop followed by plbop to first advance the page. This\n"
15291  " routine is called automatically (with page=0) by plenv, but if plenv\n"
15292  " is not used, pladv must be called after initializing PLplot but before\n"
15293  " defining the viewport.\n"
15294  "\n"
15295  " Redacted form: pladv(page)\n"
15296  "\n"
15297  " This function is used in examples 1, 2, 4, 6-12, 14-18, 20, 21, 23-27,\n"
15298  " 29, and 31.\n"
15299  "\n"
15300  "\n"
15301  "\n"
15302  "SYNOPSIS:\n"
15303  "\n"
15304  "pladv(page)\n"
15305  "\n"
15306  "ARGUMENTS:\n"
15307  "\n"
15308  " page (PLINT, input) : Specifies the subpage number (starting from 1\n"
15309  " in the top left corner and increasing along the rows) to which to\n"
15310  " advance. Set to zero to advance to the next subpage (or to the\n"
15311  " next page if subpages are not being used).\n"
15312  "\n"
15313  ""},
15314  { (char *)"plarc", _wrap_plarc, METH_VARARGS, (char *)"\n"
15315  "Draw a circular or elliptical arc\n"
15316  "\n"
15317  "DESCRIPTION:\n"
15318  "\n"
15319  " Draw a possibly filled arc centered at x, y with semimajor axis a and\n"
15320  " semiminor axis b, starting at angle1 and ending at angle2.\n"
15321  "\n"
15322  " Redacted form: General: plarc(x, y, a, b, angle1, angle2, rotate,\n"
15323  " fill)\n"
15324  "\n"
15325  "\n"
15326  " This function is used in examples 3 and 27.\n"
15327  "\n"
15328  "\n"
15329  "\n"
15330  "SYNOPSIS:\n"
15331  "\n"
15332  "plarc(x, y, a, b, angle1, angle2, rotate, fill)\n"
15333  "\n"
15334  "ARGUMENTS:\n"
15335  "\n"
15336  " x (PLFLT, input) : X coordinate of arc center.\n"
15337  "\n"
15338  " y (PLFLT, input) : Y coordinate of arc center.\n"
15339  "\n"
15340  " a (PLFLT, input) : Length of the semimajor axis of the arc.\n"
15341  "\n"
15342  " b (PLFLT, input) : Length of the semiminor axis of the arc.\n"
15343  "\n"
15344  " angle1 (PLFLT, input) : Starting angle of the arc relative to the\n"
15345  " semimajor axis.\n"
15346  "\n"
15347  " angle2 (PLFLT, input) : Ending angle of the arc relative to the\n"
15348  " semimajor axis.\n"
15349  "\n"
15350  " rotate (PLFLT, input) : Angle of the semimajor axis relative to the\n"
15351  " X-axis.\n"
15352  "\n"
15353  " fill (PLBOOL, input) : Draw a filled arc.\n"
15354  "\n"
15355  ""},
15356  { (char *)"plaxes", _wrap_plaxes, METH_VARARGS, (char *)"\n"
15357  "Draw a box with axes, etc. with arbitrary origin\n"
15358  "\n"
15359  "DESCRIPTION:\n"
15360  "\n"
15361  " Draws a box around the currently defined viewport with arbitrary\n"
15362  " world-coordinate origin specified by x0 and y0 and labels it with\n"
15363  " world coordinate values appropriate to the window. Thus plaxes should\n"
15364  " only be called after defining both viewport and window. The ascii\n"
15365  " character strings xopt and yopt specify how the box should be drawn as\n"
15366  " described below. If ticks and/or subticks are to be drawn for a\n"
15367  " particular axis, the tick intervals and number of subintervals may be\n"
15368  " specified explicitly, or they may be defaulted by setting the\n"
15369  " appropriate arguments to zero.\n"
15370  "\n"
15371  " Redacted form: General: plaxes(x0, y0, xopt, xtick, nxsub, yopt,\n"
15372  " ytick, nysub)\n"
15373  " Perl/PDL: plaxes(x0, y0, xtick, nxsub, ytick, nysub, xopt,\n"
15374  " yopt)\n"
15375  "\n"
15376  "\n"
15377  " This function is not used in any examples.\n"
15378  "\n"
15379  "\n"
15380  "\n"
15381  "SYNOPSIS:\n"
15382  "\n"
15383  "plaxes(x0, y0, xopt, xtick, nxsub, yopt, ytick, nysub)\n"
15384  "\n"
15385  "ARGUMENTS:\n"
15386  "\n"
15387  " x0 (PLFLT, input) : World X coordinate of origin.\n"
15388  "\n"
15389  " y0 (PLFLT, input) : World Y coordinate of origin.\n"
15390  "\n"
15391  " xopt (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
15392  " options for the x axis. The string can include any combination of\n"
15393  " the following letters (upper or lower case) in any order: a: Draws\n"
15394  " axis, X-axis is horizontal line (y=0), and Y-axis is vertical line\n"
15395  " (x=0).\n"
15396  " b: Draws bottom (X) or left (Y) edge of frame.\n"
15397  " c: Draws top (X) or right (Y) edge of frame.\n"
15398  " d: Plot labels as date / time. Values are assumed to be\n"
15399  " seconds since the epoch (as used by gmtime).\n"
15400  " f: Always use fixed point numeric labels.\n"
15401  " g: Draws a grid at the major tick interval.\n"
15402  " h: Draws a grid at the minor tick interval.\n"
15403  " i: Inverts tick marks, so they are drawn outwards, rather than\n"
15404  " inwards.\n"
15405  " l: Labels axis logarithmically. This only affects the labels,\n"
15406  " not the data, and so it is necessary to compute the logarithms\n"
15407  " of data points before passing them to any of the drawing\n"
15408  " routines.\n"
15409  " m: Writes numeric labels at major tick intervals in the\n"
15410  " unconventional location (above box for X, right of box for Y).\n"
15411  " n: Writes numeric labels at major tick intervals in the\n"
15412  " conventional location (below box for X, left of box for Y).\n"
15413  " o: Use custom labelling function to generate axis label text.\n"
15414  " The custom labelling function can be defined with the\n"
15415  " plslabelfunc command.\n"
15416  " s: Enables subticks between major ticks, only valid if t is\n"
15417  " also specified.\n"
15418  " t: Draws major ticks.\n"
15419  " u: Exactly like \"b\" except don't draw edge line.\n"
15420  " w: Exactly like \"c\" except don't draw edge line.\n"
15421  " x: Exactly like \"t\" (including the side effect of the\n"
15422  " numerical labels for the major ticks) except exclude drawing\n"
15423  " the major and minor tick marks.\n"
15424  "\n"
15425  "\n"
15426  " xtick (PLFLT, input) : World coordinate interval between major\n"
15427  " ticks on the x axis. If it is set to zero, PLplot automatically\n"
15428  " generates a suitable tick interval.\n"
15429  "\n"
15430  " nxsub (PLINT, input) : Number of subintervals between major x axis\n"
15431  " ticks for minor ticks. If it is set to zero, PLplot automatically\n"
15432  " generates a suitable minor tick interval.\n"
15433  "\n"
15434  " yopt (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
15435  " options for the y axis. The string can include any combination of\n"
15436  " the letters defined above for xopt, and in addition may contain:\n"
15437  " v: Write numeric labels for the y axis parallel to the base of the\n"
15438  " graph, rather than parallel to the axis.\n"
15439  "\n"
15440  "\n"
15441  " ytick (PLFLT, input) : World coordinate interval between major\n"
15442  " ticks on the y axis. If it is set to zero, PLplot automatically\n"
15443  " generates a suitable tick interval.\n"
15444  "\n"
15445  " nysub (PLINT, input) : Number of subintervals between major y axis\n"
15446  " ticks for minor ticks. If it is set to zero, PLplot automatically\n"
15447  " generates a suitable minor tick interval.\n"
15448  "\n"
15449  ""},
15450  { (char *)"plbin", _wrap_plbin, METH_VARARGS, (char *)"\n"
15451  "Plot a histogram from binned data\n"
15452  "\n"
15453  "DESCRIPTION:\n"
15454  "\n"
15455  " Plots a histogram consisting of nbin bins. The value associated with\n"
15456  " the i'th bin is placed in x[i], and the number of points in the bin is\n"
15457  " placed in y[i]. For proper operation, the values in x[i] must form a\n"
15458  " strictly increasing sequence. By default, x[i] is the left-hand edge\n"
15459  " of the i'th bin. If opt=PL_BIN_CENTRED is used, the bin boundaries are\n"
15460  " placed midway between the values in the x vector. Also see plhist for\n"
15461  " drawing histograms from unbinned data.\n"
15462  "\n"
15463  " Redacted form: General: plbin(x, y, opt)\n"
15464  " Perl/PDL: plbin(nbin, x, y, opt)\n"
15465  " Python: plbin(nbin, x, y, opt)\n"
15466  "\n"
15467  "\n"
15468  " This function is not used in any examples.\n"
15469  "\n"
15470  "\n"
15471  "\n"
15472  "SYNOPSIS:\n"
15473  "\n"
15474  "plbin(nbin, x, y, opt)\n"
15475  "\n"
15476  "ARGUMENTS:\n"
15477  "\n"
15478  " nbin (PLINT, input) : Number of bins (i.e., number of values in x\n"
15479  " and y vectors.)\n"
15480  "\n"
15481  " x (PLFLT_VECTOR, input) : A vector containing values associated\n"
15482  " with bins. These must form a strictly increasing sequence.\n"
15483  "\n"
15484  " y (PLFLT_VECTOR, input) : A vector containing a number which is\n"
15485  " proportional to the number of points in each bin. This is a PLFLT\n"
15486  " (instead of PLINT) vector so as to allow histograms of\n"
15487  " probabilities, etc.\n"
15488  "\n"
15489  " opt (PLINT, input) : Is a combination of several flags:\n"
15490  " opt=PL_BIN_DEFAULT: The x represent the lower bin boundaries, the\n"
15491  " outer bins are expanded to fill up the entire x-axis and bins of\n"
15492  " zero height are simply drawn.\n"
15493  " opt=PL_BIN_CENTRED|...: The bin boundaries are to be midway\n"
15494  " between the x values. If the values in x are equally spaced,\n"
15495  " the values are the center values of the bins.\n"
15496  " opt=PL_BIN_NOEXPAND|...: The outer bins are drawn with equal\n"
15497  " size as the ones inside.\n"
15498  " opt=PL_BIN_NOEMPTY|...: Bins with zero height are not drawn\n"
15499  " (there is a gap for such bins).\n"
15500  "\n"
15501  ""},
15502  { (char *)"plbtime", _wrap_plbtime, METH_VARARGS, (char *)"\n"
15503  "Calculate broken-down time from continuous time for the current stream\n"
15504  "\n"
15505  "DESCRIPTION:\n"
15506  "\n"
15507  " Calculate broken-down time; year, month, day, hour, min, sec; from\n"
15508  " continuous time, ctime for the current stream. This function is the\n"
15509  " inverse of plctime.\n"
15510  "\n"
15511  " The PLplot definition of broken-down time is a calendar time that\n"
15512  " completely ignores all time zone offsets, i.e., it is the user's\n"
15513  " responsibility to apply those offsets (if so desired) before using the\n"
15514  " PLplot time API. By default broken-down time is defined using the\n"
15515  " proleptic Gregorian calendar without the insertion of leap seconds and\n"
15516  " continuous time is defined as the number of seconds since the Unix\n"
15517  " epoch of 1970-01-01T00:00:00Z. However, other definitions of\n"
15518  " broken-down and continuous time are possible, see plconfigtime.\n"
15519  "\n"
15520  " Redacted form: General: plbtime(year, month, day, hour, min, sec,\n"
15521  " ctime)\n"
15522  " Perl/PDL: Not available?\n"
15523  "\n"
15524  "\n"
15525  " This function is used in example 29.\n"
15526  "\n"
15527  "\n"
15528  "\n"
15529  "SYNOPSIS:\n"
15530  "\n"
15531  "plbtime(year, month, day, hour, min, sec, ctime)\n"
15532  "\n"
15533  "ARGUMENTS:\n"
15534  "\n"
15535  " year (PLINT_NC_SCALAR, output) : Returned value of years with\n"
15536  " positive values corresponding to CE (i.e., 1 = 1 CE, etc.) and\n"
15537  " non-negative values corresponding to BCE (e.g., 0 = 1 BCE, -1 = 2\n"
15538  " BCE, etc.)\n"
15539  "\n"
15540  " month (PLINT_NC_SCALAR, output) : Returned value of month within\n"
15541  " the year in the range from 0 (January) to 11 (December).\n"
15542  "\n"
15543  " day (PLINT_NC_SCALAR, output) : Returned value of day within the\n"
15544  " month in the range from 1 to 31.\n"
15545  "\n"
15546  " hour (PLINT_NC_SCALAR, output) : Returned value of hour within the\n"
15547  " day in the range from 0 to 23.\n"
15548  "\n"
15549  " min (PLINT_NC_SCALAR, output) : Returned value of minute within the\n"
15550  " hour in the range from 0 to 59\n"
15551  "\n"
15552  " sec (PLFLT_NC_SCALAR, output) : Returned value of second within the\n"
15553  " minute in range from 0. to 60.\n"
15554  "\n"
15555  " ctime (PLFLT, input) : Continuous time from which the broken-down\n"
15556  " time is calculated.\n"
15557  "\n"
15558  ""},
15559  { (char *)"plbop", _wrap_plbop, METH_VARARGS, (char *)"\n"
15560  "Begin a new page\n"
15561  "\n"
15562  "DESCRIPTION:\n"
15563  "\n"
15564  " Begins a new page. For a file driver, the output file is opened if\n"
15565  " necessary. Advancing the page via pleop and plbop is useful when a\n"
15566  " page break is desired at a particular point when plotting to subpages.\n"
15567  " Another use for pleop and plbop is when plotting pages to different\n"
15568  " files, since you can manually set the file name by calling plsfnam\n"
15569  " after the call to pleop. (In fact some drivers may only support a\n"
15570  " single page per file, making this a necessity.) One way to handle\n"
15571  " this case automatically is to page advance via pladv, but enable\n"
15572  " familying (see plsfam) with a small limit on the file size so that a\n"
15573  " new family member file will be created on each page break.\n"
15574  "\n"
15575  " Redacted form: plbop()\n"
15576  "\n"
15577  " This function is used in examples 2 and 20.\n"
15578  "\n"
15579  "\n"
15580  "\n"
15581  "SYNOPSIS:\n"
15582  "\n"
15583  "plbop()\n"
15584  "\n"
15585  ""},
15586  { (char *)"plbox", _wrap_plbox, METH_VARARGS, (char *)"\n"
15587  "Draw a box with axes, etc\n"
15588  "\n"
15589  "DESCRIPTION:\n"
15590  "\n"
15591  " Draws a box around the currently defined viewport, and labels it with\n"
15592  " world coordinate values appropriate to the window. Thus plbox should\n"
15593  " only be called after defining both viewport and window. The ascii\n"
15594  " character strings xopt and yopt specify how the box should be drawn as\n"
15595  " described below. If ticks and/or subticks are to be drawn for a\n"
15596  " particular axis, the tick intervals and number of subintervals may be\n"
15597  " specified explicitly, or they may be defaulted by setting the\n"
15598  " appropriate arguments to zero.\n"
15599  "\n"
15600  " Redacted form: General: plbox(xopt, xtick, nxsub, yopt, ytick, nysub)\n"
15601  " Perl/PDL: plbox(xtick, nxsub, ytick, nysub, xopt, yopt)\n"
15602  "\n"
15603  "\n"
15604  " This function is used in examples 1, 2, 4, 6, 6-12, 14-18, 21, 23-26,\n"
15605  " and 29.\n"
15606  "\n"
15607  "\n"
15608  "\n"
15609  "SYNOPSIS:\n"
15610  "\n"
15611  "plbox(xopt, xtick, nxsub, yopt, ytick, nysub)\n"
15612  "\n"
15613  "ARGUMENTS:\n"
15614  "\n"
15615  " xopt (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
15616  " options for the x axis. The string can include any combination of\n"
15617  " the following letters (upper or lower case) in any order: a: Draws\n"
15618  " axis, X-axis is horizontal line (y=0), and Y-axis is vertical line\n"
15619  " (x=0).\n"
15620  " b: Draws bottom (X) or left (Y) edge of frame.\n"
15621  " c: Draws top (X) or right (Y) edge of frame.\n"
15622  " d: Plot labels as date / time. Values are assumed to be\n"
15623  " seconds since the epoch (as used by gmtime).\n"
15624  " f: Always use fixed point numeric labels.\n"
15625  " g: Draws a grid at the major tick interval.\n"
15626  " h: Draws a grid at the minor tick interval.\n"
15627  " i: Inverts tick marks, so they are drawn outwards, rather than\n"
15628  " inwards.\n"
15629  " l: Labels axis logarithmically. This only affects the labels,\n"
15630  " not the data, and so it is necessary to compute the logarithms\n"
15631  " of data points before passing them to any of the drawing\n"
15632  " routines.\n"
15633  " m: Writes numeric labels at major tick intervals in the\n"
15634  " unconventional location (above box for X, right of box for Y).\n"
15635  " n: Writes numeric labels at major tick intervals in the\n"
15636  " conventional location (below box for X, left of box for Y).\n"
15637  " o: Use custom labelling function to generate axis label text.\n"
15638  " The custom labelling function can be defined with the\n"
15639  " plslabelfunc command.\n"
15640  " s: Enables subticks between major ticks, only valid if t is\n"
15641  " also specified.\n"
15642  " t: Draws major ticks.\n"
15643  " u: Exactly like \"b\" except don't draw edge line.\n"
15644  " w: Exactly like \"c\" except don't draw edge line.\n"
15645  " x: Exactly like \"t\" (including the side effect of the\n"
15646  " numerical labels for the major ticks) except exclude drawing\n"
15647  " the major and minor tick marks.\n"
15648  "\n"
15649  "\n"
15650  " xtick (PLFLT, input) : World coordinate interval between major\n"
15651  " ticks on the x axis. If it is set to zero, PLplot automatically\n"
15652  " generates a suitable tick interval.\n"
15653  "\n"
15654  " nxsub (PLINT, input) : Number of subintervals between major x axis\n"
15655  " ticks for minor ticks. If it is set to zero, PLplot automatically\n"
15656  " generates a suitable minor tick interval.\n"
15657  "\n"
15658  " yopt (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
15659  " options for the y axis. The string can include any combination of\n"
15660  " the letters defined above for xopt, and in addition may contain:\n"
15661  " v: Write numeric labels for the y axis parallel to the base of the\n"
15662  " graph, rather than parallel to the axis.\n"
15663  "\n"
15664  "\n"
15665  " ytick (PLFLT, input) : World coordinate interval between major\n"
15666  " ticks on the y axis. If it is set to zero, PLplot automatically\n"
15667  " generates a suitable tick interval.\n"
15668  "\n"
15669  " nysub (PLINT, input) : Number of subintervals between major y axis\n"
15670  " ticks for minor ticks. If it is set to zero, PLplot automatically\n"
15671  " generates a suitable minor tick interval.\n"
15672  "\n"
15673  ""},
15674  { (char *)"plbox3", _wrap_plbox3, METH_VARARGS, (char *)"\n"
15675  "Draw a box with axes, etc, in 3-d\n"
15676  "\n"
15677  "DESCRIPTION:\n"
15678  "\n"
15679  " Draws axes, numeric and text labels for a three-dimensional surface\n"
15680  " plot. For a more complete description of three-dimensional plotting\n"
15681  " see the PLplot documentation.\n"
15682  "\n"
15683  " Redacted form: General: plbox3(xopt, xlabel, xtick, nxsub, yopt,\n"
15684  " ylabel, ytick, nysub, zopt, zlabel, ztick, nzsub)\n"
15685  " Perl/PDL: plbox3(xtick, nxsub, ytick, nysub, ztick, nzsub,\n"
15686  " xopt, xlabel, yopt, ylabel, zopt, zlabel)\n"
15687  "\n"
15688  "\n"
15689  " This function is used in examples 8, 11, 18, and 21.\n"
15690  "\n"
15691  "\n"
15692  "\n"
15693  "SYNOPSIS:\n"
15694  "\n"
15695  "plbox3(xopt, xlabel, xtick, nxsub, yopt, ylabel, ytick, nysub, zopt, zlabel, ztick, nzsub)\n"
15696  "\n"
15697  "ARGUMENTS:\n"
15698  "\n"
15699  " xopt (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
15700  " options for the x axis. The string can include any combination of\n"
15701  " the following letters (upper or lower case) in any order: b: Draws\n"
15702  " axis at base, at height z=\n"
15703  " zmin where zmin is defined by call to plw3d. This character must be\n"
15704  " specified in order to use any of the other options.\n"
15705  " d: Plot labels as date / time. Values are assumed to be\n"
15706  " seconds since the epoch (as used by gmtime).\n"
15707  " f: Always use fixed point numeric labels.\n"
15708  " i: Inverts tick marks, so they are drawn downwards, rather\n"
15709  " than upwards.\n"
15710  " l: Labels axis logarithmically. This only affects the labels,\n"
15711  " not the data, and so it is necessary to compute the logarithms\n"
15712  " of data points before passing them to any of the drawing\n"
15713  " routines.\n"
15714  " n: Writes numeric labels at major tick intervals.\n"
15715  " o: Use custom labelling function to generate axis label text.\n"
15716  " The custom labelling function can be defined with the\n"
15717  " plslabelfunc command.\n"
15718  " s: Enables subticks between major ticks, only valid if t is\n"
15719  " also specified.\n"
15720  " t: Draws major ticks.\n"
15721  " u: If this is specified, the text label for the axis is\n"
15722  " written under the axis.\n"
15723  "\n"
15724  "\n"
15725  " xlabel (PLCHAR_VECTOR, input) : A UTF-8 character string specifying\n"
15726  " the text label for the x axis. It is only drawn if u is in the\n"
15727  " xopt string.\n"
15728  "\n"
15729  " xtick (PLFLT, input) : World coordinate interval between major\n"
15730  " ticks on the x axis. If it is set to zero, PLplot automatically\n"
15731  " generates a suitable tick interval.\n"
15732  "\n"
15733  " nxsub (PLINT, input) : Number of subintervals between major x axis\n"
15734  " ticks for minor ticks. If it is set to zero, PLplot automatically\n"
15735  " generates a suitable minor tick interval.\n"
15736  "\n"
15737  " yopt (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
15738  " options for the y axis. The string is interpreted in the same way\n"
15739  " as xopt.\n"
15740  "\n"
15741  " ylabel (PLCHAR_VECTOR, input) : A UTF-8 character string specifying\n"
15742  " the text label for the y axis. It is only drawn if u is in the\n"
15743  " yopt string.\n"
15744  "\n"
15745  " ytick (PLFLT, input) : World coordinate interval between major\n"
15746  " ticks on the y axis. If it is set to zero, PLplot automatically\n"
15747  " generates a suitable tick interval.\n"
15748  "\n"
15749  " nysub (PLINT, input) : Number of subintervals between major y axis\n"
15750  " ticks for minor ticks. If it is set to zero, PLplot automatically\n"
15751  " generates a suitable minor tick interval.\n"
15752  "\n"
15753  " zopt (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
15754  " options for the z axis. The string can include any combination of\n"
15755  " the following letters (upper or lower case) in any order: b: Draws\n"
15756  " z axis to the left of the surface plot.\n"
15757  " c: Draws z axis to the right of the surface plot.\n"
15758  " d: Draws grid lines parallel to the x-y plane behind the\n"
15759  " figure. These lines are not drawn until after plot3d or\n"
15760  " plmesh are called because of the need for hidden line removal.\n"
15761  " e: Plot labels as date / time. Values are assumed to be\n"
15762  " seconds since the epoch (as used by gmtime). Note this\n"
15763  " suboption is interpreted the same as the d suboption for xopt\n"
15764  " and yopt, but it has to be identified as e for zopt since d\n"
15765  " has already been used for the different purpose above.\n"
15766  " f: Always use fixed point numeric labels.\n"
15767  " i: Inverts tick marks, so they are drawn away from the center.\n"
15768  " l: Labels axis logarithmically. This only affects the labels,\n"
15769  " not the data, and so it is necessary to compute the logarithms\n"
15770  " of data points before passing them to any of the drawing\n"
15771  " routines.\n"
15772  " m: Writes numeric labels at major tick intervals on the\n"
15773  " right-hand z axis.\n"
15774  " n: Writes numeric labels at major tick intervals on the\n"
15775  " left-hand z axis.\n"
15776  " o: Use custom labelling function to generate axis label text.\n"
15777  " The custom labelling function can be defined with the\n"
15778  " plslabelfunc command.\n"
15779  " s: Enables subticks between major ticks, only valid if t is\n"
15780  " also specified.\n"
15781  " t: Draws major ticks.\n"
15782  " u: If this is specified, the text label is written beside the\n"
15783  " left-hand axis.\n"
15784  " v: If this is specified, the text label is written beside the\n"
15785  " right-hand axis.\n"
15786  "\n"
15787  "\n"
15788  " zlabel (PLCHAR_VECTOR, input) : A UTF-8 character string specifying\n"
15789  " the text label for the z axis. It is only drawn if u or v are in\n"
15790  " the zopt string.\n"
15791  "\n"
15792  " ztick (PLFLT, input) : World coordinate interval between major\n"
15793  " ticks on the z axis. If it is set to zero, PLplot automatically\n"
15794  " generates a suitable tick interval.\n"
15795  "\n"
15796  " nzsub (PLINT, input) : Number of subintervals between major z axis\n"
15797  " ticks for minor ticks. If it is set to zero, PLplot automatically\n"
15798  " generates a suitable minor tick interval.\n"
15799  "\n"
15800  ""},
15801  { (char *)"plcalc_world", _wrap_plcalc_world, METH_VARARGS, (char *)"\n"
15802  "Calculate world coordinates and corresponding window index from relative device coordinates\n"
15803  "\n"
15804  "DESCRIPTION:\n"
15805  "\n"
15806  " Calculate world coordinates, wx and wy, and corresponding window index\n"
15807  " from relative device coordinates, rx and ry.\n"
15808  "\n"
15809  " Redacted form: General: plcalc_world(rx, ry, wx, wy, window)\n"
15810  " Perl/PDL: Not available?\n"
15811  "\n"
15812  "\n"
15813  " This function is used in example 31.\n"
15814  "\n"
15815  "\n"
15816  "\n"
15817  "SYNOPSIS:\n"
15818  "\n"
15819  "plcalc_world(rx, ry, wx, wy, window)\n"
15820  "\n"
15821  "ARGUMENTS:\n"
15822  "\n"
15823  " rx (PLFLT, input) : Input relative device coordinate (0.0-1.0) for\n"
15824  " the x coordinate.\n"
15825  "\n"
15826  " ry (PLFLT, input) : Input relative device coordinate (0.0-1.0) for\n"
15827  " the y coordinate.\n"
15828  "\n"
15829  " wx (PLFLT_NC_SCALAR, output) : Returned value of the x world\n"
15830  " coordinate corresponding to the relative device coordinates rx and\n"
15831  " ry.\n"
15832  "\n"
15833  " wy (PLFLT_NC_SCALAR, output) : Returned value of the y world\n"
15834  " coordinate corresponding to the relative device coordinates rx and\n"
15835  " ry.\n"
15836  "\n"
15837  " window (PLINT_NC_SCALAR, output) : Returned value of the last\n"
15838  " defined window index that corresponds to the input relative device\n"
15839  " coordinates (and the returned world coordinates). To give some\n"
15840  " background on the window index, for each page the initial window\n"
15841  " index is set to zero, and each time plwind is called within the\n"
15842  " page, world and device coordinates are stored for the window and\n"
15843  " the window index is incremented. Thus, for a simple page layout\n"
15844  " with non-overlapping viewports and one window per viewport, window\n"
15845  " corresponds to the viewport index (in the order which the\n"
15846  " viewport/windows were created) of the only viewport/window\n"
15847  " corresponding to rx and ry. However, for more complicated layouts\n"
15848  " with potentially overlapping viewports and possibly more than one\n"
15849  " window (set of world coordinates) per viewport, window and the\n"
15850  " corresponding output world coordinates corresponds to the last\n"
15851  " window created that fulfills the criterion that the relative\n"
15852  " device coordinates are inside it. Finally, in all cases where the\n"
15853  " input relative device coordinates are not inside any\n"
15854  " viewport/window, then the returned value of the last defined\n"
15855  " window index is set to -1.\n"
15856  "\n"
15857  ""},
15858  { (char *)"plclear", _wrap_plclear, METH_VARARGS, (char *)"\n"
15859  "Clear current (sub)page\n"
15860  "\n"
15861  "DESCRIPTION:\n"
15862  "\n"
15863  " Clears the current page, effectively erasing everything that have been\n"
15864  " drawn. This command only works with interactive drivers; if the\n"
15865  " driver does not support this, the page is filled with the background\n"
15866  " color in use. If the current page is divided into subpages, only the\n"
15867  " current subpage is erased. The nth subpage can be selected with\n"
15868  " pladv(n).\n"
15869  "\n"
15870  " Redacted form: General: plclear()\n"
15871  " Perl/PDL: Not available?\n"
15872  "\n"
15873  "\n"
15874  " This function is not used in any examples.\n"
15875  "\n"
15876  "\n"
15877  "\n"
15878  "SYNOPSIS:\n"
15879  "\n"
15880  "plclear()\n"
15881  "\n"
15882  ""},
15883  { (char *)"plcol0", _wrap_plcol0, METH_VARARGS, (char *)"\n"
15884  "Set color, cmap0\n"
15885  "\n"
15886  "DESCRIPTION:\n"
15887  "\n"
15888  " Sets the color index for cmap0 (see the PLplot documentation).\n"
15889  "\n"
15890  " Redacted form: plcol0(icol0)\n"
15891  "\n"
15892  " This function is used in examples 1-9, 11-16, 18-27, and 29.\n"
15893  "\n"
15894  "\n"
15895  "\n"
15896  "SYNOPSIS:\n"
15897  "\n"
15898  "plcol0(icol0)\n"
15899  "\n"
15900  "ARGUMENTS:\n"
15901  "\n"
15902  " icol0 (PLINT, input) : Integer representing the color. The\n"
15903  " defaults at present are (these may change):\n"
15904  " 0 black (default background)\n"
15905  " 1 red (default foreground)\n"
15906  " 2 yellow\n"
15907  " 3 green\n"
15908  " 4 aquamarine\n"
15909  " 5 pink\n"
15910  " 6 wheat\n"
15911  " 7 grey\n"
15912  " 8 brown\n"
15913  " 9 blue\n"
15914  " 10 BlueViolet\n"
15915  " 11 cyan\n"
15916  " 12 turquoise\n"
15917  " 13 magenta\n"
15918  " 14 salmon\n"
15919  " 15 white\n"
15920  "\n"
15921  " Use plscmap0 to change the entire cmap0 color palette and plscol0 to\n"
15922  " change an individual color in the cmap0 color palette.\n"
15923  "\n"
15924  ""},
15925  { (char *)"plcol1", _wrap_plcol1, METH_VARARGS, (char *)"\n"
15926  "Set color, cmap1\n"
15927  "\n"
15928  "DESCRIPTION:\n"
15929  "\n"
15930  " Sets the color for cmap1 (see the PLplot documentation).\n"
15931  "\n"
15932  " Redacted form: plcol1(col1)\n"
15933  "\n"
15934  " This function is used in examples 12 and 21.\n"
15935  "\n"
15936  "\n"
15937  "\n"
15938  "SYNOPSIS:\n"
15939  "\n"
15940  "plcol1(col1)\n"
15941  "\n"
15942  "ARGUMENTS:\n"
15943  "\n"
15944  " col1 (PLFLT, input) : This value must be in the range (0.0-1.0) and\n"
15945  " is mapped to color using the continuous cmap1 palette which by\n"
15946  " default ranges from blue to the background color to red. The\n"
15947  " cmap1 palette can also be straightforwardly changed by the user\n"
15948  " with plscmap1 or plscmap1l.\n"
15949  "\n"
15950  ""},
15951  { (char *)"plconfigtime", _wrap_plconfigtime, METH_VARARGS, (char *)"\n"
15952  "Configure the transformation between continuous and broken-down time for the current stream\n"
15953  "\n"
15954  "DESCRIPTION:\n"
15955  "\n"
15956  " Configure the transformation between continuous and broken-down time\n"
15957  " for the current stream. This transformation is used by both plbtime\n"
15958  " and plctime.\n"
15959  "\n"
15960  " Redacted form: General: plconfigtime(scale, offset1, offset2,\n"
15961  " ccontrol, ifbtime_offset, year, month, day, hour, min, sec)\n"
15962  " Perl/PDL: Not available?\n"
15963  "\n"
15964  "\n"
15965  " This function is used in example 29.\n"
15966  "\n"
15967  "\n"
15968  "\n"
15969  "SYNOPSIS:\n"
15970  "\n"
15971  "plconfigtime(scale, offset1, offset2, ccontrol, ifbtime_offset, year, month, day, hour, min, sec)\n"
15972  "\n"
15973  "ARGUMENTS:\n"
15974  "\n"
15975  " scale (PLFLT, input) : The number of days per continuous time unit.\n"
15976  " As a special case, if\n"
15977  " scale is 0., then all other arguments are ignored, and the result (the\n"
15978  " default used by PLplot) is the equivalent of a call to\n"
15979  " plconfigtime(1./86400., 0., 0., 0x0, 1, 1970, 0, 1, 0, 0, 0.).\n"
15980  " That is, for this special case broken-down time is calculated with\n"
15981  " the proleptic Gregorian calendar with no leap seconds inserted,\n"
15982  " and the continuous time is defined as the number of seconds since\n"
15983  " the Unix epoch of 1970-01-01T00:00:00Z.\n"
15984  "\n"
15985  " offset1 (PLFLT, input) : If\n"
15986  " ifbtime_offset is true, the parameters\n"
15987  " offset1 and\n"
15988  " offset2 are completely ignored. Otherwise, the sum of these parameters\n"
15989  " (with units in days) specify the epoch of the continuous time\n"
15990  " relative to the MJD epoch corresponding to the Gregorian calendar\n"
15991  " date of 1858-11-17T00:00:00Z or JD = 2400000.5. Two PLFLT numbers\n"
15992  " are used to specify the origin to allow users (by specifying\n"
15993  " offset1 as an integer that can be exactly represented by a\n"
15994  " floating-point variable and specifying\n"
15995  " offset2 as a number in the range from 0. to 1) the chance to minimize\n"
15996  " the numerical errors of the continuous time representation.\n"
15997  "\n"
15998  " offset2 (PLFLT, input) : See documentation of\n"
15999  " offset1.\n"
16000  "\n"
16001  " ccontrol (PLINT, input) : ccontrol contains bits controlling the\n"
16002  " transformation. If the 0x1 bit is set, then the proleptic Julian\n"
16003  " calendar is used for broken-down time rather than the proleptic\n"
16004  " Gregorian calendar. If the 0x2 bit is set, then leap seconds that\n"
16005  " have been historically used to define UTC are inserted into the\n"
16006  " broken-down time. Other possibilities for additional control bits\n"
16007  " for ccontrol exist such as making the historical time corrections\n"
16008  " in the broken-down time corresponding to ET (ephemeris time) or\n"
16009  " making the (slightly non-constant) corrections from international\n"
16010  " atomic time (TAI) to what astronomers define as terrestrial time\n"
16011  " (TT). But those additional possibilities have not been\n"
16012  " implemented yet in the qsastime library (one of the PLplot utility\n"
16013  " libraries).\n"
16014  "\n"
16015  " ifbtime_offset (PLBOOL, input) : ifbtime_offset controls how the\n"
16016  " epoch of the continuous time scale is specified by the user. If\n"
16017  " ifbtime_offset is false, then\n"
16018  " offset1 and\n"
16019  " offset2 are used to specify the epoch, and the following broken-down\n"
16020  " time parameters are completely ignored. If\n"
16021  " ifbtime_offset is true, then\n"
16022  " offset1 and\n"
16023  " offset2 are completely ignored, and the following broken-down time\n"
16024  " parameters are used to specify the epoch.\n"
16025  "\n"
16026  " year (PLINT, input) : Year of epoch.\n"
16027  "\n"
16028  " month (PLINT, input) : Month of epoch in range from 0 (January) to\n"
16029  " 11 (December).\n"
16030  "\n"
16031  " day (PLINT, input) : Day of epoch in range from 1 to 31.\n"
16032  "\n"
16033  " hour (PLINT, input) : Hour of epoch in range from 0 to 23\n"
16034  "\n"
16035  " min (PLINT, input) : Minute of epoch in range from 0 to 59.\n"
16036  "\n"
16037  " sec (PLFLT, input) : Second of epoch in range from 0. to 60.\n"
16038  "\n"
16039  ""},
16040  { (char *)"plcont", _wrap_plcont, METH_VARARGS, (char *)"\n"
16041  "Contour plot\n"
16042  "\n"
16043  "DESCRIPTION:\n"
16044  "\n"
16045  " Draws a contour plot of the data in f[\n"
16046  " nx][\n"
16047  " ny], using the nlevel contour levels specified by clevel. Only the\n"
16048  " region of the matrix from kx to lx and from ky to ly is plotted out\n"
16049  " where all these index ranges are interpreted as one-based for\n"
16050  " historical reasons. A transformation routine pointed to by pltr with\n"
16051  " a generic pointer pltr_data for additional data required by the\n"
16052  " transformation routine is used to map indices within the matrix to the\n"
16053  " world coordinates.\n"
16054  "\n"
16055  " Redacted form: plcont(f, kx, lx, ky, ly, clevel, pltr, pltr_data)\n"
16056  " where (see above discussion) the pltr, pltr_data callback arguments\n"
16057  " are sometimes replaced by a tr vector with 6 elements; xg and yg\n"
16058  " vectors; or xg and yg matrices.\n"
16059  "\n"
16060  " This function is used in examples 9, 14, 16, and 22.\n"
16061  "\n"
16062  "\n"
16063  "\n"
16064  "SYNOPSIS:\n"
16065  "\n"
16066  "plcont(f, nx, ny, kx, lx, ky, ly, clevel, nlevel, pltr, pltr_data)\n"
16067  "\n"
16068  "ARGUMENTS:\n"
16069  "\n"
16070  " f (PLFLT_MATRIX, input) : A matrix containing data to be contoured.\n"
16071  "\n"
16072  " nx, ny (PLINT, input) : The dimensions of the matrix f.\n"
16073  "\n"
16074  " kx, lx (PLINT, input) : Range of x indices to consider where 0 <=\n"
16075  " kx-1 < lx-1 < nx. Values of kx and lx are one-based rather than\n"
16076  " zero-based for historical backwards-compatibility reasons.\n"
16077  "\n"
16078  " ky, ly (PLINT, input) : Range of y indices to consider where 0 <=\n"
16079  " ky-1 < ly-1 < ny. Values of ky and ly are one-based rather than\n"
16080  " zero-based for historical backwards-compatibility reasons.\n"
16081  "\n"
16082  " clevel (PLFLT_VECTOR, input) : A vector specifying the levels at\n"
16083  " which to draw contours.\n"
16084  "\n"
16085  " nlevel (PLINT, input) : Number of contour levels to draw.\n"
16086  "\n"
16087  " pltr (PLTRANSFORM_callback, input) : A callback function that\n"
16088  " defines the transformation between the zero-based indices of the\n"
16089  " matrix f and the world coordinates.For the C case, transformation\n"
16090  " functions are provided in the PLplot library: pltr0 for the\n"
16091  " identity mapping, and pltr1 and pltr2 for arbitrary mappings\n"
16092  " respectively defined by vectors and matrices. In addition, C\n"
16093  " callback routines for the transformation can be supplied by the\n"
16094  " user such as the mypltr function in examples/c/x09c.c which\n"
16095  " provides a general linear transformation between index coordinates\n"
16096  " and world coordinates.For languages other than C you should\n"
16097  " consult the PLplot documentation for the details concerning how\n"
16098  " PLTRANSFORM_callback arguments are interfaced. However, in\n"
16099  " general, a particular pattern of callback-associated arguments\n"
16100  " such as a tr vector with 6 elements; xg and yg vectors; or xg and\n"
16101  " yg matrices are respectively interfaced to a linear-transformation\n"
16102  " routine similar to the above mypltr function; pltr1; and pltr2.\n"
16103  " Furthermore, some of our more sophisticated bindings (see, e.g.,\n"
16104  " the PLplot documentation) support native language callbacks for\n"
16105  " handling index to world-coordinate transformations. Examples of\n"
16106  " these various approaches are given in examples/<language>x09*,\n"
16107  " examples/<language>x16*, examples/<language>x20*,\n"
16108  " examples/<language>x21*, and examples/<language>x22*, for all our\n"
16109  " supported languages.\n"
16110  "\n"
16111  " pltr_data (PLPointer, input) : Extra parameter to help pass\n"
16112  " information to pltr0, pltr1, pltr2, or whatever callback routine\n"
16113  " that is externally supplied.\n"
16114  "\n"
16115  ""},
16116  { (char *)"plctime", _wrap_plctime, METH_VARARGS, (char *)"\n"
16117  "Calculate continuous time from broken-down time for the current stream\n"
16118  "\n"
16119  "DESCRIPTION:\n"
16120  "\n"
16121  " Calculate continuous time, ctime, from broken-down time for the\n"
16122  " current stream. The broken-down\n"
16123  " time is specified by the following parameters: year, month, day, hour,\n"
16124  " min, and sec. This function is the inverse of plbtime.\n"
16125  "\n"
16126  " The PLplot definition of broken-down time is a calendar time that\n"
16127  " completely ignores all time zone offsets, i.e., it is the user's\n"
16128  " responsibility to apply those offsets (if so desired) before using the\n"
16129  " PLplot time API. By default broken-down time is defined using the\n"
16130  " proleptic Gregorian calendar without the insertion of leap seconds and\n"
16131  " continuous time is defined as the number of seconds since the Unix\n"
16132  " epoch of 1970-01-01T00:00:00Z. However, other definitions of\n"
16133  " broken-down and continuous time are possible, see plconfigtime which\n"
16134  " specifies that transformation for the current stream.\n"
16135  "\n"
16136  " Redacted form: General: plctime(year, month, day, hour, min, sec,\n"
16137  " ctime)\n"
16138  " Perl/PDL: Not available?\n"
16139  "\n"
16140  "\n"
16141  " This function is used in example 29.\n"
16142  "\n"
16143  "\n"
16144  "\n"
16145  "SYNOPSIS:\n"
16146  "\n"
16147  "plctime(year, month, day, hour, min, sec, ctime)\n"
16148  "\n"
16149  "ARGUMENTS:\n"
16150  "\n"
16151  " year (PLINT, input) : Input year.\n"
16152  "\n"
16153  " month (PLINT, input) : Input month in range from 0 (January) to 11\n"
16154  " (December).\n"
16155  "\n"
16156  " day (PLINT, input) : Input day in range from 1 to 31.\n"
16157  "\n"
16158  " hour (PLINT, input) : Input hour in range from 0 to 23\n"
16159  "\n"
16160  " min (PLINT, input) : Input minute in range from 0 to 59.\n"
16161  "\n"
16162  " sec (PLFLT, input) : Input second in range from 0. to 60.\n"
16163  "\n"
16164  " ctime (PLFLT_NC_SCALAR, output) : Returned value of the continuous\n"
16165  " time calculated from the broken-down time specified by the\n"
16166  " previous parameters.\n"
16167  "\n"
16168  ""},
16169  { (char *)"plcpstrm", _wrap_plcpstrm, METH_VARARGS, (char *)"\n"
16170  "Copy state parameters from the reference stream to the current stream\n"
16171  "\n"
16172  "DESCRIPTION:\n"
16173  "\n"
16174  " Copies state parameters from the reference stream to the current\n"
16175  " stream. Tell driver interface to map device coordinates unless flags\n"
16176  " == 1.\n"
16177  "\n"
16178  " This function is used for making save files of selected plots (e.g.\n"
16179  " from the TK driver). After initializing, you can get a copy of the\n"
16180  " current plot to the specified device by switching to this stream and\n"
16181  " issuing a plcpstrm and a plreplot, with calls to plbop and pleop as\n"
16182  " appropriate. The plot buffer must have previously been enabled (done\n"
16183  " automatically by some display drivers, such as X).\n"
16184  "\n"
16185  " Redacted form: plcpstrm(iplsr, flags)\n"
16186  "\n"
16187  " This function is used in example 1,20.\n"
16188  "\n"
16189  "\n"
16190  "\n"
16191  "SYNOPSIS:\n"
16192  "\n"
16193  "plcpstrm(iplsr, flags)\n"
16194  "\n"
16195  "ARGUMENTS:\n"
16196  "\n"
16197  " iplsr (PLINT, input) : Number of reference stream.\n"
16198  "\n"
16199  " flags (PLBOOL, input) : If flags is set to true the device\n"
16200  " coordinates are not copied from the reference to current stream.\n"
16201  "\n"
16202  ""},
16203  { (char *)"plend", _wrap_plend, METH_VARARGS, (char *)"\n"
16204  "End plotting session\n"
16205  "\n"
16206  "DESCRIPTION:\n"
16207  "\n"
16208  " Ends a plotting session, tidies up all the output files, switches\n"
16209  " interactive devices back into text mode and frees up any memory that\n"
16210  " was allocated. Must be called before end of program.\n"
16211  "\n"
16212  " By default, PLplot's interactive devices (Xwin, TK, etc.) go into a\n"
16213  " wait state after a call to plend or other functions which trigger the\n"
16214  " end of a plot page. To avoid this, use the plspause function.\n"
16215  "\n"
16216  " Redacted form: plend()\n"
16217  "\n"
16218  " This function is used in all of the examples.\n"
16219  "\n"
16220  "\n"
16221  "\n"
16222  "SYNOPSIS:\n"
16223  "\n"
16224  "plend()\n"
16225  "\n"
16226  ""},
16227  { (char *)"plend1", _wrap_plend1, METH_VARARGS, (char *)"\n"
16228  "End plotting session for current stream\n"
16229  "\n"
16230  "DESCRIPTION:\n"
16231  "\n"
16232  " Ends a plotting session for the current output stream only. See\n"
16233  " plsstrm for more info.\n"
16234  "\n"
16235  " Redacted form: plend1()\n"
16236  "\n"
16237  " This function is used in examples 1 and 20.\n"
16238  "\n"
16239  "\n"
16240  "\n"
16241  "SYNOPSIS:\n"
16242  "\n"
16243  "plend1()\n"
16244  "\n"
16245  ""},
16246  { (char *)"plenv", _wrap_plenv, METH_VARARGS, (char *)"\n"
16247  "Set up standard window and draw box\n"
16248  "\n"
16249  "DESCRIPTION:\n"
16250  "\n"
16251  " Sets up plotter environment for simple graphs by calling pladv and\n"
16252  " setting up viewport and window to sensible default values. plenv\n"
16253  " leaves a standard margin (left-hand margin of eight character heights,\n"
16254  " and a margin around the other three sides of five character heights)\n"
16255  " around most graphs for axis labels and a title. When these defaults\n"
16256  " are not suitable, use the individual routines plvpas, plvpor, or\n"
16257  " plvasp for setting up the viewport, plwind for defining the window,\n"
16258  " and plbox for drawing the box.\n"
16259  "\n"
16260  " Redacted form: plenv(xmin, xmax, ymin, ymax, just, axis)\n"
16261  "\n"
16262  " This function is used in example 1,3,9,13,14,19-22,29.\n"
16263  "\n"
16264  "\n"
16265  "\n"
16266  "SYNOPSIS:\n"
16267  "\n"
16268  "plenv(xmin, xmax, ymin, ymax, just, axis)\n"
16269  "\n"
16270  "ARGUMENTS:\n"
16271  "\n"
16272  " xmin (PLFLT, input) : Value of x at left-hand edge of window (in\n"
16273  " world coordinates).\n"
16274  "\n"
16275  " xmax (PLFLT, input) : Value of x at right-hand edge of window (in\n"
16276  " world coordinates).\n"
16277  "\n"
16278  " ymin (PLFLT, input) : Value of y at bottom edge of window (in world\n"
16279  " coordinates).\n"
16280  "\n"
16281  " ymax (PLFLT, input) : Value of y at top edge of window (in world\n"
16282  " coordinates).\n"
16283  "\n"
16284  " just (PLINT, input) : Controls how the axes will be scaled: -1: the\n"
16285  " scales will not be set, the user must set up the scale before\n"
16286  " calling plenv using plsvpa, plvasp or other.\n"
16287  " 0: the x and y axes are scaled independently to use as much of\n"
16288  " the screen as possible.\n"
16289  " 1: the scales of the x and y axes are made equal.\n"
16290  " 2: the axis of the x and y axes are made equal, and the plot\n"
16291  " box will be square.\n"
16292  "\n"
16293  "\n"
16294  " axis (PLINT, input) : Controls drawing of the box around the plot:\n"
16295  " -2: draw no box, no tick marks, no numeric tick labels, no axes.\n"
16296  " -1: draw box only.\n"
16297  " 0: draw box, ticks, and numeric tick labels.\n"
16298  " 1: also draw coordinate axes at x=0 and y=0.\n"
16299  " 2: also draw a grid at major tick positions in both\n"
16300  " coordinates.\n"
16301  " 3: also draw a grid at minor tick positions in both\n"
16302  " coordinates.\n"
16303  " 10: same as 0 except logarithmic x tick marks. (The x data\n"
16304  " have to be converted to logarithms separately.)\n"
16305  " 11: same as 1 except logarithmic x tick marks. (The x data\n"
16306  " have to be converted to logarithms separately.)\n"
16307  " 12: same as 2 except logarithmic x tick marks. (The x data\n"
16308  " have to be converted to logarithms separately.)\n"
16309  " 13: same as 3 except logarithmic x tick marks. (The x data\n"
16310  " have to be converted to logarithms separately.)\n"
16311  " 20: same as 0 except logarithmic y tick marks. (The y data\n"
16312  " have to be converted to logarithms separately.)\n"
16313  " 21: same as 1 except logarithmic y tick marks. (The y data\n"
16314  " have to be converted to logarithms separately.)\n"
16315  " 22: same as 2 except logarithmic y tick marks. (The y data\n"
16316  " have to be converted to logarithms separately.)\n"
16317  " 23: same as 3 except logarithmic y tick marks. (The y data\n"
16318  " have to be converted to logarithms separately.)\n"
16319  " 30: same as 0 except logarithmic x and y tick marks. (The x\n"
16320  " and y data have to be converted to logarithms separately.)\n"
16321  " 31: same as 1 except logarithmic x and y tick marks. (The x\n"
16322  " and y data have to be converted to logarithms separately.)\n"
16323  " 32: same as 2 except logarithmic x and y tick marks. (The x\n"
16324  " and y data have to be converted to logarithms separately.)\n"
16325  " 33: same as 3 except logarithmic x and y tick marks. (The x\n"
16326  " and y data have to be converted to logarithms separately.)\n"
16327  " 40: same as 0 except date / time x labels.\n"
16328  " 41: same as 1 except date / time x labels.\n"
16329  " 42: same as 2 except date / time x labels.\n"
16330  " 43: same as 3 except date / time x labels.\n"
16331  " 50: same as 0 except date / time y labels.\n"
16332  " 51: same as 1 except date / time y labels.\n"
16333  " 52: same as 2 except date / time y labels.\n"
16334  " 53: same as 3 except date / time y labels.\n"
16335  " 60: same as 0 except date / time x and y labels.\n"
16336  " 61: same as 1 except date / time x and y labels.\n"
16337  " 62: same as 2 except date / time x and y labels.\n"
16338  " 63: same as 3 except date / time x and y labels.\n"
16339  " 70: same as 0 except custom x and y labels.\n"
16340  " 71: same as 1 except custom x and y labels.\n"
16341  " 72: same as 2 except custom x and y labels.\n"
16342  " 73: same as 3 except custom x and y labels.\n"
16343  "\n"
16344  ""},
16345  { (char *)"plenv0", _wrap_plenv0, METH_VARARGS, (char *)"\n"
16346  "Same as plenv but if in multiplot mode does not advance the subpage, instead clears it\n"
16347  "\n"
16348  "DESCRIPTION:\n"
16349  "\n"
16350  " Sets up plotter environment for simple graphs by calling pladv and\n"
16351  " setting up viewport and window to sensible default values. plenv0\n"
16352  " leaves a standard margin (left-hand margin of eight character heights,\n"
16353  " and a margin around the other three sides of five character heights)\n"
16354  " around most graphs for axis labels and a title. When these defaults\n"
16355  " are not suitable, use the individual routines plvpas, plvpor, or\n"
16356  " plvasp for setting up the viewport, plwind for defining the window,\n"
16357  " and plbox for drawing the box.\n"
16358  "\n"
16359  " Redacted form: plenv0(xmin, xmax, ymin, ymax, just, axis)\n"
16360  "\n"
16361  " This function is used in example 21.\n"
16362  "\n"
16363  "\n"
16364  "\n"
16365  "SYNOPSIS:\n"
16366  "\n"
16367  "plenv0(xmin, xmax, ymin, ymax, just, axis)\n"
16368  "\n"
16369  "ARGUMENTS:\n"
16370  "\n"
16371  " xmin (PLFLT, input) : Value of x at left-hand edge of window (in\n"
16372  " world coordinates).\n"
16373  "\n"
16374  " xmax (PLFLT, input) : Value of x at right-hand edge of window (in\n"
16375  " world coordinates).\n"
16376  "\n"
16377  " ymin (PLFLT, input) : Value of y at bottom edge of window (in world\n"
16378  " coordinates).\n"
16379  "\n"
16380  " ymax (PLFLT, input) : Value of y at top edge of window (in world\n"
16381  " coordinates).\n"
16382  "\n"
16383  " just (PLINT, input) : Controls how the axes will be scaled: -1: the\n"
16384  " scales will not be set, the user must set up the scale before\n"
16385  " calling plenv0 using plsvpa, plvasp or other.\n"
16386  " 0: the x and y axes are scaled independently to use as much of\n"
16387  " the screen as possible.\n"
16388  " 1: the scales of the x and y axes are made equal.\n"
16389  " 2: the axis of the x and y axes are made equal, and the plot\n"
16390  " box will be square.\n"
16391  "\n"
16392  "\n"
16393  " axis (PLINT, input) : Controls drawing of the box around the plot:\n"
16394  " -2: draw no box, no tick marks, no numeric tick labels, no axes.\n"
16395  " -1: draw box only.\n"
16396  " 0: draw box, ticks, and numeric tick labels.\n"
16397  " 1: also draw coordinate axes at x=0 and y=0.\n"
16398  " 2: also draw a grid at major tick positions in both\n"
16399  " coordinates.\n"
16400  " 3: also draw a grid at minor tick positions in both\n"
16401  " coordinates.\n"
16402  " 10: same as 0 except logarithmic x tick marks. (The x data\n"
16403  " have to be converted to logarithms separately.)\n"
16404  " 11: same as 1 except logarithmic x tick marks. (The x data\n"
16405  " have to be converted to logarithms separately.)\n"
16406  " 12: same as 2 except logarithmic x tick marks. (The x data\n"
16407  " have to be converted to logarithms separately.)\n"
16408  " 13: same as 3 except logarithmic x tick marks. (The x data\n"
16409  " have to be converted to logarithms separately.)\n"
16410  " 20: same as 0 except logarithmic y tick marks. (The y data\n"
16411  " have to be converted to logarithms separately.)\n"
16412  " 21: same as 1 except logarithmic y tick marks. (The y data\n"
16413  " have to be converted to logarithms separately.)\n"
16414  " 22: same as 2 except logarithmic y tick marks. (The y data\n"
16415  " have to be converted to logarithms separately.)\n"
16416  " 23: same as 3 except logarithmic y tick marks. (The y data\n"
16417  " have to be converted to logarithms separately.)\n"
16418  " 30: same as 0 except logarithmic x and y tick marks. (The x\n"
16419  " and y data have to be converted to logarithms separately.)\n"
16420  " 31: same as 1 except logarithmic x and y tick marks. (The x\n"
16421  " and y data have to be converted to logarithms separately.)\n"
16422  " 32: same as 2 except logarithmic x and y tick marks. (The x\n"
16423  " and y data have to be converted to logarithms separately.)\n"
16424  " 33: same as 3 except logarithmic x and y tick marks. (The x\n"
16425  " and y data have to be converted to logarithms separately.)\n"
16426  " 40: same as 0 except date / time x labels.\n"
16427  " 41: same as 1 except date / time x labels.\n"
16428  " 42: same as 2 except date / time x labels.\n"
16429  " 43: same as 3 except date / time x labels.\n"
16430  " 50: same as 0 except date / time y labels.\n"
16431  " 51: same as 1 except date / time y labels.\n"
16432  " 52: same as 2 except date / time y labels.\n"
16433  " 53: same as 3 except date / time y labels.\n"
16434  " 60: same as 0 except date / time x and y labels.\n"
16435  " 61: same as 1 except date / time x and y labels.\n"
16436  " 62: same as 2 except date / time x and y labels.\n"
16437  " 63: same as 3 except date / time x and y labels.\n"
16438  " 70: same as 0 except custom x and y labels.\n"
16439  " 71: same as 1 except custom x and y labels.\n"
16440  " 72: same as 2 except custom x and y labels.\n"
16441  " 73: same as 3 except custom x and y labels.\n"
16442  "\n"
16443  ""},
16444  { (char *)"pleop", _wrap_pleop, METH_VARARGS, (char *)"\n"
16445  "Eject current page\n"
16446  "\n"
16447  "DESCRIPTION:\n"
16448  "\n"
16449  " Clears the graphics screen of an interactive device, or ejects a page\n"
16450  " on a plotter. See plbop for more information.\n"
16451  "\n"
16452  " Redacted form: pleop()\n"
16453  "\n"
16454  " This function is used in example 2,14.\n"
16455  "\n"
16456  "\n"
16457  "\n"
16458  "SYNOPSIS:\n"
16459  "\n"
16460  "pleop()\n"
16461  "\n"
16462  ""},
16463  { (char *)"plerrx", _wrap_plerrx, METH_VARARGS, (char *)"\n"
16464  "Draw error bars in x direction\n"
16465  "\n"
16466  "DESCRIPTION:\n"
16467  "\n"
16468  " Draws a set of n error bars in x direction, the i'th error bar\n"
16469  " extending from xmin[i] to xmax[i] at y coordinate y[i]. The terminals\n"
16470  " of the error bars are of length equal to the minor tick length\n"
16471  " (settable using plsmin).\n"
16472  "\n"
16473  " Redacted form: General: plerrx(xmin, ymax, y)\n"
16474  " Perl/PDL: plerrx(n, xmin, xmax, y)\n"
16475  "\n"
16476  "\n"
16477  " This function is used in example 29.\n"
16478  "\n"
16479  "\n"
16480  "\n"
16481  "SYNOPSIS:\n"
16482  "\n"
16483  "plerrx(n, xmin, xmax, y)\n"
16484  "\n"
16485  "ARGUMENTS:\n"
16486  "\n"
16487  " n (PLINT, input) : Number of error bars to draw.\n"
16488  "\n"
16489  " xmin (PLFLT_VECTOR, input) : A vector containing the x coordinates\n"
16490  " of the left-hand endpoints of the error bars.\n"
16491  "\n"
16492  " xmax (PLFLT_VECTOR, input) : A vector containing the x coordinates\n"
16493  " of the right-hand endpoints of the error bars.\n"
16494  "\n"
16495  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
16496  " the error bars.\n"
16497  "\n"
16498  ""},
16499  { (char *)"plerry", _wrap_plerry, METH_VARARGS, (char *)"\n"
16500  "Draw error bars in the y direction\n"
16501  "\n"
16502  "DESCRIPTION:\n"
16503  "\n"
16504  " Draws a set of n error bars in the y direction, the i'th error bar\n"
16505  " extending from ymin[i] to ymax[i] at x coordinate x[i]. The terminals\n"
16506  " of the error bars are of length equal to the minor tick length\n"
16507  " (settable using plsmin).\n"
16508  "\n"
16509  " Redacted form: General: plerry(x, ymin, ymax)\n"
16510  " Perl/PDL: plerry(n, x, ymin, ymax)\n"
16511  "\n"
16512  "\n"
16513  " This function is used in example 29.\n"
16514  "\n"
16515  "\n"
16516  "\n"
16517  "SYNOPSIS:\n"
16518  "\n"
16519  "plerry(n, x, ymin, ymax)\n"
16520  "\n"
16521  "ARGUMENTS:\n"
16522  "\n"
16523  " n (PLINT, input) : Number of error bars to draw.\n"
16524  "\n"
16525  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
16526  " the error bars.\n"
16527  "\n"
16528  " ymin (PLFLT_VECTOR, input) : A vector containing the y coordinates\n"
16529  " of the lower endpoints of the error bars.\n"
16530  "\n"
16531  " ymax (PLFLT_VECTOR, input) : A vector containing the y coordinates\n"
16532  " of the upper endpoints of the error bars.\n"
16533  "\n"
16534  ""},
16535  { (char *)"plfamadv", _wrap_plfamadv, METH_VARARGS, (char *)"\n"
16536  "Advance to the next family file on the next new page\n"
16537  "\n"
16538  "DESCRIPTION:\n"
16539  "\n"
16540  " Advance to the next family file on the next new page.\n"
16541  "\n"
16542  " Redacted form: plfamadv()\n"
16543  "\n"
16544  " This function is not used in any examples.\n"
16545  "\n"
16546  "\n"
16547  "\n"
16548  "SYNOPSIS:\n"
16549  "\n"
16550  "plfamadv()\n"
16551  "\n"
16552  ""},
16553  { (char *)"plfill", _wrap_plfill, METH_VARARGS, (char *)"\n"
16554  "Draw filled polygon\n"
16555  "\n"
16556  "DESCRIPTION:\n"
16557  "\n"
16558  " Fills the polygon defined by the n points (\n"
16559  " x[i],\n"
16560  " y[i]) using the pattern defined by plpsty or plpat. The default fill\n"
16561  " style is a solid fill. The routine will automatically close the\n"
16562  " polygon between the last and first vertices. If multiple closed\n"
16563  " polygons are passed in x and y then plfill will fill in between them.\n"
16564  "\n"
16565  " Redacted form: plfill(x,y)\n"
16566  "\n"
16567  " This function is used in examples 12, 13, 15, 16, 21, 24, and 25.\n"
16568  "\n"
16569  "\n"
16570  "\n"
16571  "SYNOPSIS:\n"
16572  "\n"
16573  "plfill(n, x, y)\n"
16574  "\n"
16575  "ARGUMENTS:\n"
16576  "\n"
16577  " n (PLINT, input) : Number of vertices in polygon.\n"
16578  "\n"
16579  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
16580  " vertices.\n"
16581  "\n"
16582  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
16583  " vertices.\n"
16584  "\n"
16585  ""},
16586  { (char *)"plfill3", _wrap_plfill3, METH_VARARGS, (char *)"\n"
16587  "Draw filled polygon in 3D\n"
16588  "\n"
16589  "DESCRIPTION:\n"
16590  "\n"
16591  " Fills the 3D polygon defined by the n points in the x, y, and z\n"
16592  " vectors using the pattern defined by plpsty or plpat. The routine\n"
16593  " will automatically close the polygon between the last and first\n"
16594  " vertices. If multiple closed polygons are passed in x, y, and z then\n"
16595  " plfill3 will fill in between them.\n"
16596  "\n"
16597  " Redacted form: General: plfill3(x, y, z)\n"
16598  " Perl/PDL: plfill3(n, x, y, z)\n"
16599  "\n"
16600  "\n"
16601  " This function is used in example 15.\n"
16602  "\n"
16603  "\n"
16604  "\n"
16605  "SYNOPSIS:\n"
16606  "\n"
16607  "plfill3(n, x, y, z)\n"
16608  "\n"
16609  "ARGUMENTS:\n"
16610  "\n"
16611  " n (PLINT, input) : Number of vertices in polygon.\n"
16612  "\n"
16613  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
16614  " vertices.\n"
16615  "\n"
16616  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
16617  " vertices.\n"
16618  "\n"
16619  " z (PLFLT_VECTOR, input) : A vector containing the z coordinates of\n"
16620  " vertices.\n"
16621  "\n"
16622  ""},
16623  { (char *)"plgradient", _wrap_plgradient, METH_VARARGS, (char *)"\n"
16624  "Draw linear gradient inside polygon\n"
16625  "\n"
16626  "DESCRIPTION:\n"
16627  "\n"
16628  " Draw a linear gradient using cmap1 inside the polygon defined by the n\n"
16629  " points (\n"
16630  " x[i],\n"
16631  " y[i]). Interpretation of the polygon is the same as for plfill. The\n"
16632  " polygon coordinates and the gradient angle are all expressed in world\n"
16633  " coordinates. The angle from the x axis for both the rotated\n"
16634  " coordinate system and the gradient vector is specified by angle. The\n"
16635  " magnitude of the gradient vector is the difference between the maximum\n"
16636  " and minimum values of x for the vertices in the rotated coordinate\n"
16637  " system. The origin of the gradient vector can be interpreted as being\n"
16638  " anywhere on the line corresponding to the minimum x value for the\n"
16639  " vertices in the rotated coordinate system. The distance along the\n"
16640  " gradient vector is linearly transformed to the independent variable of\n"
16641  " color map 1 which ranges from 0. at the tail of the gradient vector to\n"
16642  " 1. at the head of the gradient vector. What is drawn is the RGBA\n"
16643  " color corresponding to the independent variable of cmap1. For more\n"
16644  " information about cmap1 (see the PLplot documentation).\n"
16645  "\n"
16646  " Redacted form: plgradient(x,y,angle)\n"
16647  "\n"
16648  " This function is used in examples 25 and 30.\n"
16649  "\n"
16650  "\n"
16651  "\n"
16652  "SYNOPSIS:\n"
16653  "\n"
16654  "plgradient(n, x, y, angle)\n"
16655  "\n"
16656  "ARGUMENTS:\n"
16657  "\n"
16658  " n (PLINT, input) : Number of vertices in polygon.\n"
16659  "\n"
16660  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
16661  " vertices.\n"
16662  "\n"
16663  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
16664  " vertices.\n"
16665  "\n"
16666  " angle (PLFLT, input) : Angle (degrees) of gradient vector from x\n"
16667  " axis.\n"
16668  "\n"
16669  ""},
16670  { (char *)"plflush", _wrap_plflush, METH_VARARGS, (char *)"\n"
16671  "Flushes the output stream\n"
16672  "\n"
16673  "DESCRIPTION:\n"
16674  "\n"
16675  " Flushes the output stream. Use sparingly, if at all.\n"
16676  "\n"
16677  " Redacted form: plflush()\n"
16678  "\n"
16679  " This function is used in examples 1 and 14.\n"
16680  "\n"
16681  "\n"
16682  "\n"
16683  "SYNOPSIS:\n"
16684  "\n"
16685  "plflush()\n"
16686  "\n"
16687  ""},
16688  { (char *)"plfont", _wrap_plfont, METH_VARARGS, (char *)"\n"
16689  "Set font\n"
16690  "\n"
16691  "DESCRIPTION:\n"
16692  "\n"
16693  " Sets the font used for subsequent text and symbols. For devices that\n"
16694  " still use Hershey fonts this routine has no effect unless the Hershey\n"
16695  " fonts with extended character set are loaded (see plfontld). For\n"
16696  " unicode-aware devices that use system fonts instead of Hershey fonts,\n"
16697  " this routine calls the plsfci routine with argument set up\n"
16698  " appropriately for the various cases below. However, this method of\n"
16699  " specifying the font for unicode-aware devices is deprecated, and the\n"
16700  " much more flexible method of calling plsfont directly is recommended\n"
16701  " instead (where plsfont provides a user-friendly interface to plsfci),\n"
16702  "\n"
16703  " Redacted form: plfont(ifont)\n"
16704  "\n"
16705  " This function is used in examples 1, 2, 4, 7, 13, 24, and 26.\n"
16706  "\n"
16707  "\n"
16708  "\n"
16709  "SYNOPSIS:\n"
16710  "\n"
16711  "plfont(ifont)\n"
16712  "\n"
16713  "ARGUMENTS:\n"
16714  "\n"
16715  " ifont (PLINT, input) : Specifies the font: 1: Sans serif font\n"
16716  " (simplest and fastest)\n"
16717  " 2: Serif font\n"
16718  " 3: Italic font\n"
16719  " 4: Script font\n"
16720  "\n"
16721  ""},
16722  { (char *)"plfontld", _wrap_plfontld, METH_VARARGS, (char *)"\n"
16723  "Load Hershey fonts\n"
16724  "\n"
16725  "DESCRIPTION:\n"
16726  "\n"
16727  " Loads the Hershey fonts used for text and symbols. This routine may\n"
16728  " be called before or after initializing PLplot. If not explicitly\n"
16729  " called before PLplot initialization, then by default that\n"
16730  " initialization loads Hershey fonts with the extended character set.\n"
16731  " This routine only has a practical effect for devices that still use\n"
16732  " Hershey fonts (as opposed to modern devices that use unicode-aware\n"
16733  " system fonts instead of Hershey fonts).\n"
16734  "\n"
16735  " Redacted form: plfontld(fnt)\n"
16736  "\n"
16737  " This function is used in examples 1 and 7.\n"
16738  "\n"
16739  "\n"
16740  "\n"
16741  "SYNOPSIS:\n"
16742  "\n"
16743  "plfontld(fnt)\n"
16744  "\n"
16745  "ARGUMENTS:\n"
16746  "\n"
16747  " fnt (PLINT, input) : Specifies the type of Hershey fonts to load.\n"
16748  " A zero value specifies Hershey fonts with the standard character\n"
16749  " set and a non-zero value (the default assumed if plfontld is never\n"
16750  " called) specifies Hershey fonts with the extended character set.\n"
16751  "\n"
16752  ""},
16753  { (char *)"plgchr", _wrap_plgchr, METH_VARARGS, (char *)"\n"
16754  "Get character default height and current (scaled) height\n"
16755  "\n"
16756  "DESCRIPTION:\n"
16757  "\n"
16758  " Get character default height and current (scaled) height.\n"
16759  "\n"
16760  " Redacted form: plgchr(p_def, p_ht)\n"
16761  "\n"
16762  " This function is used in example 23.\n"
16763  "\n"
16764  "\n"
16765  "\n"
16766  "SYNOPSIS:\n"
16767  "\n"
16768  "plgchr(p_def, p_ht)\n"
16769  "\n"
16770  "ARGUMENTS:\n"
16771  "\n"
16772  " p_def (PLFLT_NC_SCALAR, output) : Returned value of the default\n"
16773  " character height (mm).\n"
16774  "\n"
16775  " p_ht (PLFLT_NC_SCALAR, output) : Returned value of the scaled\n"
16776  " character height (mm).\n"
16777  "\n"
16778  ""},
16779  { (char *)"plgcol0", _wrap_plgcol0, METH_VARARGS, (char *)"\n"
16780  "Returns 8-bit RGB values for given color index from cmap0\n"
16781  "\n"
16782  "DESCRIPTION:\n"
16783  "\n"
16784  " Returns 8-bit RGB values (0-255) for given color from cmap0 (see the\n"
16785  " PLplot documentation). Values are negative if an invalid color id is\n"
16786  " given.\n"
16787  "\n"
16788  " Redacted form: plgcol0(icol0, r, g, b)\n"
16789  "\n"
16790  " This function is used in example 2.\n"
16791  "\n"
16792  "\n"
16793  "\n"
16794  "SYNOPSIS:\n"
16795  "\n"
16796  "plgcol0(icol0, r, g, b)\n"
16797  "\n"
16798  "ARGUMENTS:\n"
16799  "\n"
16800  " icol0 (PLINT, input) : Index of desired cmap0 color.\n"
16801  "\n"
16802  " r (PLINT_NC_SCALAR, output) : Returned value of the 8-bit red\n"
16803  " value.\n"
16804  "\n"
16805  " g (PLINT_NC_SCALAR, output) : Returned value of the 8-bit green\n"
16806  " value.\n"
16807  "\n"
16808  " b (PLINT_NC_SCALAR, output) : Returned value of the 8-bit blue\n"
16809  " value.\n"
16810  "\n"
16811  ""},
16812  { (char *)"plgcol0a", _wrap_plgcol0a, METH_VARARGS, (char *)"\n"
16813  "Returns 8-bit RGB values and PLFLT alpha transparency value for given color index from cmap0\n"
16814  "\n"
16815  "DESCRIPTION:\n"
16816  "\n"
16817  " Returns 8-bit RGB values (0-255) and PLFLT alpha transparency value\n"
16818  " (0.0-1.0) for given color from cmap0 (see the PLplot documentation).\n"
16819  " Values are negative if an invalid color id is given.\n"
16820  "\n"
16821  " Redacted form: plgcola(r, g, b)\n"
16822  "\n"
16823  " This function is used in example 30.\n"
16824  "\n"
16825  "\n"
16826  "\n"
16827  "SYNOPSIS:\n"
16828  "\n"
16829  "plgcol0a(icol0, r, g, b, alpha)\n"
16830  "\n"
16831  "ARGUMENTS:\n"
16832  "\n"
16833  " icol0 (PLINT, input) : Index of desired cmap0 color.\n"
16834  "\n"
16835  " r (PLINT_NC_SCALAR, output) : Returned value of the red intensity\n"
16836  " in the range from 0 to 255.\n"
16837  "\n"
16838  " g (PLINT_NC_SCALAR, output) : Returned value of the green intensity\n"
16839  " in the range from 0 to 255.\n"
16840  "\n"
16841  " b (PLINT_NC_SCALAR, output) : Returned value of the blue intensity\n"
16842  " in the range from 0 to 255.\n"
16843  "\n"
16844  " alpha (PLFLT_NC_SCALAR, output) : Returned value of the alpha\n"
16845  " transparency in the range from (0.0-1.0).\n"
16846  "\n"
16847  ""},
16848  { (char *)"plgcolbg", _wrap_plgcolbg, METH_VARARGS, (char *)"\n"
16849  "Returns the background color (cmap0[0]) by 8-bit RGB value\n"
16850  "\n"
16851  "DESCRIPTION:\n"
16852  "\n"
16853  " Returns the background color (cmap0[0]) by 8-bit RGB value.\n"
16854  "\n"
16855  " Redacted form: plgcolbg(r, g, b)\n"
16856  "\n"
16857  " This function is used in example 31.\n"
16858  "\n"
16859  "\n"
16860  "\n"
16861  "SYNOPSIS:\n"
16862  "\n"
16863  "plgcolbg(r, g, b)\n"
16864  "\n"
16865  "ARGUMENTS:\n"
16866  "\n"
16867  " r (PLINT_NC_SCALAR, output) : Returned value of the red intensity\n"
16868  " in the range from 0 to 255.\n"
16869  "\n"
16870  " g (PLINT_NC_SCALAR, output) : Returned value of the green intensity\n"
16871  " in the range from 0 to 255.\n"
16872  "\n"
16873  " b (PLINT_NC_SCALAR, output) : Returned value of the blue intensity\n"
16874  " in the range from 0 to 255.\n"
16875  "\n"
16876  ""},
16877  { (char *)"plgcolbga", _wrap_plgcolbga, METH_VARARGS, (char *)"\n"
16878  "Returns the background color (cmap0[0]) by 8-bit RGB value and PLFLT alpha transparency value\n"
16879  "\n"
16880  "DESCRIPTION:\n"
16881  "\n"
16882  " Returns the background color (cmap0[0]) by 8-bit RGB value and PLFLT\n"
16883  " alpha transparency value.\n"
16884  "\n"
16885  " This function is used in example 31.\n"
16886  "\n"
16887  "\n"
16888  "\n"
16889  "SYNOPSIS:\n"
16890  "\n"
16891  "plgcolbga(r, g, b, alpha)\n"
16892  "\n"
16893  "ARGUMENTS:\n"
16894  "\n"
16895  " r (PLINT_NC_SCALAR, output) : Returned value of the red intensity\n"
16896  " in the range from 0 to 255.\n"
16897  "\n"
16898  " g (PLINT_NC_SCALAR, output) : Returned value of the green intensity\n"
16899  " in the range from 0 to 255.\n"
16900  "\n"
16901  " b (PLINT_NC_SCALAR, output) : Returned value of the blue intensity\n"
16902  " in the range from 0 to 255.\n"
16903  "\n"
16904  " alpha (PLFLT_NC_SCALAR, output) : Returned value of the alpha\n"
16905  " transparency in the range (0.0-1.0).\n"
16906  "\n"
16907  ""},
16908  { (char *)"plgcompression", _wrap_plgcompression, METH_VARARGS, (char *)"\n"
16909  "Get the current device-compression setting\n"
16910  "\n"
16911  "DESCRIPTION:\n"
16912  "\n"
16913  " Get the current device-compression setting. This parameter is only\n"
16914  " used for drivers that provide compression.\n"
16915  "\n"
16916  " Redacted form: plgcompression(compression)\n"
16917  "\n"
16918  " This function is used in example 31.\n"
16919  "\n"
16920  "\n"
16921  "\n"
16922  "SYNOPSIS:\n"
16923  "\n"
16924  "plgcompression(compression)\n"
16925  "\n"
16926  "ARGUMENTS:\n"
16927  "\n"
16928  " compression (PLINT_NC_SCALAR, output) : Returned value of the\n"
16929  " compression setting for the current device.\n"
16930  "\n"
16931  ""},
16932  { (char *)"plgdev", _wrap_plgdev, METH_VARARGS, (char *)"\n"
16933  "Get the current device (keyword) name\n"
16934  "\n"
16935  "DESCRIPTION:\n"
16936  "\n"
16937  " Get the current device (keyword) name. Note: you must have allocated\n"
16938  " space for this (80 characters is safe).\n"
16939  "\n"
16940  " Redacted form: plgdev(p_dev)\n"
16941  "\n"
16942  " This function is used in example 14.\n"
16943  "\n"
16944  "\n"
16945  "\n"
16946  "SYNOPSIS:\n"
16947  "\n"
16948  "plgdev(p_dev)\n"
16949  "\n"
16950  "ARGUMENTS:\n"
16951  "\n"
16952  " p_dev (PLCHAR_NC_VECTOR, output) : Returned ascii character string\n"
16953  " (with preallocated length of 80 characters or more) containing the\n"
16954  " device (keyword) name.\n"
16955  "\n"
16956  ""},
16957  { (char *)"plgdidev", _wrap_plgdidev, METH_VARARGS, (char *)"\n"
16958  "Get parameters that define current device-space window\n"
16959  "\n"
16960  "DESCRIPTION:\n"
16961  "\n"
16962  " Get relative margin width, aspect ratio, and relative justification\n"
16963  " that define current device-space window. If plsdidev has not been\n"
16964  " called the default values pointed to by p_mar, p_aspect, p_jx, and\n"
16965  " p_jy will all be 0.\n"
16966  "\n"
16967  " Redacted form: plgdidev(p_mar, p_aspect, p_jx, p_jy)\n"
16968  "\n"
16969  " This function is used in example 31.\n"
16970  "\n"
16971  "\n"
16972  "\n"
16973  "SYNOPSIS:\n"
16974  "\n"
16975  "plgdidev(p_mar, p_aspect, p_jx, p_jy)\n"
16976  "\n"
16977  "ARGUMENTS:\n"
16978  "\n"
16979  " p_mar (PLFLT_NC_SCALAR, output) : Returned value of the relative\n"
16980  " margin width.\n"
16981  "\n"
16982  " p_aspect (PLFLT_NC_SCALAR, output) : Returned value of the aspect\n"
16983  " ratio.\n"
16984  "\n"
16985  " p_jx (PLFLT_NC_SCALAR, output) : Returned value of the relative\n"
16986  " justification in x.\n"
16987  "\n"
16988  " p_jy (PLFLT_NC_SCALAR, output) : Returned value of the relative\n"
16989  " justification in y.\n"
16990  "\n"
16991  ""},
16992  { (char *)"plgdiori", _wrap_plgdiori, METH_VARARGS, (char *)"\n"
16993  "Get plot orientation\n"
16994  "\n"
16995  "DESCRIPTION:\n"
16996  "\n"
16997  " Get plot orientation parameter which is multiplied by 90 degrees to\n"
16998  " obtain the angle of rotation. Note, arbitrary rotation parameters\n"
16999  " such as 0.2 (corresponding to 18 degrees) are possible, but the usual\n"
17000  " values for the rotation parameter are 0., 1., 2., and 3. corresponding\n"
17001  " to 0 degrees (landscape mode), 90 degrees (portrait mode), 180 degrees\n"
17002  " (seascape mode), and 270 degrees (upside-down mode). If plsdiori has\n"
17003  " not been called the default value pointed to by p_rot will be 0.\n"
17004  "\n"
17005  " Redacted form: plgdiori(p_rot)\n"
17006  "\n"
17007  " This function is not used in any examples.\n"
17008  "\n"
17009  "\n"
17010  "\n"
17011  "SYNOPSIS:\n"
17012  "\n"
17013  "plgdiori(p_rot)\n"
17014  "\n"
17015  "ARGUMENTS:\n"
17016  "\n"
17017  " p_rot (PLFLT_NC_SCALAR, output) : Returned value of the orientation\n"
17018  " parameter.\n"
17019  "\n"
17020  ""},
17021  { (char *)"plgdiplt", _wrap_plgdiplt, METH_VARARGS, (char *)"\n"
17022  "Get parameters that define current plot-space window\n"
17023  "\n"
17024  "DESCRIPTION:\n"
17025  "\n"
17026  " Get relative minima and maxima that define current plot-space window.\n"
17027  " If plsdiplt has not been called the default values pointed to by\n"
17028  " p_xmin, p_ymin, p_xmax, and p_ymax will be 0., 0., 1., and 1.\n"
17029  "\n"
17030  " Redacted form: plgdiplt(p_xmin, p_ymin, p_xmax, p_ymax)\n"
17031  "\n"
17032  " This function is used in example 31.\n"
17033  "\n"
17034  "\n"
17035  "\n"
17036  "SYNOPSIS:\n"
17037  "\n"
17038  "plgdiplt(p_xmin, p_ymin, p_xmax, p_ymax)\n"
17039  "\n"
17040  "ARGUMENTS:\n"
17041  "\n"
17042  " p_xmin (PLFLT_NC_SCALAR, output) : Returned value of the relative\n"
17043  " minimum in x.\n"
17044  "\n"
17045  " p_ymin (PLFLT_NC_SCALAR, output) : Returned value of the relative\n"
17046  " minimum in y.\n"
17047  "\n"
17048  " p_xmax (PLFLT_NC_SCALAR, output) : Returned value of the relative\n"
17049  " maximum in x.\n"
17050  "\n"
17051  " p_ymax (PLFLT_NC_SCALAR, output) : Returned value of the relative\n"
17052  " maximum in y.\n"
17053  "\n"
17054  ""},
17055  { (char *)"plgfam", _wrap_plgfam, METH_VARARGS, (char *)"\n"
17056  "Get family file parameters\n"
17057  "\n"
17058  "DESCRIPTION:\n"
17059  "\n"
17060  " Gets information about current family file, if familying is enabled.\n"
17061  " See the PLplot documentation for more information.\n"
17062  "\n"
17063  " Redacted form: plgfam(p_fam, p_num, p_bmax)\n"
17064  "\n"
17065  " This function is used in examples 14 and 31.\n"
17066  "\n"
17067  "\n"
17068  "\n"
17069  "SYNOPSIS:\n"
17070  "\n"
17071  "plgfam(p_fam, p_num, p_bmax)\n"
17072  "\n"
17073  "ARGUMENTS:\n"
17074  "\n"
17075  " p_fam (PLINT_NC_SCALAR, output) : Returned value of the current\n"
17076  " family flag value. If nonzero, familying is enabled for the\n"
17077  " current device.\n"
17078  "\n"
17079  " p_num (PLINT_NC_SCALAR, output) : Returned value of the current\n"
17080  " family file number.\n"
17081  "\n"
17082  " p_bmax (PLINT_NC_SCALAR, output) : Returned value of the maximum\n"
17083  " file size (in bytes) for a family file.\n"
17084  "\n"
17085  ""},
17086  { (char *)"plgfci", _wrap_plgfci, METH_VARARGS, (char *)"\n"
17087  "Get FCI (font characterization integer)\n"
17088  "\n"
17089  "DESCRIPTION:\n"
17090  "\n"
17091  " Gets information about the current font using the FCI approach. See\n"
17092  " the PLplot documentation for more information.\n"
17093  "\n"
17094  " Redacted form: plgfci(p_fci)\n"
17095  "\n"
17096  " This function is used in example 23.\n"
17097  "\n"
17098  "\n"
17099  "\n"
17100  "SYNOPSIS:\n"
17101  "\n"
17102  "plgfci(p_fci)\n"
17103  "\n"
17104  "ARGUMENTS:\n"
17105  "\n"
17106  " p_fci (PLUNICODE_NC_SCALAR, output) : Returned value of the current\n"
17107  " FCI value.\n"
17108  "\n"
17109  ""},
17110  { (char *)"plgfnam", _wrap_plgfnam, METH_VARARGS, (char *)"\n"
17111  "Get output file name\n"
17112  "\n"
17113  "DESCRIPTION:\n"
17114  "\n"
17115  " Gets the current output file name, if applicable.\n"
17116  "\n"
17117  " Redacted form: plgfnam(fnam)\n"
17118  "\n"
17119  " This function is used in example 31.\n"
17120  "\n"
17121  "\n"
17122  "\n"
17123  "SYNOPSIS:\n"
17124  "\n"
17125  "plgfnam(fnam)\n"
17126  "\n"
17127  "ARGUMENTS:\n"
17128  "\n"
17129  " fnam (PLCHAR_NC_VECTOR, output) : Returned ascii character string\n"
17130  " (with preallocated length of 80 characters or more) containing the\n"
17131  " file name.\n"
17132  "\n"
17133  ""},
17134  { (char *)"plgfont", _wrap_plgfont, METH_VARARGS, (char *)"\n"
17135  "Get family, style and weight of the current font\n"
17136  "\n"
17137  "DESCRIPTION:\n"
17138  "\n"
17139  " Gets information about current font. See the PLplot documentation for\n"
17140  " more information on font selection.\n"
17141  "\n"
17142  " Redacted form: plgfont(p_family, p_style, p_weight)\n"
17143  "\n"
17144  " This function is used in example 23.\n"
17145  "\n"
17146  "\n"
17147  "\n"
17148  "SYNOPSIS:\n"
17149  "\n"
17150  "plgfont(p_family, p_style, p_weight)\n"
17151  "\n"
17152  "ARGUMENTS:\n"
17153  "\n"
17154  " p_family (PLINT_NC_SCALAR, output) : Returned value of the current\n"
17155  " font family. The available values are given by the PL_FCI_*\n"
17156  " constants in plplot.h. Current options are PL_FCI_SANS,\n"
17157  " PL_FCI_SERIF, PL_FCI_MONO, PL_FCI_SCRIPT and PL_FCI_SYMBOL. If\n"
17158  " p_family is NULL then the font family is not returned.\n"
17159  "\n"
17160  " p_style (PLINT_NC_SCALAR, output) : Returned value of the current\n"
17161  " font style. The available values are given by the PL_FCI_*\n"
17162  " constants in plplot.h. Current options are PL_FCI_UPRIGHT,\n"
17163  " PL_FCI_ITALIC and PL_FCI_OBLIQUE. If p_style is NULL then the font\n"
17164  " style is not returned.\n"
17165  "\n"
17166  " p_weight (PLINT_NC_SCALAR, output) : Returned value of the current\n"
17167  " font weight. The available values are given by the PL_FCI_*\n"
17168  " constants in plplot.h. Current options are PL_FCI_MEDIUM and\n"
17169  " PL_FCI_BOLD. If p_weight is NULL then the font weight is not\n"
17170  " returned.\n"
17171  "\n"
17172  ""},
17173  { (char *)"plglevel", _wrap_plglevel, METH_VARARGS, (char *)"\n"
17174  "Get the (current) run level\n"
17175  "\n"
17176  "DESCRIPTION:\n"
17177  "\n"
17178  " Get the (current) run level. Valid settings are: 0, uninitialized\n"
17179  " 1, initialized\n"
17180  " 2, viewport defined\n"
17181  " 3, world coordinates defined\n"
17182  "\n"
17183  "\n"
17184  " Redacted form: plglevel(p_level)\n"
17185  "\n"
17186  " This function is used in example 31.\n"
17187  "\n"
17188  "\n"
17189  "\n"
17190  "SYNOPSIS:\n"
17191  "\n"
17192  "plglevel(p_level)\n"
17193  "\n"
17194  "ARGUMENTS:\n"
17195  "\n"
17196  " p_level (PLINT_NC_SCALAR, output) : Returned value of the run\n"
17197  " level.\n"
17198  "\n"
17199  ""},
17200  { (char *)"plgpage", _wrap_plgpage, METH_VARARGS, (char *)"\n"
17201  "Get page parameters\n"
17202  "\n"
17203  "DESCRIPTION:\n"
17204  "\n"
17205  " Gets the current page configuration. The length and offset values are\n"
17206  " expressed in units that are specific to the current driver. For\n"
17207  " instance: screen drivers will usually interpret them as number of\n"
17208  " pixels, whereas printer drivers will usually use mm.\n"
17209  "\n"
17210  " Redacted form: plgpage(p_xp, p_yp, p_xleng, p_yleng, p_xoff, p_yoff)\n"
17211  "\n"
17212  " This function is used in examples 14 and 31.\n"
17213  "\n"
17214  "\n"
17215  "\n"
17216  "SYNOPSIS:\n"
17217  "\n"
17218  "plgpage(p_xp, p_yp, p_xleng, p_yleng, p_xoff, p_yoff)\n"
17219  "\n"
17220  "ARGUMENTS:\n"
17221  "\n"
17222  " p_xp (PLFLT_NC_SCALAR, output) : Returned value of the number of\n"
17223  " pixels/inch (DPI) in x.\n"
17224  "\n"
17225  " p_yp (PLFLT_NC_SCALAR, output) : Returned value of the number of\n"
17226  " pixels/inch (DPI) in y.\n"
17227  "\n"
17228  " p_xleng (PLINT_NC_SCALAR, output) : Returned value of the x page\n"
17229  " length.\n"
17230  "\n"
17231  " p_yleng (PLINT_NC_SCALAR, output) : Returned value of the y page\n"
17232  " length.\n"
17233  "\n"
17234  " p_xoff (PLINT_NC_SCALAR, output) : Returned value of the x page\n"
17235  " offset.\n"
17236  "\n"
17237  " p_yoff (PLINT_NC_SCALAR, output) : Returned value of the y page\n"
17238  " offset.\n"
17239  "\n"
17240  ""},
17241  { (char *)"plgra", _wrap_plgra, METH_VARARGS, (char *)"\n"
17242  "Switch to graphics screen\n"
17243  "\n"
17244  "DESCRIPTION:\n"
17245  "\n"
17246  " Sets an interactive device to graphics mode, used in conjunction with\n"
17247  " pltext to allow graphics and text to be interspersed. On a device\n"
17248  " which supports separate text and graphics windows, this command causes\n"
17249  " control to be switched to the graphics window. If already in graphics\n"
17250  " mode, this command is ignored. It is also ignored on devices which\n"
17251  " only support a single window or use a different method for shifting\n"
17252  " focus. See also pltext.\n"
17253  "\n"
17254  " Redacted form: plgra()\n"
17255  "\n"
17256  " This function is used in example 1.\n"
17257  "\n"
17258  "\n"
17259  "\n"
17260  "SYNOPSIS:\n"
17261  "\n"
17262  "plgra()\n"
17263  "\n"
17264  ""},
17265  { (char *)"plgriddata", _wrap_plgriddata, METH_VARARGS, (char *)"\n"
17266  "Grid data from irregularly sampled data\n"
17267  "\n"
17268  "DESCRIPTION:\n"
17269  "\n"
17270  " Real world data is frequently irregularly sampled, but PLplot 3D plots\n"
17271  " require data organized as a grid, i.e., with x sample point values\n"
17272  " independent of y coordinate and vice versa. This function takes\n"
17273  " irregularly sampled data from the x[npts], y[npts], and z[npts]\n"
17274  " vectors; reads the desired grid location from the input vectors\n"
17275  " xg[nptsx] and yg[nptsy]; and returns the interpolated result on that\n"
17276  " grid using the output matrix zg[nptsx][nptsy]. The algorithm used to\n"
17277  " interpolate the data to the grid is specified with the argument type\n"
17278  " which can have one parameter specified in argument data.\n"
17279  "\n"
17280  " Redacted form: General: plgriddata(x, y, z, xg, yg, zg, type, data)\n"
17281  " Perl/PDL: Not available?\n"
17282  " Python: zg=plgriddata(x, y, z, xg, yg, type, data)\n"
17283  "\n"
17284  "\n"
17285  " This function is used in example 21.\n"
17286  "\n"
17287  "\n"
17288  "\n"
17289  "SYNOPSIS:\n"
17290  "\n"
17291  "plgriddata(x, y, z, npts, xg, nptsx, yg, nptsy, zg, type, data)\n"
17292  "\n"
17293  "ARGUMENTS:\n"
17294  "\n"
17295  " x (PLFLT_VECTOR, input) : The input x vector.\n"
17296  "\n"
17297  " y (PLFLT_VECTOR, input) : The input y vector.\n"
17298  "\n"
17299  " z (PLFLT_VECTOR, input) : The input z vector. Each triple x[i],\n"
17300  " y[i], z[i] represents one data sample coordinate.\n"
17301  "\n"
17302  " npts (PLINT, input) : The number of data samples in the x, y and z\n"
17303  " vectors.\n"
17304  "\n"
17305  " xg (PLFLT_VECTOR, input) : A vector that specifies the grid spacing\n"
17306  " in the x direction. Usually xg has nptsx equally spaced values\n"
17307  " from the minimum to the maximum values of the x input vector.\n"
17308  "\n"
17309  " nptsx (PLINT, input) : The number of points in the xg vector.\n"
17310  "\n"
17311  " yg (PLFLT_VECTOR, input) : A vector that specifies the grid spacing\n"
17312  " in the y direction. Similar to the xg parameter.\n"
17313  "\n"
17314  " nptsy (PLINT, input) : The number of points in the yg vector.\n"
17315  "\n"
17316  " zg (PLFLT_NC_MATRIX, output) : The matrix of interpolated results\n"
17317  " where data lies in the grid specified by xg and yg. Therefore the\n"
17318  " zg matrix must be dimensioned\n"
17319  " nptsx by\n"
17320  " nptsy.\n"
17321  "\n"
17322  " type (PLINT, input) : The type of grid interpolation algorithm to\n"
17323  " use, which can be: GRID_CSA: Bivariate Cubic Spline approximation\n"
17324  " GRID_DTLI: Delaunay Triangulation Linear Interpolation\n"
17325  " GRID_NNI: Natural Neighbors Interpolation\n"
17326  " GRID_NNIDW: Nearest Neighbors Inverse Distance Weighted\n"
17327  " GRID_NNLI: Nearest Neighbors Linear Interpolation\n"
17328  " GRID_NNAIDW: Nearest Neighbors Around Inverse Distance\n"
17329  " Weighted\n"
17330  " For details of the algorithms read the source file plgridd.c.\n"
17331  "\n"
17332  " data (PLFLT, input) : Some gridding algorithms require extra data,\n"
17333  " which can be specified through this argument. Currently, for\n"
17334  " algorithm: GRID_NNIDW, data specifies the number of neighbors to\n"
17335  " use, the lower the value, the noisier (more local) the\n"
17336  " approximation is.\n"
17337  " GRID_NNLI, data specifies what a thin triangle is, in the\n"
17338  " range [1. .. 2.]. High values enable the usage of very thin\n"
17339  " triangles for interpolation, possibly resulting in error in\n"
17340  " the approximation.\n"
17341  " GRID_NNI, only weights greater than data will be accepted. If\n"
17342  " 0, all weights will be accepted.\n"
17343  "\n"
17344  ""},
17345  { (char *)"plgspa", _wrap_plgspa, METH_VARARGS, (char *)"\n"
17346  "Get current subpage parameters\n"
17347  "\n"
17348  "DESCRIPTION:\n"
17349  "\n"
17350  " Gets the size of the current subpage in millimeters measured from the\n"
17351  " bottom left hand corner of the output device page or screen. Can be\n"
17352  " used in conjunction with plsvpa for setting the size of a viewport in\n"
17353  " absolute coordinates (millimeters).\n"
17354  "\n"
17355  " Redacted form: plgspa(xmin, xmax, ymin, ymax)\n"
17356  "\n"
17357  " This function is used in example 23.\n"
17358  "\n"
17359  "\n"
17360  "\n"
17361  "SYNOPSIS:\n"
17362  "\n"
17363  "plgspa(xmin, xmax, ymin, ymax)\n"
17364  "\n"
17365  "ARGUMENTS:\n"
17366  "\n"
17367  " xmin (PLFLT_NC_SCALAR, output) : Returned value of the position of\n"
17368  " the left hand edge of the subpage in millimeters.\n"
17369  "\n"
17370  " xmax (PLFLT_NC_SCALAR, output) : Returned value of the position of\n"
17371  " the right hand edge of the subpage in millimeters.\n"
17372  "\n"
17373  " ymin (PLFLT_NC_SCALAR, output) : Returned value of the position of\n"
17374  " the bottom edge of the subpage in millimeters.\n"
17375  "\n"
17376  " ymax (PLFLT_NC_SCALAR, output) : Returned value of the position of\n"
17377  " the top edge of the subpage in millimeters.\n"
17378  "\n"
17379  ""},
17380  { (char *)"plgstrm", _wrap_plgstrm, METH_VARARGS, (char *)"\n"
17381  "Get current stream number\n"
17382  "\n"
17383  "DESCRIPTION:\n"
17384  "\n"
17385  " Gets the number of the current output stream. See also plsstrm.\n"
17386  "\n"
17387  " Redacted form: plgstrm(p_strm)\n"
17388  "\n"
17389  " This function is used in example 1,20.\n"
17390  "\n"
17391  "\n"
17392  "\n"
17393  "SYNOPSIS:\n"
17394  "\n"
17395  "plgstrm(p_strm)\n"
17396  "\n"
17397  "ARGUMENTS:\n"
17398  "\n"
17399  " p_strm (PLINT_NC_SCALAR, output) : Returned value of the current\n"
17400  " stream value.\n"
17401  "\n"
17402  ""},
17403  { (char *)"plgver", _wrap_plgver, METH_VARARGS, (char *)"\n"
17404  "Get the current library version number\n"
17405  "\n"
17406  "DESCRIPTION:\n"
17407  "\n"
17408  " Get the current library version number. Note: you must have allocated\n"
17409  " space for this (80 characters is safe).\n"
17410  "\n"
17411  " Redacted form: plgver(p_ver)\n"
17412  "\n"
17413  " This function is used in example 1.\n"
17414  "\n"
17415  "\n"
17416  "\n"
17417  "SYNOPSIS:\n"
17418  "\n"
17419  "plgver(p_ver)\n"
17420  "\n"
17421  "ARGUMENTS:\n"
17422  "\n"
17423  " p_ver (PLCHAR_NC_VECTOR, output) : Returned ascii character string\n"
17424  " (with preallocated length of 80 characters or more) containing the\n"
17425  " PLplot version number.\n"
17426  "\n"
17427  ""},
17428  { (char *)"plgvpd", _wrap_plgvpd, METH_VARARGS, (char *)"\n"
17429  "Get viewport limits in normalized device coordinates\n"
17430  "\n"
17431  "DESCRIPTION:\n"
17432  "\n"
17433  " Get viewport limits in normalized device coordinates.\n"
17434  "\n"
17435  " Redacted form: General: plgvpd(p_xmin, p_xmax, p_ymin, p_ymax)\n"
17436  " Perl/PDL: Not available?\n"
17437  "\n"
17438  "\n"
17439  " This function is used in example 31.\n"
17440  "\n"
17441  "\n"
17442  "\n"
17443  "SYNOPSIS:\n"
17444  "\n"
17445  "plgvpd(p_xmin, p_xmax, p_ymin, p_ymax)\n"
17446  "\n"
17447  "ARGUMENTS:\n"
17448  "\n"
17449  " p_xmin (PLFLT_NC_SCALAR, output) : Returned value of the lower\n"
17450  " viewport limit of the normalized device coordinate in x.\n"
17451  "\n"
17452  " p_xmax (PLFLT_NC_SCALAR, output) : Returned value of the upper\n"
17453  " viewport limit of the normalized device coordinate in x.\n"
17454  "\n"
17455  " p_ymin (PLFLT_NC_SCALAR, output) : Returned value of the lower\n"
17456  " viewport limit of the normalized device coordinate in y.\n"
17457  "\n"
17458  " p_ymax (PLFLT_NC_SCALAR, output) : Returned value of the upper\n"
17459  " viewport limit of the normalized device coordinate in y.\n"
17460  "\n"
17461  ""},
17462  { (char *)"plgvpw", _wrap_plgvpw, METH_VARARGS, (char *)"\n"
17463  "Get viewport limits in world coordinates\n"
17464  "\n"
17465  "DESCRIPTION:\n"
17466  "\n"
17467  " Get viewport limits in world coordinates.\n"
17468  "\n"
17469  " Redacted form: General: plgvpw(p_xmin, p_xmax, p_ymin, p_ymax)\n"
17470  " Perl/PDL: Not available?\n"
17471  "\n"
17472  "\n"
17473  " This function is used in example 31.\n"
17474  "\n"
17475  "\n"
17476  "\n"
17477  "SYNOPSIS:\n"
17478  "\n"
17479  "plgvpw(p_xmin, p_xmax, p_ymin, p_ymax)\n"
17480  "\n"
17481  "ARGUMENTS:\n"
17482  "\n"
17483  " p_xmin (PLFLT_NC_SCALAR, output) : Returned value of the lower\n"
17484  " viewport limit of the world coordinate in x.\n"
17485  "\n"
17486  " p_xmax (PLFLT_NC_SCALAR, output) : Returned value of the upper\n"
17487  " viewport limit of the world coordinate in x.\n"
17488  "\n"
17489  " p_ymin (PLFLT_NC_SCALAR, output) : Returned value of the lower\n"
17490  " viewport limit of the world coordinate in y.\n"
17491  "\n"
17492  " p_ymax (PLFLT_NC_SCALAR, output) : Returned value of the upper\n"
17493  " viewport limit of the world coordinate in y.\n"
17494  "\n"
17495  ""},
17496  { (char *)"plgxax", _wrap_plgxax, METH_VARARGS, (char *)"\n"
17497  "Get x axis parameters\n"
17498  "\n"
17499  "DESCRIPTION:\n"
17500  "\n"
17501  " Returns current values of the p_digmax and p_digits flags for the x\n"
17502  " axis. p_digits is updated after the plot is drawn, so this routine\n"
17503  " should only be called after the call to plbox (or plbox3) is complete.\n"
17504  " See the PLplot documentation for more information.\n"
17505  "\n"
17506  " Redacted form: plgxax(p_digmax, p_digits)\n"
17507  "\n"
17508  " This function is used in example 31.\n"
17509  "\n"
17510  "\n"
17511  "\n"
17512  "SYNOPSIS:\n"
17513  "\n"
17514  "plgxax(p_digmax, p_digits)\n"
17515  "\n"
17516  "ARGUMENTS:\n"
17517  "\n"
17518  " p_digmax (PLINT_NC_SCALAR, output) : Returned value of the maximum\n"
17519  " number of digits for the x axis. If nonzero, the printed label\n"
17520  " has been switched to a floating-point representation when the\n"
17521  " number of digits exceeds this value.\n"
17522  "\n"
17523  " p_digits (PLINT_NC_SCALAR, output) : Returned value of the actual\n"
17524  " number of digits for the numeric labels (x axis) from the last\n"
17525  " plot.\n"
17526  "\n"
17527  ""},
17528  { (char *)"plgyax", _wrap_plgyax, METH_VARARGS, (char *)"\n"
17529  "Get y axis parameters\n"
17530  "\n"
17531  "DESCRIPTION:\n"
17532  "\n"
17533  " Identical to plgxax, except that arguments are flags for y axis. See\n"
17534  " the description of plgxax for more detail.\n"
17535  "\n"
17536  " Redacted form: plgyax(p_digmax, p_digits)\n"
17537  "\n"
17538  " This function is used in example 31.\n"
17539  "\n"
17540  "\n"
17541  "\n"
17542  "SYNOPSIS:\n"
17543  "\n"
17544  "plgyax(p_digmax, p_digits)\n"
17545  "\n"
17546  "ARGUMENTS:\n"
17547  "\n"
17548  " p_digmax (PLINT_NC_SCALAR, output) : Returned value of the maximum\n"
17549  " number of digits for the y axis. If nonzero, the printed label\n"
17550  " has been switched to a floating-point representation when the\n"
17551  " number of digits exceeds this value.\n"
17552  "\n"
17553  " p_digits (PLINT_NC_SCALAR, output) : Returned value of the actual\n"
17554  " number of digits for the numeric labels (y axis) from the last\n"
17555  " plot.\n"
17556  "\n"
17557  ""},
17558  { (char *)"plgzax", _wrap_plgzax, METH_VARARGS, (char *)"\n"
17559  "Get z axis parameters\n"
17560  "\n"
17561  "DESCRIPTION:\n"
17562  "\n"
17563  " Identical to plgxax, except that arguments are flags for z axis. See\n"
17564  " the description of plgxax for more detail.\n"
17565  "\n"
17566  " Redacted form: plgzax(p_digmax, p_digits)\n"
17567  "\n"
17568  " This function is used in example 31.\n"
17569  "\n"
17570  "\n"
17571  "\n"
17572  "SYNOPSIS:\n"
17573  "\n"
17574  "plgzax(p_digmax, p_digits)\n"
17575  "\n"
17576  "ARGUMENTS:\n"
17577  "\n"
17578  " p_digmax (PLINT_NC_SCALAR, output) : Returned value of the maximum\n"
17579  " number of digits for the z axis. If nonzero, the printed label\n"
17580  " has been switched to a floating-point representation when the\n"
17581  " number of digits exceeds this value.\n"
17582  "\n"
17583  " p_digits (PLINT_NC_SCALAR, output) : Returned value of the actual\n"
17584  " number of digits for the numeric labels (z axis) from the last\n"
17585  " plot.\n"
17586  "\n"
17587  ""},
17588  { (char *)"plhist", _wrap_plhist, METH_VARARGS, (char *)"\n"
17589  "Plot a histogram from unbinned data\n"
17590  "\n"
17591  "DESCRIPTION:\n"
17592  "\n"
17593  " Plots a histogram from n data points stored in the data vector. This\n"
17594  " routine bins the data into nbin bins equally spaced between datmin and\n"
17595  " datmax, and calls plbin to draw the resulting histogram. Parameter\n"
17596  " opt allows, among other things, the histogram either to be plotted in\n"
17597  " an existing window or causes plhist to call plenv with suitable limits\n"
17598  " before plotting the histogram.\n"
17599  "\n"
17600  " Redacted form: plhist(data, datmin, datmax, nbin, opt)\n"
17601  "\n"
17602  " This function is used in example 5.\n"
17603  "\n"
17604  "\n"
17605  "\n"
17606  "SYNOPSIS:\n"
17607  "\n"
17608  "plhist(n, data, datmin, datmax, nbin, opt)\n"
17609  "\n"
17610  "ARGUMENTS:\n"
17611  "\n"
17612  " n (PLINT, input) : Number of data points.\n"
17613  "\n"
17614  " data (PLFLT_VECTOR, input) : A vector containing the values of the\n"
17615  " n data points.\n"
17616  "\n"
17617  " datmin (PLFLT, input) : Left-hand edge of lowest-valued bin.\n"
17618  "\n"
17619  " datmax (PLFLT, input) : Right-hand edge of highest-valued bin.\n"
17620  "\n"
17621  " nbin (PLINT, input) : Number of (equal-sized) bins into which to\n"
17622  " divide the interval xmin to xmax.\n"
17623  "\n"
17624  " opt (PLINT, input) : Is a combination of several flags:\n"
17625  " opt=PL_HIST_DEFAULT: The axes are automatically rescaled to fit\n"
17626  " the histogram data, the outer bins are expanded to fill up the\n"
17627  " entire x-axis, data outside the given extremes are assigned to the\n"
17628  " outer bins and bins of zero height are simply drawn.\n"
17629  " opt=PL_HIST_NOSCALING|...: The existing axes are not rescaled\n"
17630  " to fit the histogram data, without this flag, plenv is called\n"
17631  " to set the world coordinates.\n"
17632  " opt=PL_HIST_IGNORE_OUTLIERS|...: Data outside the given\n"
17633  " extremes are not taken into account. This option should\n"
17634  " probably be combined with opt=PL_HIST_NOEXPAND|..., so as to\n"
17635  " properly present the data.\n"
17636  " opt=PL_HIST_NOEXPAND|...: The outer bins are drawn with equal\n"
17637  " size as the ones inside.\n"
17638  " opt=PL_HIST_NOEMPTY|...: Bins with zero height are not drawn\n"
17639  " (there is a gap for such bins).\n"
17640  "\n"
17641  ""},
17642  { (char *)"plhlsrgb", _wrap_plhlsrgb, METH_VARARGS, (char *)"\n"
17643  "Convert HLS color to RGB\n"
17644  "\n"
17645  "DESCRIPTION:\n"
17646  "\n"
17647  " Convert HLS color coordinates to RGB.\n"
17648  "\n"
17649  " Redacted form: General: plhlsrgb(h, l, s, p_r, p_g, p_b)\n"
17650  " Perl/PDL: Not available? Implemented as plhls?\n"
17651  "\n"
17652  "\n"
17653  " This function is used in example 2.\n"
17654  "\n"
17655  "\n"
17656  "\n"
17657  "SYNOPSIS:\n"
17658  "\n"
17659  "plhlsrgb(h, l, s, p_r, p_g, p_b)\n"
17660  "\n"
17661  "ARGUMENTS:\n"
17662  "\n"
17663  " h (PLFLT, input) : Hue in degrees (0.0-360.0) on the color\n"
17664  " cylinder.\n"
17665  "\n"
17666  " l (PLFLT, input) : Lightness expressed as a fraction (0.0-1.0) of\n"
17667  " the axis of the color cylinder.\n"
17668  "\n"
17669  " s (PLFLT, input) : Saturation expressed as a fraction (0.0-1.0) of\n"
17670  " the radius of the color cylinder.\n"
17671  "\n"
17672  " p_r (PLFLT_NC_SCALAR, output) : Returned value of the red intensity\n"
17673  " (0.0-1.0) of the color.\n"
17674  "\n"
17675  " p_g (PLFLT_NC_SCALAR, output) : Returned value of the green\n"
17676  " intensity (0.0-1.0) of the color.\n"
17677  "\n"
17678  " p_b (PLFLT_NC_SCALAR, output) : Returned value of the blue\n"
17679  " intensity (0.0-1.0) of the color.\n"
17680  "\n"
17681  ""},
17682  { (char *)"plinit", _wrap_plinit, METH_VARARGS, (char *)"\n"
17683  "Initialize PLplot\n"
17684  "\n"
17685  "DESCRIPTION:\n"
17686  "\n"
17687  " Initializing the plotting package. The program prompts for the device\n"
17688  " keyword or number of the desired output device. Hitting a RETURN in\n"
17689  " response to the prompt is the same as selecting the first device.\n"
17690  " plinit will issue no prompt if either the device was specified\n"
17691  " previously (via command line flag, the plsetopt function, or the\n"
17692  " plsdev function), or if only one device is enabled when PLplot is\n"
17693  " installed. If subpages have been specified, the output device is\n"
17694  " divided into nx by ny subpages, each of which may be used\n"
17695  " independently. If plinit is called again during a program, the\n"
17696  " previously opened file will be closed. The subroutine pladv is used\n"
17697  " to advance from one subpage to the next.\n"
17698  "\n"
17699  " Redacted form: plinit()\n"
17700  "\n"
17701  " This function is used in all of the examples.\n"
17702  "\n"
17703  "\n"
17704  "\n"
17705  "SYNOPSIS:\n"
17706  "\n"
17707  "plinit()\n"
17708  "\n"
17709  ""},
17710  { (char *)"pljoin", _wrap_pljoin, METH_VARARGS, (char *)"\n"
17711  "Draw a line between two points\n"
17712  "\n"
17713  "DESCRIPTION:\n"
17714  "\n"
17715  " Joins the point (\n"
17716  " x1,\n"
17717  " y1) to (\n"
17718  " x2,\n"
17719  " y2).\n"
17720  "\n"
17721  " Redacted form: pljoin(x1,y1,x2,y2)\n"
17722  "\n"
17723  " This function is used in examples 3 and 14.\n"
17724  "\n"
17725  "\n"
17726  "\n"
17727  "SYNOPSIS:\n"
17728  "\n"
17729  "pljoin(x1, y1, x2, y2)\n"
17730  "\n"
17731  "ARGUMENTS:\n"
17732  "\n"
17733  " x1 (PLFLT, input) : x coordinate of first point.\n"
17734  "\n"
17735  " y1 (PLFLT, input) : y coordinate of first point.\n"
17736  "\n"
17737  " x2 (PLFLT, input) : x coordinate of second point.\n"
17738  "\n"
17739  " y2 (PLFLT, input) : y coordinate of second point.\n"
17740  "\n"
17741  ""},
17742  { (char *)"pllab", _wrap_pllab, METH_VARARGS, (char *)"\n"
17743  "Simple routine to write labels\n"
17744  "\n"
17745  "DESCRIPTION:\n"
17746  "\n"
17747  " Routine for writing simple labels. Use plmtex for more complex labels.\n"
17748  "\n"
17749  " Redacted form: pllab(xlabel, ylabel, tlabel)\n"
17750  "\n"
17751  " This function is used in examples 1, 5, 9, 12, 14-16, 20-22, and 29.\n"
17752  "\n"
17753  "\n"
17754  "\n"
17755  "SYNOPSIS:\n"
17756  "\n"
17757  "pllab(xlabel, ylabel, tlabel)\n"
17758  "\n"
17759  "ARGUMENTS:\n"
17760  "\n"
17761  " xlabel (PLCHAR_VECTOR, input) : A UTF-8 character string specifying\n"
17762  " the label for the x axis.\n"
17763  "\n"
17764  " ylabel (PLCHAR_VECTOR, input) : A UTF-8 character string specifying\n"
17765  " the label for the y axis.\n"
17766  "\n"
17767  " tlabel (PLCHAR_VECTOR, input) : A UTF-8 character string specifying\n"
17768  " the title of the plot.\n"
17769  "\n"
17770  ""},
17771  { (char *)"pllegend", _wrap_pllegend, METH_VARARGS, (char *)"\n"
17772  "Plot legend using discretely annotated filled boxes, lines, and/or lines of symbols\n"
17773  "\n"
17774  "DESCRIPTION:\n"
17775  "\n"
17776  " Routine for creating a discrete plot legend with a plotted filled box,\n"
17777  " line, and/or line of symbols for each annotated legend entry. (See\n"
17778  " plcolorbar for similar functionality for creating continuous color\n"
17779  " bars.) The arguments of pllegend provide control over the location\n"
17780  " and size of the legend as well as the location and characteristics of\n"
17781  " the elements (most of which are optional) within that legend. The\n"
17782  " resulting legend is clipped at the boundaries of the current subpage.\n"
17783  " (N.B. the adopted coordinate system used for some of the parameters is\n"
17784  " defined in the documentation of the position parameter.)\n"
17785  "\n"
17786  " Redacted form: pllegend(p_legend_width, p_legend_height, opt,\n"
17787  " position, x, y, plot_width, bg_color, bb_color, bb_style, nrow,\n"
17788  " ncolumn, opt_array, text_offset, text_scale, text_spacing,\n"
17789  " test_justification, text_colors, text, box_colors, box_patterns,\n"
17790  " box_scales, box_line_widths, line_colors, line_styles, line_widths,\n"
17791  " symbol_colors, symbol_scales, symbol_numbers, symbols)\n"
17792  "\n"
17793  " This function is used in examples 4, 26, and 33.\n"
17794  "\n"
17795  "\n"
17796  "\n"
17797  "SYNOPSIS:\n"
17798  "\n"
17799  "pllegend(p_legend_width, p_legend_height, opt, position, x, y, plot_width, bg_color, bb_color, bb_style, nrow, ncolumn, nlegend, opt_array, text_offset, text_scale, text_spacing, test_justification, text_colors, text, box_colors, box_patterns, box_scales, box_line_widths, line_colors, line_styles, line_widths, symbol_colors, symbol_scales, symbol_numbers, symbols)\n"
17800  "\n"
17801  "ARGUMENTS:\n"
17802  "\n"
17803  " p_legend_width (PLFLT_NC_SCALAR, output) : Returned value of the\n"
17804  " legend width in adopted coordinates. This quantity is calculated\n"
17805  " from plot_width, text_offset, ncolumn (possibly modified inside\n"
17806  " the routine depending on nlegend and nrow), and the length\n"
17807  " (calculated internally) of the longest text string.\n"
17808  "\n"
17809  " p_legend_height (PLFLT_NC_SCALAR, output) : Returned value of the\n"
17810  " legend height in adopted coordinates. This quantity is calculated\n"
17811  " from text_scale, text_spacing, and nrow (possibly modified inside\n"
17812  " the routine depending on nlegend and nrow).\n"
17813  "\n"
17814  " opt (PLINT, input) : opt contains bits controlling the overall\n"
17815  " legend. If the PL_LEGEND_TEXT_LEFT bit is set, put the text area\n"
17816  " on the left of the legend and the plotted area on the right.\n"
17817  " Otherwise, put the text area on the right of the legend and the\n"
17818  " plotted area on the left. If the PL_LEGEND_BACKGROUND bit is set,\n"
17819  " plot a (semitransparent) background for the legend. If the\n"
17820  " PL_LEGEND_BOUNDING_BOX bit is set, plot a bounding box for the\n"
17821  " legend. If the PL_LEGEND_ROW_MAJOR bit is set and (both of the\n"
17822  " possibly internally transformed) nrow > 1 and ncolumn > 1, then\n"
17823  " plot the resulting array of legend entries in row-major order.\n"
17824  " Otherwise, plot the legend entries in column-major order.\n"
17825  "\n"
17826  " position (PLINT, input) : position contains bits which control the\n"
17827  " overall position of the legend and the definition of the adopted\n"
17828  " coordinates used for positions just like what is done for the\n"
17829  " position argument for plcolorbar. However, note that the defaults\n"
17830  " for the position bits (see below) are different than the\n"
17831  " plcolorbar case. The combination of the PL_POSITION_LEFT,\n"
17832  " PL_POSITION_RIGHT, PL_POSITION_TOP, PL_POSITION_BOTTOM,\n"
17833  " PL_POSITION_INSIDE, and PL_POSITION_OUTSIDE bits specifies one of\n"
17834  " the 16 possible standard positions (the 4 corners and centers of\n"
17835  " the 4 sides for both the inside and outside cases) of the legend\n"
17836  " relative to the adopted coordinate system. The corner positions\n"
17837  " are specified by the appropriate combination of two of the\n"
17838  " PL_POSITION_LEFT, PL_POSITION_RIGHT, PL_POSITION_TOP, and\n"
17839  " PL_POSITION_BOTTOM bits while the sides are specified by a single\n"
17840  " value of one of those bits. The adopted coordinates are\n"
17841  " normalized viewport coordinates if the PL_POSITION_VIEWPORT bit is\n"
17842  " set or normalized subpage coordinates if the PL_POSITION_SUBPAGE\n"
17843  " bit is set. Default position bits: If none of PL_POSITION_LEFT,\n"
17844  " PL_POSITION_RIGHT, PL_POSITION_TOP, or PL_POSITION_BOTTOM are set,\n"
17845  " then use the combination of PL_POSITION_RIGHT and PL_POSITION_TOP.\n"
17846  " If neither of PL_POSITION_INSIDE or PL_POSITION_OUTSIDE is set,\n"
17847  " use PL_POSITION_INSIDE. If neither of PL_POSITION_VIEWPORT or\n"
17848  " PL_POSITION_SUBPAGE is set, use PL_POSITION_VIEWPORT.\n"
17849  "\n"
17850  " x (PLFLT, input) : X offset of the legend position in adopted\n"
17851  " coordinates from the specified standard position of the legend.\n"
17852  " For positive x, the direction of motion away from the standard\n"
17853  " position is inward/outward from the standard corner positions or\n"
17854  " standard left or right positions if the\n"
17855  " PL_POSITION_INSIDE/PL_POSITION_OUTSIDE bit is set in position.\n"
17856  " For the standard top or bottom positions, the direction of motion\n"
17857  " is toward positive X.\n"
17858  "\n"
17859  " y (PLFLT, input) : Y offset of the legend position in adopted\n"
17860  " coordinates from the specified standard position of the legend.\n"
17861  " For positive y, the direction of motion away from the standard\n"
17862  " position is inward/outward from the standard corner positions or\n"
17863  " standard top or bottom positions if the\n"
17864  " PL_POSITION_INSIDE/PL_POSITION_OUTSIDE bit is set in position. For\n"
17865  " the standard left or right positions, the direction of motion is\n"
17866  " toward positive Y.\n"
17867  "\n"
17868  " plot_width (PLFLT, input) : Horizontal width in adopted coordinates\n"
17869  " of the plot area (where the colored boxes, lines, and/or lines of\n"
17870  " symbols are drawn) of the legend.\n"
17871  "\n"
17872  " bg_color (PLINT, input) : The cmap0 color of the background for the\n"
17873  " legend (PL_LEGEND_BACKGROUND).\n"
17874  "\n"
17875  " bb_color (PLINT, input) : The cmap0 color of the bounding-box line\n"
17876  " for the legend (PL_LEGEND_BOUNDING_BOX).\n"
17877  "\n"
17878  " bb_style (PLINT, input) : The pllsty style number for the\n"
17879  " bounding-box line for the legend (PL_LEGEND_BACKGROUND).\n"
17880  "\n"
17881  " nrow (PLINT, input) : The cmap0 index of the background color for\n"
17882  " the legend (PL_LEGEND_BACKGROUND).\n"
17883  "\n"
17884  " ncolumn (PLINT, input) : The cmap0 index of the background color\n"
17885  " for the legend (PL_LEGEND_BACKGROUND).\n"
17886  "\n"
17887  " nlegend (PLINT, input) : Number of legend entries. N.B. The total\n"
17888  " vertical height of the legend in adopted coordinates is calculated\n"
17889  " internally from nlegend, text_scale (see below), and text_spacing\n"
17890  " (see below).\n"
17891  "\n"
17892  " opt_array (PLINT_VECTOR, input) : A vector of\n"
17893  " nlegend values of options to control each individual plotted area\n"
17894  " corresponding to a legend entry. If the\n"
17895  " PL_LEGEND_NONE bit is set, then nothing is plotted in the plotted\n"
17896  " area. If the\n"
17897  " PL_LEGEND_COLOR_BOX,\n"
17898  " PL_LEGEND_LINE, and/or\n"
17899  " PL_LEGEND_SYMBOL bits are set, the area corresponding to a legend\n"
17900  " entry is plotted with a colored box; a line; and/or a line of\n"
17901  " symbols.\n"
17902  "\n"
17903  " text_offset (PLFLT, input) : Offset of the text area from the plot\n"
17904  " area in units of character width. N.B. The total horizontal\n"
17905  " width of the legend in adopted coordinates is calculated\n"
17906  " internally from\n"
17907  " plot_width (see above),\n"
17908  " text_offset, and length (calculated internally) of the longest text\n"
17909  " string.\n"
17910  "\n"
17911  " text_scale (PLFLT, input) : Character height scale for text\n"
17912  " annotations. N.B. The total vertical height of the legend in\n"
17913  " adopted coordinates is calculated internally from\n"
17914  " nlegend (see above),\n"
17915  " text_scale, and\n"
17916  " text_spacing (see below).\n"
17917  "\n"
17918  " text_spacing (PLFLT, input) : Vertical spacing in units of the\n"
17919  " character height from one legend entry to the next. N.B. The\n"
17920  " total vertical height of the legend in adopted coordinates is\n"
17921  " calculated internally from\n"
17922  " nlegend (see above),\n"
17923  " text_scale (see above), and\n"
17924  " text_spacing.\n"
17925  "\n"
17926  " text_justification (PLFLT, input) : Justification parameter used\n"
17927  " for text justification. The most common values of\n"
17928  " text_justification are 0., 0.5, or 1. corresponding to a text that\n"
17929  " is left justified, centred, or right justified within the text\n"
17930  " area, but other values are allowed as well.\n"
17931  "\n"
17932  " text_colors (PLINT_VECTOR, input) : A vector containing\n"
17933  " nlegend cmap0 text colors.\n"
17934  "\n"
17935  " text (PLCHAR_MATRIX, input) : A vector of\n"
17936  " nlegend UTF-8 character strings containing the legend annotations.\n"
17937  "\n"
17938  " box_colors (PLINT_VECTOR, input) : A vector containing\n"
17939  " nlegend cmap0 colors for the discrete colored boxes (\n"
17940  " PL_LEGEND_COLOR_BOX).\n"
17941  "\n"
17942  " box_patterns (PLINT_VECTOR, input) : A vector containing\n"
17943  " nlegend patterns (plpsty indices) for the discrete colored boxes (\n"
17944  " PL_LEGEND_COLOR_BOX).\n"
17945  "\n"
17946  " box_scales (PLFLT_VECTOR, input) : A vector containing\n"
17947  " nlegend scales (units of fraction of character height) for the height\n"
17948  " of the discrete colored boxes (\n"
17949  " PL_LEGEND_COLOR_BOX).\n"
17950  "\n"
17951  " box_line_widths (PLFLT_VECTOR, input) : A vector containing\n"
17952  " nlegend line widths for the patterns specified by box_patterns (\n"
17953  " PL_LEGEND_COLOR_BOX).\n"
17954  "\n"
17955  " line_colors (PLINT_VECTOR, input) : A vector containing\n"
17956  " nlegend cmap0 line colors (\n"
17957  " PL_LEGEND_LINE).\n"
17958  "\n"
17959  " line_styles (PLINT_VECTOR, input) : A vector containing\n"
17960  " nlegend line styles (plsty indices) (\n"
17961  " PL_LEGEND_LINE).\n"
17962  "\n"
17963  " line_widths (PLFLT_VECTOR, input) : A vector containing\n"
17964  " nlegend line widths (\n"
17965  " PL_LEGEND_LINE).\n"
17966  "\n"
17967  " symbol_colors (PLINT_VECTOR, input) : A vector containing\n"
17968  " nlegend cmap0 symbol colors (\n"
17969  " PL_LEGEND_SYMBOL).\n"
17970  "\n"
17971  " symbol_scales (PLFLT_VECTOR, input) : A vector containing\n"
17972  " nlegend scale values for the symbol height (\n"
17973  " PL_LEGEND_SYMBOL).\n"
17974  "\n"
17975  " symbol_numbers (PLINT_VECTOR, input) : A vector containing\n"
17976  " nlegend numbers of symbols to be drawn across the width of the plotted\n"
17977  " area (\n"
17978  " PL_LEGEND_SYMBOL).\n"
17979  "\n"
17980  " symbols (PLCHAR_MATRIX, input) : A vector of\n"
17981  " nlegend UTF-8 character strings containing the legend symbols. (\n"
17982  " PL_LEGEND_SYMBOL).\n"
17983  "\n"
17984  ""},
17985  { (char *)"plcolorbar", _wrap_plcolorbar, METH_VARARGS, (char *)"\n"
17986  "Plot color bar for image, shade or gradient plots\n"
17987  "\n"
17988  "DESCRIPTION:\n"
17989  "\n"
17990  " Routine for creating a continuous color bar for image, shade, or\n"
17991  " gradient plots. (See pllegend for similar functionality for creating\n"
17992  " legends with discrete elements). The arguments of plcolorbar provide\n"
17993  " control over the location and size of the color bar as well as the\n"
17994  " location and characteristics of the elements (most of which are\n"
17995  " optional) within that color bar. The resulting color bar is clipped\n"
17996  " at the boundaries of the current subpage. (N.B. the adopted coordinate\n"
17997  " system used for some of the parameters is defined in the documentation\n"
17998  " of the position parameter.)\n"
17999  "\n"
18000  " Redacted form: plcolorbar(p_colorbar_width, p_colorbar_height, opt,\n"
18001  " position, x, y, x_length, y_length, bg_color, bb_color, bb_style,\n"
18002  " low_cap_color, high_cap_color, cont_color, cont_width, label_opts,\n"
18003  " labels, axis_opts, ticks, sub_ticks, values)\n"
18004  "\n"
18005  " This function is used in examples 16 and 33.\n"
18006  "\n"
18007  "\n"
18008  "\n"
18009  "SYNOPSIS:\n"
18010  "\n"
18011  "plcolorbar(p_colorbar_width, p_colorbar_height, opt, position, x, y, x_length, y_length, bg_color, bb_color, bb_style, low_cap_color, high_cap_color, cont_color, cont_width, n_labels, label_opts, labels, naxes, axis_opts, ticks, sub_ticks, n_values, values)\n"
18012  "\n"
18013  "ARGUMENTS:\n"
18014  "\n"
18015  " p_colorbar_width (PLFLT_NC_SCALAR, output) : Returned value of the\n"
18016  " labelled and decorated color bar width in adopted coordinates.\n"
18017  "\n"
18018  " p_colorbar_height (PLFLT_NC_SCALAR, output) : Returned value of the\n"
18019  " labelled and decorated color bar height in adopted coordinates.\n"
18020  "\n"
18021  " opt (PLINT, input) : opt contains bits controlling the overall\n"
18022  " color bar. The orientation (direction of the maximum value) of\n"
18023  " the color bar is specified with PL_ORIENT_RIGHT, PL_ORIENT_TOP,\n"
18024  " PL_ORIENT_LEFT, or PL_ORIENT_BOTTOM. If none of these bits are\n"
18025  " specified, the default orientation is toward the top if the\n"
18026  " colorbar is placed on the left or right of the viewport or toward\n"
18027  " the right if the colorbar is placed on the top or bottom of the\n"
18028  " viewport. If the PL_COLORBAR_BACKGROUND bit is set, plot a\n"
18029  " (semitransparent) background for the color bar. If the\n"
18030  " PL_COLORBAR_BOUNDING_BOX bit is set, plot a bounding box for the\n"
18031  " color bar. The type of color bar must be specified with one of\n"
18032  " PL_COLORBAR_IMAGE, PL_COLORBAR_SHADE, or PL_COLORBAR_GRADIENT. If\n"
18033  " more than one of those bits is set only the first one in the above\n"
18034  " list is honored. The position of the (optional) label/title can be\n"
18035  " specified with PL_LABEL_RIGHT, PL_LABEL_TOP, PL_LABEL_LEFT, or\n"
18036  " PL_LABEL_BOTTOM. If no label position bit is set then no label\n"
18037  " will be drawn. If more than one of this list of bits is specified,\n"
18038  " only the first one on the list is honored. End-caps for the color\n"
18039  " bar can added with PL_COLORBAR_CAP_LOW and PL_COLORBAR_CAP_HIGH.\n"
18040  " If a particular color bar cap option is not specified then no cap\n"
18041  " will be drawn for that end. As a special case for\n"
18042  " PL_COLORBAR_SHADE, the option PL_COLORBAR_SHADE_LABEL can be\n"
18043  " specified. If this option is provided then any tick marks and tick\n"
18044  " labels will be placed at the breaks between shaded segments. TODO:\n"
18045  " This should be expanded to support custom placement of tick marks\n"
18046  " and tick labels at custom value locations for any color bar type.\n"
18047  "\n"
18048  " position (PLINT, input) : position contains bits which control the\n"
18049  " overall position of the color bar and the definition of the\n"
18050  " adopted coordinates used for positions just like what is done for\n"
18051  " the position argument for pllegend. However, note that the\n"
18052  " defaults for the position bits (see below) are different than the\n"
18053  " pllegend case. The combination of the PL_POSITION_LEFT,\n"
18054  " PL_POSITION_RIGHT, PL_POSITION_TOP, PL_POSITION_BOTTOM,\n"
18055  " PL_POSITION_INSIDE, and PL_POSITION_OUTSIDE bits specifies one of\n"
18056  " the 16 possible standard positions (the 4 corners and centers of\n"
18057  " the 4 sides for both the inside and outside cases) of the color\n"
18058  " bar relative to the adopted coordinate system. The corner\n"
18059  " positions are specified by the appropriate combination of two of\n"
18060  " the PL_POSITION_LEFT, PL_POSITION_RIGHT, PL_POSITION_TOP, and\n"
18061  " PL_POSITION_BOTTOM bits while the sides are specified by a single\n"
18062  " value of one of those bits. The adopted coordinates are\n"
18063  " normalized viewport coordinates if the PL_POSITION_VIEWPORT bit is\n"
18064  " set or normalized subpage coordinates if the PL_POSITION_SUBPAGE\n"
18065  " bit is set. Default position bits: If none of PL_POSITION_LEFT,\n"
18066  " PL_POSITION_RIGHT, PL_POSITION_TOP, or PL_POSITION_BOTTOM are set,\n"
18067  " then use PL_POSITION_RIGHT. If neither of PL_POSITION_INSIDE or\n"
18068  " PL_POSITION_OUTSIDE is set, use PL_POSITION_OUTSIDE. If neither of\n"
18069  " PL_POSITION_VIEWPORT or PL_POSITION_SUBPAGE is set, use\n"
18070  " PL_POSITION_VIEWPORT.\n"
18071  "\n"
18072  " x (PLFLT, input) : X offset of the color bar position in adopted\n"
18073  " coordinates from the specified standard position of the color bar.\n"
18074  " For positive x, the direction of motion away from the standard\n"
18075  " position is inward/outward from the standard corner positions or\n"
18076  " standard left or right positions if the\n"
18077  " PL_POSITION_INSIDE/PL_POSITION_OUTSIDE bit is set in position.\n"
18078  " For the standard top or bottom positions, the direction of motion\n"
18079  " is toward positive X.\n"
18080  "\n"
18081  " y (PLFLT, input) : Y offset of the color bar position in adopted\n"
18082  " coordinates from the specified standard position of the color bar.\n"
18083  " For positive y, the direction of motion away from the standard\n"
18084  " position is inward/outward from the standard corner positions or\n"
18085  " standard top or bottom positions if the\n"
18086  " PL_POSITION_INSIDE/PL_POSITION_OUTSIDE bit is set in position.\n"
18087  " For the standard left or right positions, the direction of motion\n"
18088  " is toward positive Y.\n"
18089  "\n"
18090  " x_length (PLFLT, input) : Length of the body of the color bar in\n"
18091  " the X direction in adopted coordinates.\n"
18092  "\n"
18093  " y_length (PLFLT, input) : Length of the body of the color bar in\n"
18094  " the Y direction in adopted coordinates.\n"
18095  "\n"
18096  " bg_color (PLINT, input) : The cmap0 color of the background for the\n"
18097  " color bar (PL_COLORBAR_BACKGROUND).\n"
18098  "\n"
18099  " bb_color (PLINT, input) : The cmap0 color of the bounding-box line\n"
18100  " for the color bar (PL_COLORBAR_BOUNDING_BOX).\n"
18101  "\n"
18102  " bb_style (PLINT, input) : The pllsty style number for the\n"
18103  " bounding-box line for the color bar (PL_COLORBAR_BACKGROUND).\n"
18104  "\n"
18105  " low_cap_color (PLFLT, input) : The cmap1 color of the low-end color\n"
18106  " bar cap, if it is drawn (PL_COLORBAR_CAP_LOW).\n"
18107  "\n"
18108  " high_cap_color (PLFLT, input) : The cmap1 color of the high-end\n"
18109  " color bar cap, if it is drawn (PL_COLORBAR_CAP_HIGH).\n"
18110  "\n"
18111  " cont_color (PLINT, input) : The cmap0 contour color for\n"
18112  " PL_COLORBAR_SHADE plots. This is passed directly to plshades, so\n"
18113  " it will be interpreted according to the design of plshades.\n"
18114  "\n"
18115  " cont_width (PLFLT, input) : Contour width for PL_COLORBAR_SHADE\n"
18116  " plots. This is passed directly to plshades, so it will be\n"
18117  " interpreted according to the design of plshades.\n"
18118  "\n"
18119  " n_labels (PLINT, input) : Number of labels to place around the\n"
18120  " color bar.\n"
18121  "\n"
18122  " label_opts (PLINT_VECTOR, input) : A vector of options for each of\n"
18123  " n_labels labels.\n"
18124  "\n"
18125  " labels (PLCHAR_MATRIX, input) : A vector of\n"
18126  " n_labels UTF-8 character strings containing the labels for the color\n"
18127  " bar. Ignored if no label position is specified with one of the\n"
18128  " PL_COLORBAR_LABEL_RIGHT, PL_COLORBAR_LABEL_TOP,\n"
18129  " PL_COLORBAR_LABEL_LEFT, or PL_COLORBAR_LABEL_BOTTOM bits in the\n"
18130  " corresponding label_opts field.\n"
18131  "\n"
18132  " n_axes (PLINT, input) : Number of axis definitions provided. This\n"
18133  " value must be greater than 0. It is typically 1 (numerical axis\n"
18134  " labels are provided for one of the long edges of the color bar),\n"
18135  " but it can be larger if multiple numerical axis labels for the\n"
18136  " long edges of the color bar are desired.\n"
18137  "\n"
18138  " axis_opts (PLCHAR_MATRIX, input) : A vector of\n"
18139  " n_axes ascii character strings containing options (interpreted as for\n"
18140  " plbox) for the color bar's axis definitions.\n"
18141  "\n"
18142  " ticks (PLFLT_VECTOR, input) : A vector of n_axes values of the\n"
18143  " spacing of the major tick marks (interpreted as for plbox) for the\n"
18144  " color bar's axis definitions.\n"
18145  "\n"
18146  " sub_ticks (PLINT_VECTOR, input) : A vector of n_axes values of the\n"
18147  " number of subticks (interpreted as for plbox) for the color bar's\n"
18148  " axis definitions.\n"
18149  "\n"
18150  " n_values (PLINT_VECTOR, input) : A vector containing the number of\n"
18151  " elements in each of the n_axes rows of the values matrix.\n"
18152  "\n"
18153  " values (PLFLT_MATRIX, input) : A matrix containing the numeric\n"
18154  " values for the data range represented by the color bar. For a row\n"
18155  " index of i_axis (where 0 < i_axis < n_axes), the number of\n"
18156  " elements in the row is specified by n_values[i_axis]. For\n"
18157  " PL_COLORBAR_IMAGE and PL_COLORBAR_GRADIENT the number of elements\n"
18158  " is 2, and the corresponding row elements of the values matrix are\n"
18159  " the minimum and maximum value represented by the colorbar. For\n"
18160  " PL_COLORBAR_SHADE, the number and values of the elements of a row\n"
18161  " of the values matrix is interpreted the same as the nlevel and\n"
18162  " clevel arguments of plshades.\n"
18163  "\n"
18164  ""},
18165  { (char *)"pllightsource", _wrap_pllightsource, METH_VARARGS, (char *)"\n"
18166  "Sets the 3D position of the light source\n"
18167  "\n"
18168  "DESCRIPTION:\n"
18169  "\n"
18170  " Sets the 3D position of the light source for use with plsurf3d and\n"
18171  " plsurf3dl\n"
18172  "\n"
18173  " Redacted form: pllightsource(x, y, z)\n"
18174  "\n"
18175  " This function is used in example 8.\n"
18176  "\n"
18177  "\n"
18178  "\n"
18179  "SYNOPSIS:\n"
18180  "\n"
18181  "pllightsource(x, y, z)\n"
18182  "\n"
18183  "ARGUMENTS:\n"
18184  "\n"
18185  " x (PLFLT, input) : X-coordinate of the light source.\n"
18186  "\n"
18187  " y (PLFLT, input) : Y-coordinate of the light source.\n"
18188  "\n"
18189  " z (PLFLT, input) : Z-coordinate of the light source.\n"
18190  "\n"
18191  ""},
18192  { (char *)"plline", _wrap_plline, METH_VARARGS, (char *)"\n"
18193  "Draw a line\n"
18194  "\n"
18195  "DESCRIPTION:\n"
18196  "\n"
18197  " Draws line defined by n points in x and y.\n"
18198  "\n"
18199  " Redacted form: plline(x, y)\n"
18200  "\n"
18201  " This function is used in examples 1, 3, 4, 9, 12-14, 16, 18, 20, 22,\n"
18202  " 25-27, and 29.\n"
18203  "\n"
18204  "\n"
18205  "\n"
18206  "SYNOPSIS:\n"
18207  "\n"
18208  "plline(n, x, y)\n"
18209  "\n"
18210  "ARGUMENTS:\n"
18211  "\n"
18212  " n (PLINT, input) : Number of points defining line.\n"
18213  "\n"
18214  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
18215  " points.\n"
18216  "\n"
18217  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
18218  " points.\n"
18219  "\n"
18220  ""},
18221  { (char *)"plline3", _wrap_plline3, METH_VARARGS, (char *)"\n"
18222  "Draw a line in 3 space\n"
18223  "\n"
18224  "DESCRIPTION:\n"
18225  "\n"
18226  " Draws line in 3 space defined by n points in x, y, and z. You must\n"
18227  " first set up the viewport, the 2d viewing window (in world\n"
18228  " coordinates), and the 3d normalized coordinate box. See x18c.c for\n"
18229  " more info.\n"
18230  "\n"
18231  " Redacted form: plline3(x, y, z)\n"
18232  "\n"
18233  " This function is used in example 18.\n"
18234  "\n"
18235  "\n"
18236  "\n"
18237  "SYNOPSIS:\n"
18238  "\n"
18239  "plline3(n, x, y, z)\n"
18240  "\n"
18241  "ARGUMENTS:\n"
18242  "\n"
18243  " n (PLINT, input) : Number of points defining line.\n"
18244  "\n"
18245  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
18246  " points.\n"
18247  "\n"
18248  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
18249  " points.\n"
18250  "\n"
18251  " z (PLFLT_VECTOR, input) : A vector containing the z coordinates of\n"
18252  " points.\n"
18253  "\n"
18254  ""},
18255  { (char *)"pllsty", _wrap_pllsty, METH_VARARGS, (char *)"\n"
18256  "Select line style\n"
18257  "\n"
18258  "DESCRIPTION:\n"
18259  "\n"
18260  " This sets the line style according to one of eight predefined patterns\n"
18261  " (also see plstyl).\n"
18262  "\n"
18263  " Redacted form: pllsty(lin)\n"
18264  "\n"
18265  " This function is used in examples 9, 12, 22, and 25.\n"
18266  "\n"
18267  "\n"
18268  "\n"
18269  "SYNOPSIS:\n"
18270  "\n"
18271  "pllsty(lin)\n"
18272  "\n"
18273  "ARGUMENTS:\n"
18274  "\n"
18275  " lin (PLINT, input) : Integer value between 1 and 8. Line style 1 is\n"
18276  " a continuous line, line style 2 is a line with short dashes and\n"
18277  " gaps, line style 3 is a line with long dashes and gaps, line style\n"
18278  " 4 has long dashes and short gaps and so on.\n"
18279  "\n"
18280  ""},
18281  { (char *)"plmesh", _wrap_plmesh, METH_VARARGS, (char *)"\n"
18282  "Plot surface mesh\n"
18283  "\n"
18284  "DESCRIPTION:\n"
18285  "\n"
18286  " Plots a surface mesh within the environment set up by plw3d. The\n"
18287  " surface is defined by the matrix z[\n"
18288  " nx][\n"
18289  " ny] , the point z[i][j] being the value of the function at (\n"
18290  " x[i],\n"
18291  " y[j]). Note that the points in vectors x and y do not need to be\n"
18292  " equally spaced, but must be stored in ascending order. The parameter\n"
18293  " opt controls the way in which the surface is displayed. For further\n"
18294  " details see the PLplot documentation.\n"
18295  "\n"
18296  " Redacted form: plmesh(x, y, z, opt)\n"
18297  "\n"
18298  " This function is used in example 11.\n"
18299  "\n"
18300  "\n"
18301  "\n"
18302  "SYNOPSIS:\n"
18303  "\n"
18304  "plmesh(x, y, z, nx, ny, opt)\n"
18305  "\n"
18306  "ARGUMENTS:\n"
18307  "\n"
18308  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates at\n"
18309  " which the function is evaluated.\n"
18310  "\n"
18311  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates at\n"
18312  " which the function is evaluated.\n"
18313  "\n"
18314  " z (PLFLT_MATRIX, input) : A matrix containing function values to\n"
18315  " plot. Should have dimensions of\n"
18316  " nx by\n"
18317  " ny.\n"
18318  "\n"
18319  " nx (PLINT, input) : Number of x values at which function has been\n"
18320  " evaluated.\n"
18321  "\n"
18322  " ny (PLINT, input) : Number of y values at which function has been\n"
18323  " evaluated.\n"
18324  "\n"
18325  " opt (PLINT, input) : Determines the way in which the surface is\n"
18326  " represented: opt=DRAW_LINEX : Lines are drawn showing z as a\n"
18327  " function of x for each value of y[j] .\n"
18328  " opt=DRAW_LINEY : Lines are drawn showing z as a function of y\n"
18329  " for each value of x[i] .\n"
18330  " opt=DRAW_LINEXY : Network of lines is drawn connecting points\n"
18331  " at which function is defined.\n"
18332  "\n"
18333  ""},
18334  { (char *)"plmeshc", _wrap_plmeshc, METH_VARARGS, (char *)"\n"
18335  "Magnitude colored plot surface mesh with contour\n"
18336  "\n"
18337  "DESCRIPTION:\n"
18338  "\n"
18339  " A more powerful form of plmesh: the surface mesh can be colored\n"
18340  " accordingly to the current z value being plotted, a contour plot can\n"
18341  " be drawn at the base XY plane, and a curtain can be drawn between the\n"
18342  " plotted function border and the base XY plane.\n"
18343  "\n"
18344  " Redacted form: plmeshc(x, y, z, opt, clevel)\n"
18345  "\n"
18346  " This function is used in example 11.\n"
18347  "\n"
18348  "\n"
18349  "\n"
18350  "SYNOPSIS:\n"
18351  "\n"
18352  "plmeshc(x, y, z, nx, ny, opt, clevel, nlevel)\n"
18353  "\n"
18354  "ARGUMENTS:\n"
18355  "\n"
18356  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates at\n"
18357  " which the function is evaluated.\n"
18358  "\n"
18359  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates at\n"
18360  " which the function is evaluated.\n"
18361  "\n"
18362  " z (PLFLT_MATRIX, input) : A matrix containing function values to\n"
18363  " plot. Should have dimensions of\n"
18364  " nx by\n"
18365  " ny.\n"
18366  "\n"
18367  " nx (PLINT, input) : Number of x values at which function is\n"
18368  " evaluated.\n"
18369  "\n"
18370  " ny (PLINT, input) : Number of y values at which function is\n"
18371  " evaluated.\n"
18372  "\n"
18373  " opt (PLINT, input) : Determines the way in which the surface is\n"
18374  " represented. To specify more than one option just add the options,\n"
18375  " e.g. DRAW_LINEXY + MAG_COLOR opt=DRAW_LINEX : Lines are drawn\n"
18376  " showing z as a function of x for each value of y[j] .\n"
18377  " opt=DRAW_LINEY : Lines are drawn showing z as a function of y\n"
18378  " for each value of x[i] .\n"
18379  " opt=DRAW_LINEXY : Network of lines is drawn connecting points\n"
18380  " at which function is defined.\n"
18381  " opt=MAG_COLOR : Each line in the mesh is colored according to\n"
18382  " the z value being plotted. The color is used from the current\n"
18383  " cmap1.\n"
18384  " opt=BASE_CONT : A contour plot is drawn at the base XY plane\n"
18385  " using parameters\n"
18386  " nlevel and\n"
18387  " clevel.\n"
18388  " opt=DRAW_SIDES : draws a curtain between the base XY plane and\n"
18389  " the borders of the plotted function.\n"
18390  "\n"
18391  "\n"
18392  " clevel (PLFLT_VECTOR, input) : A vector containing the contour\n"
18393  " levels.\n"
18394  "\n"
18395  " nlevel (PLINT, input) : Number of elements in the clevel vector.\n"
18396  "\n"
18397  ""},
18398  { (char *)"plmkstrm", _wrap_plmkstrm, METH_VARARGS, (char *)"\n"
18399  "Creates a new stream and makes it the default\n"
18400  "\n"
18401  "DESCRIPTION:\n"
18402  "\n"
18403  " Creates a new stream and makes it the default. Differs from using\n"
18404  " plsstrm, in that a free stream number is found, and returned.\n"
18405  " Unfortunately, I have to start at stream 1 and work upward, since\n"
18406  " stream 0 is preallocated. One of the big flaws in the PLplot API is\n"
18407  " that no initial, library-opening call is required. So stream 0 must\n"
18408  " be preallocated, and there is no simple way of determining whether it\n"
18409  " is already in use or not.\n"
18410  "\n"
18411  " Redacted form: plmkstrm(p_strm)\n"
18412  "\n"
18413  " This function is used in examples 1 and 20.\n"
18414  "\n"
18415  "\n"
18416  "\n"
18417  "SYNOPSIS:\n"
18418  "\n"
18419  "plmkstrm(p_strm)\n"
18420  "\n"
18421  "ARGUMENTS:\n"
18422  "\n"
18423  " p_strm (PLINT_NC_SCALAR, output) : Returned value of the stream\n"
18424  " number of the created stream.\n"
18425  "\n"
18426  ""},
18427  { (char *)"plmtex", _wrap_plmtex, METH_VARARGS, (char *)"\n"
18428  "Write text relative to viewport boundaries\n"
18429  "\n"
18430  "DESCRIPTION:\n"
18431  "\n"
18432  " Writes text at a specified position relative to the viewport\n"
18433  " boundaries. Text may be written inside or outside the viewport, but\n"
18434  " is clipped at the subpage boundaries. The reference point of a string\n"
18435  " lies along a line passing through the string at half the height of a\n"
18436  " capital letter. The position of the reference point along this line\n"
18437  " is determined by just, and the position of the reference point\n"
18438  " relative to the viewport is set by disp and pos.\n"
18439  "\n"
18440  " Redacted form: General: plmtex(side, disp, pos, just, text)\n"
18441  " Perl/PDL: plmtex(disp, pos, just, side, text)\n"
18442  "\n"
18443  "\n"
18444  " This function is used in examples 3, 4, 6-8, 11, 12, 14, 18, 23, and\n"
18445  " 26.\n"
18446  "\n"
18447  "\n"
18448  "\n"
18449  "SYNOPSIS:\n"
18450  "\n"
18451  "plmtex(side, disp, pos, just, text)\n"
18452  "\n"
18453  "ARGUMENTS:\n"
18454  "\n"
18455  " side (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
18456  " the side of the viewport along which the text is to be written.\n"
18457  " The string must be one of: b: Bottom of viewport, text written\n"
18458  " parallel to edge.\n"
18459  " bv: Bottom of viewport, text written at right angles to edge.\n"
18460  " l: Left of viewport, text written parallel to edge.\n"
18461  " lv: Left of viewport, text written at right angles to edge.\n"
18462  " r: Right of viewport, text written parallel to edge.\n"
18463  " rv: Right of viewport, text written at right angles to edge.\n"
18464  " t: Top of viewport, text written parallel to edge.\n"
18465  " tv: Top of viewport, text written at right angles to edge.\n"
18466  "\n"
18467  "\n"
18468  " disp (PLFLT, input) : Position of the reference point of string,\n"
18469  " measured outwards from the specified viewport edge in units of the\n"
18470  " current character height. Use negative disp to write within the\n"
18471  " viewport.\n"
18472  "\n"
18473  " pos (PLFLT, input) : Position of the reference point of string\n"
18474  " along the specified edge, expressed as a fraction of the length of\n"
18475  " the edge.\n"
18476  "\n"
18477  " just (PLFLT, input) : Specifies the position of the string relative\n"
18478  " to its reference point. If just=0. , the reference point is at\n"
18479  " the left and if just=1. , it is at the right of the string. Other\n"
18480  " values of just give intermediate justifications.\n"
18481  "\n"
18482  " text (PLCHAR_VECTOR, input) : A UTF-8 character string to be\n"
18483  " written out.\n"
18484  "\n"
18485  ""},
18486  { (char *)"plmtex3", _wrap_plmtex3, METH_VARARGS, (char *)"\n"
18487  "Write text relative to viewport boundaries in 3D plots\n"
18488  "\n"
18489  "DESCRIPTION:\n"
18490  "\n"
18491  " Writes text at a specified position relative to the viewport\n"
18492  " boundaries. Text may be written inside or outside the viewport, but\n"
18493  " is clipped at the subpage boundaries. The reference point of a string\n"
18494  " lies along a line passing through the string at half the height of a\n"
18495  " capital letter. The position of the reference point along this line\n"
18496  " is determined by just, and the position of the reference point\n"
18497  " relative to the viewport is set by disp and pos.\n"
18498  "\n"
18499  " Redacted form: plmtex3(side, disp, pos, just, text)\n"
18500  "\n"
18501  " This function is used in example 28.\n"
18502  "\n"
18503  "\n"
18504  "\n"
18505  "SYNOPSIS:\n"
18506  "\n"
18507  "plmtex3(side, disp, pos, just, text)\n"
18508  "\n"
18509  "ARGUMENTS:\n"
18510  "\n"
18511  " side (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
18512  " the side of the viewport along which the text is to be written.\n"
18513  " The string should contain one or more of the following characters:\n"
18514  " [xyz][ps][v]. Only one label is drawn at a time, i.e. xyp will\n"
18515  " only label the X axis, not both the X and Y axes. x: Label the X\n"
18516  " axis.\n"
18517  " y: Label the Y axis.\n"
18518  " z: Label the Z axis.\n"
18519  " p: Label the primary axis. For Z this is the leftmost Z axis.\n"
18520  " For X it is the axis that starts at y-min. For Y it is the\n"
18521  " axis that starts at x-min.\n"
18522  " s: Label the secondary axis.\n"
18523  " v: Draw the text perpendicular to the axis.\n"
18524  "\n"
18525  "\n"
18526  " disp (PLFLT, input) : Position of the reference point of string,\n"
18527  " measured outwards from the specified viewport edge in units of the\n"
18528  " current character height. Use negative disp to write within the\n"
18529  " viewport.\n"
18530  "\n"
18531  " pos (PLFLT, input) : Position of the reference point of string\n"
18532  " along the specified edge, expressed as a fraction of the length of\n"
18533  " the edge.\n"
18534  "\n"
18535  " just (PLFLT, input) : Specifies the position of the string relative\n"
18536  " to its reference point. If just=0. , the reference point is at\n"
18537  " the left and if just=1. , it is at the right of the string. Other\n"
18538  " values of just give intermediate justifications.\n"
18539  "\n"
18540  " text (PLCHAR_VECTOR, input) : A UTF-8 character string to be\n"
18541  " written out.\n"
18542  "\n"
18543  ""},
18544  { (char *)"plot3d", _wrap_plot3d, METH_VARARGS, (char *)"\n"
18545  "Plot 3-d surface plot\n"
18546  "\n"
18547  "DESCRIPTION:\n"
18548  "\n"
18549  " Plots a three-dimensional surface plot within the environment set up\n"
18550  " by plw3d. The surface is defined by the matrix z[\n"
18551  " nx][\n"
18552  " ny] , the point z[i][j] being the value of the function at (\n"
18553  " x[i],\n"
18554  " y[j]). Note that the points in vectors x and y do not need to be\n"
18555  " equally spaced, but must be stored in ascending order. The parameter\n"
18556  " opt controls the way in which the surface is displayed. For further\n"
18557  " details see the PLplot documentation. The only difference between\n"
18558  " plmesh and plot3d is that plmesh draws the bottom side of the surface,\n"
18559  " while plot3d only draws the surface as viewed from the top.\n"
18560  "\n"
18561  " Redacted form: plot3d(x, y, z, opt, side)\n"
18562  "\n"
18563  " This function is used in examples 11 and 21.\n"
18564  "\n"
18565  "\n"
18566  "\n"
18567  "SYNOPSIS:\n"
18568  "\n"
18569  "plot3d(x, y, z, nx, ny, opt, side)\n"
18570  "\n"
18571  "ARGUMENTS:\n"
18572  "\n"
18573  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates at\n"
18574  " which the function is evaluated.\n"
18575  "\n"
18576  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates at\n"
18577  " which the function is evaluated.\n"
18578  "\n"
18579  " z (PLFLT_MATRIX, input) : A matrix containing function values to\n"
18580  " plot. Should have dimensions of\n"
18581  " nx by\n"
18582  " ny.\n"
18583  "\n"
18584  " nx (PLINT, input) : Number of x values at which function is\n"
18585  " evaluated.\n"
18586  "\n"
18587  " ny (PLINT, input) : Number of y values at which function is\n"
18588  " evaluated.\n"
18589  "\n"
18590  " opt (PLINT, input) : Determines the way in which the surface is\n"
18591  " represented: opt=DRAW_LINEX : Lines are drawn showing z as a\n"
18592  " function of x for each value of y[j] .\n"
18593  " opt=DRAW_LINEY : Lines are drawn showing z as a function of y\n"
18594  " for each value of x[i] .\n"
18595  " opt=DRAW_LINEXY : Network of lines is drawn connecting points\n"
18596  " at which function is defined.\n"
18597  "\n"
18598  "\n"
18599  " side (PLBOOL, input) : Flag to indicate whether or not ``sides''\n"
18600  " should be draw on the figure. If side is true sides are drawn,\n"
18601  " otherwise no sides are drawn.\n"
18602  "\n"
18603  ""},
18604  { (char *)"plot3dc", _wrap_plot3dc, METH_VARARGS, (char *)"\n"
18605  "Magnitude colored plot surface with contour\n"
18606  "\n"
18607  "DESCRIPTION:\n"
18608  "\n"
18609  " Aside from dropping the\n"
18610  " side functionality this is a more powerful form of plot3d: the surface\n"
18611  " mesh can be colored accordingly to the current z value being plotted,\n"
18612  " a contour plot can be drawn at the base XY plane, and a curtain can be\n"
18613  " drawn between the plotted function border and the base XY plane. The\n"
18614  " arguments are identical to those of plmeshc. The only difference\n"
18615  " between plmeshc and plot3dc is that plmeshc draws the bottom side of\n"
18616  " the surface, while plot3dc only draws the surface as viewed from the\n"
18617  " top.\n"
18618  "\n"
18619  " Redacted form: General: plot3dc(x, y, z, opt, clevel)\n"
18620  " Perl/PDL: Not available?\n"
18621  "\n"
18622  "\n"
18623  " This function is used in example 21.\n"
18624  "\n"
18625  "\n"
18626  "\n"
18627  "SYNOPSIS:\n"
18628  "\n"
18629  "plot3dc(x, y, z, nx, ny, opt, clevel, nlevel)\n"
18630  "\n"
18631  "ARGUMENTS:\n"
18632  "\n"
18633  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates at\n"
18634  " which the function is evaluated.\n"
18635  "\n"
18636  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates at\n"
18637  " which the function is evaluated.\n"
18638  "\n"
18639  " z (PLFLT_MATRIX, input) : A matrix containing function values to\n"
18640  " plot. Should have dimensions of\n"
18641  " nx by\n"
18642  " ny.\n"
18643  "\n"
18644  " nx (PLINT, input) : Number of x values at which function is\n"
18645  " evaluated.\n"
18646  "\n"
18647  " ny (PLINT, input) : Number of y values at which function is\n"
18648  " evaluated.\n"
18649  "\n"
18650  " opt (PLINT, input) : Determines the way in which the surface is\n"
18651  " represented. To specify more than one option just add the options,\n"
18652  " e.g. DRAW_LINEXY + MAG_COLOR opt=DRAW_LINEX : Lines are drawn\n"
18653  " showing z as a function of x for each value of y[j] .\n"
18654  " opt=DRAW_LINEY : Lines are drawn showing z as a function of y\n"
18655  " for each value of x[i] .\n"
18656  " opt=DRAW_LINEXY : Network of lines is drawn connecting points\n"
18657  " at which function is defined.\n"
18658  " opt=MAG_COLOR : Each line in the mesh is colored according to\n"
18659  " the z value being plotted. The color is used from the current\n"
18660  " cmap1.\n"
18661  " opt=BASE_CONT : A contour plot is drawn at the base XY plane\n"
18662  " using parameters\n"
18663  " nlevel and\n"
18664  " clevel.\n"
18665  " opt=DRAW_SIDES : draws a curtain between the base XY plane and\n"
18666  " the borders of the plotted function.\n"
18667  "\n"
18668  "\n"
18669  " clevel (PLFLT_VECTOR, input) : A vector containing the contour\n"
18670  " levels.\n"
18671  "\n"
18672  " nlevel (PLINT, input) : Number of elements in the clevel vector.\n"
18673  "\n"
18674  ""},
18675  { (char *)"plot3dcl", _wrap_plot3dcl, METH_VARARGS, (char *)"\n"
18676  "Magnitude colored plot surface with contour for z[x][y] with y index limits\n"
18677  "\n"
18678  "DESCRIPTION:\n"
18679  "\n"
18680  " When the implementation is completed this variant of plot3dc (see that\n"
18681  " function's documentation for more details) should be suitable for the\n"
18682  " case where the area of the x, y coordinate grid where z is defined can\n"
18683  " be non-rectangular. The implementation is incomplete so the last 4\n"
18684  " parameters of plot3dcl; indexxmin, indexxmax, indexymin, and\n"
18685  " indexymax; are currently ignored and the functionality is otherwise\n"
18686  " identical to that of plot3dc.\n"
18687  "\n"
18688  " Redacted form: General: plot3dcl(x, y, z, opt, clevel, indexxmin,\n"
18689  " indexymin, indexymax)\n"
18690  " Perl/PDL: Not available?\n"
18691  "\n"
18692  "\n"
18693  " This function is not used in any example.\n"
18694  "\n"
18695  "\n"
18696  "\n"
18697  "SYNOPSIS:\n"
18698  "\n"
18699  "plot3dcl(x, y, z, nx, ny, opt, clevel, nlevel, indexxmin, indexxmax, indexymin, indexymax)\n"
18700  "\n"
18701  "ARGUMENTS:\n"
18702  "\n"
18703  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates at\n"
18704  " which the function is evaluated.\n"
18705  "\n"
18706  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates at\n"
18707  " which the function is evaluated.\n"
18708  "\n"
18709  " z (PLFLT_MATRIX, input) : A matrix containing function values to\n"
18710  " plot. Should have dimensions of\n"
18711  " nx by\n"
18712  " ny.\n"
18713  "\n"
18714  " nx (PLINT, input) : Number of x values at which the function is\n"
18715  " evaluated.\n"
18716  "\n"
18717  " ny (PLINT, input) : Number of y values at which the function is\n"
18718  " evaluated.\n"
18719  "\n"
18720  " opt (PLINT, input) : Determines the way in which the surface is\n"
18721  " represented. To specify more than one option just add the options,\n"
18722  " e.g. DRAW_LINEXY + MAG_COLOR opt=DRAW_LINEX : Lines are drawn\n"
18723  " showing z as a function of x for each value of y[j] .\n"
18724  " opt=DRAW_LINEY : Lines are drawn showing z as a function of y\n"
18725  " for each value of x[i] .\n"
18726  " opt=DRAW_LINEXY : Network of lines is drawn connecting points\n"
18727  " at which function is defined.\n"
18728  " opt=MAG_COLOR : Each line in the mesh is colored according to\n"
18729  " the z value being plotted. The color is used from the current\n"
18730  " cmap1.\n"
18731  " opt=BASE_CONT : A contour plot is drawn at the base XY plane\n"
18732  " using parameters\n"
18733  " nlevel and\n"
18734  " clevel.\n"
18735  " opt=DRAW_SIDES : draws a curtain between the base XY plane and\n"
18736  " the borders of the plotted function.\n"
18737  "\n"
18738  "\n"
18739  " clevel (PLFLT_VECTOR, input) : A vector containing the contour\n"
18740  " levels.\n"
18741  "\n"
18742  " nlevel (PLINT, input) : Number of elements in the clevel vector.\n"
18743  "\n"
18744  " indexxmin (PLINT, input) : The index value (which must be ≥ 0) that\n"
18745  " corresponds to the first x index where z is defined.\n"
18746  "\n"
18747  " indexxmax (PLINT, input) : The index value (which must be ≤ nx)\n"
18748  " which corresponds (by convention) to one more than the last x\n"
18749  " index value where z is defined.\n"
18750  "\n"
18751  " indexymin (PLINT_VECTOR, input) : A vector containing y index\n"
18752  " values which all must be ≥ 0. These values are the first y index\n"
18753  " where z is defined for a particular x index in the range from\n"
18754  " indexxmin to indexxmax - 1. The dimension of indexymin is\n"
18755  " indexxmax.\n"
18756  "\n"
18757  " indexymax (PLINT_VECTOR, input) : A vector containing y index\n"
18758  " values which all must be ≤ ny. These values correspond (by\n"
18759  " convention) to one more than the last y index where z is defined\n"
18760  " for a particular x index in the range from indexxmin to indexxmax\n"
18761  " - 1. The dimension of indexymax is indexxmax.\n"
18762  "\n"
18763  ""},
18764  { (char *)"plsurf3d", _wrap_plsurf3d, METH_VARARGS, (char *)"\n"
18765  "Plot shaded 3-d surface plot\n"
18766  "\n"
18767  "DESCRIPTION:\n"
18768  "\n"
18769  " Plots a three-dimensional shaded surface plot within the environment\n"
18770  " set up by plw3d. The surface is defined by the two-dimensional matrix\n"
18771  " z[\n"
18772  " nx][\n"
18773  " ny], the point z[i][j] being the value of the function at (\n"
18774  " x[i],\n"
18775  " y[j]). Note that the points in vectors x and y do not need to be\n"
18776  " equally spaced, but must be stored in ascending order. For further\n"
18777  " details see the PLplot documentation.\n"
18778  "\n"
18779  " Redacted form: plsurf3d(x, y, z, opt, clevel)\n"
18780  "\n"
18781  " This function is not used in any examples.\n"
18782  "\n"
18783  "\n"
18784  "\n"
18785  "SYNOPSIS:\n"
18786  "\n"
18787  "plsurf3d(x, y, z, nx, ny, opt, clevel, nlevel)\n"
18788  "\n"
18789  "ARGUMENTS:\n"
18790  "\n"
18791  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates at\n"
18792  " which the function is evaluated.\n"
18793  "\n"
18794  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates at\n"
18795  " which the function is evaluated.\n"
18796  "\n"
18797  " z (PLFLT_MATRIX, input) : A matrix containing function values to\n"
18798  " plot. Should have dimensions of\n"
18799  " nx by\n"
18800  " ny.\n"
18801  "\n"
18802  " nx (PLINT, input) : Number of x values at which function is\n"
18803  " evaluated.\n"
18804  "\n"
18805  " ny (PLINT, input) : Number of y values at which function is\n"
18806  " evaluated.\n"
18807  "\n"
18808  " opt (PLINT, input) : Determines the way in which the surface is\n"
18809  " represented. To specify more than one option just add the options,\n"
18810  " e.g. FACETED + SURF_CONT opt=FACETED : Network of lines is drawn\n"
18811  " connecting points at which function is defined.\n"
18812  " opt=BASE_CONT : A contour plot is drawn at the base XY plane\n"
18813  " using parameters\n"
18814  " nlevel and\n"
18815  " clevel.\n"
18816  " opt=SURF_CONT : A contour plot is drawn at the surface plane\n"
18817  " using parameters\n"
18818  " nlevel and\n"
18819  " clevel.\n"
18820  " opt=DRAW_SIDES : draws a curtain between the base XY plane and\n"
18821  " the borders of the plotted function.\n"
18822  " opt=MAG_COLOR : the surface is colored according to the value\n"
18823  " of Z; if MAG_COLOR is not used, then the surface is colored\n"
18824  " according to the intensity of the reflected light in the\n"
18825  " surface from a light source whose position is set using\n"
18826  " pllightsource.\n"
18827  "\n"
18828  "\n"
18829  " clevel (PLFLT_VECTOR, input) : A vector containing the contour\n"
18830  " levels.\n"
18831  "\n"
18832  " nlevel (PLINT, input) : Number of elements in the clevel vector.\n"
18833  "\n"
18834  ""},
18835  { (char *)"plsurf3dl", _wrap_plsurf3dl, METH_VARARGS, (char *)"\n"
18836  "Plot shaded 3-d surface plot for z[x][y] with y index limits\n"
18837  "\n"
18838  "DESCRIPTION:\n"
18839  "\n"
18840  " This variant of plsurf3d (see that function's documentation for more\n"
18841  " details) should be suitable for the case where the area of the x, y\n"
18842  " coordinate grid where z is defined can be non-rectangular. The limits\n"
18843  " of that grid are provided by the parameters indexxmin, indexxmax,\n"
18844  " indexymin, and indexymax.\n"
18845  "\n"
18846  " Redacted form: plsurf3dl(x, y, z, opt, clevel, indexxmin, indexymin,\n"
18847  " indexymax)\n"
18848  "\n"
18849  " This function is used in example 8.\n"
18850  "\n"
18851  "\n"
18852  "\n"
18853  "SYNOPSIS:\n"
18854  "\n"
18855  "plsurf3dl(x, y, z, nx, ny, opt, clevel, nlevel, indexxmin, indexxmax, indexymin, indexymax)\n"
18856  "\n"
18857  "ARGUMENTS:\n"
18858  "\n"
18859  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates at\n"
18860  " which the function is evaluated.\n"
18861  "\n"
18862  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates at\n"
18863  " which the function is evaluated.\n"
18864  "\n"
18865  " z (PLFLT_MATRIX, input) : A matrix containing function values to\n"
18866  " plot. Should have dimensions of\n"
18867  " nx by\n"
18868  " ny.\n"
18869  "\n"
18870  " nx (PLINT, input) : Number of x values at which function is\n"
18871  " evaluated.\n"
18872  "\n"
18873  " ny (PLINT, input) : Number of y values at which function is\n"
18874  " evaluated.\n"
18875  "\n"
18876  " opt (PLINT, input) : Determines the way in which the surface is\n"
18877  " represented. To specify more than one option just add the options,\n"
18878  " e.g. FACETED + SURF_CONT opt=FACETED : Network of lines is drawn\n"
18879  " connecting points at which function is defined.\n"
18880  " opt=BASE_CONT : A contour plot is drawn at the base XY plane\n"
18881  " using parameters\n"
18882  " nlevel and\n"
18883  " clevel.\n"
18884  " opt=SURF_CONT : A contour plot is drawn at the surface plane\n"
18885  " using parameters\n"
18886  " nlevel and\n"
18887  " clevel.\n"
18888  " opt=DRAW_SIDES : draws a curtain between the base XY plane and\n"
18889  " the borders of the plotted function.\n"
18890  " opt=MAG_COLOR : the surface is colored according to the value\n"
18891  " of Z; if MAG_COLOR is not used, then the surface is colored\n"
18892  " according to the intensity of the reflected light in the\n"
18893  " surface from a light source whose position is set using\n"
18894  " pllightsource.\n"
18895  "\n"
18896  "\n"
18897  " clevel (PLFLT_VECTOR, input) : A vector containing the contour\n"
18898  " levels.\n"
18899  "\n"
18900  " nlevel (PLINT, input) : Number of elements in the clevel vector.\n"
18901  "\n"
18902  " indexxmin (PLINT, input) : The index value (which must be ≥ 0) that\n"
18903  " corresponds to the first x index where z is defined.\n"
18904  "\n"
18905  " indexxmax (PLINT, input) : The index value (which must be ≤ nx)\n"
18906  " which corresponds (by convention) to one more than the last x\n"
18907  " index value where z is defined.\n"
18908  "\n"
18909  " indexymin (PLINT_VECTOR, input) : A vector containing the y index\n"
18910  " values which all must be ≥ 0. These values are the first y index\n"
18911  " where z is defined for a particular x index in the range from\n"
18912  " indexxmin to indexxmax - 1. The dimension of indexymin is\n"
18913  " indexxmax.\n"
18914  "\n"
18915  " indexymax (PLINT_VECTOR, input) : A vector containing the y index\n"
18916  " values which all must be ≤ ny. These values correspond (by\n"
18917  " convention) to one more than the last y index where z is defined\n"
18918  " for a particular x index in the range from indexxmin to indexxmax\n"
18919  " - 1. The dimension of indexymax is indexxmax.\n"
18920  "\n"
18921  ""},
18922  { (char *)"plparseopts", _wrap_plparseopts, METH_VARARGS, (char *)"\n"
18923  "Parse command-line arguments\n"
18924  "\n"
18925  "DESCRIPTION:\n"
18926  "\n"
18927  " Parse command-line arguments.\n"
18928  "\n"
18929  " plparseopts removes all recognized flags (decreasing argc\n"
18930  " accordingly), so that invalid input may be readily detected. It can\n"
18931  " also be used to process user command line flags. The user can merge\n"
18932  " an option table of type PLOptionTable into the internal option table\n"
18933  " info structure using plMergeOpts. Or, the user can specify that ONLY\n"
18934  " the external table(s) be parsed by calling plClearOpts before\n"
18935  " plMergeOpts.\n"
18936  "\n"
18937  " The default action taken by plparseopts is as follows:\n"
18938  " Returns with an error if an unrecognized option or badly formed\n"
18939  " option-value pair are encountered.\n"
18940  " Returns immediately (return code 0) when the first non-option command\n"
18941  " line argument is found.\n"
18942  " Returns with the return code of the option handler, if one was called.\n"
18943  "\n"
18944  " Deletes command line arguments from argv list as they are found, and\n"
18945  " decrements argc accordingly.\n"
18946  " Does not show \"invisible\" options in usage or help messages.\n"
18947  " Assumes the program name is contained in argv[0].\n"
18948  "\n"
18949  " These behaviors may be controlled through the\n"
18950  " mode argument.\n"
18951  "\n"
18952  " Redacted form: General: plparseopts(argv, mode)\n"
18953  " Perl/PDL: Not available?\n"
18954  "\n"
18955  "\n"
18956  " This function is used in all of the examples.\n"
18957  "\n"
18958  "\n"
18959  "\n"
18960  "SYNOPSIS:\n"
18961  "\n"
18962  "PLINT plparseopts(p_argc, argv, mode)\n"
18963  "\n"
18964  "ARGUMENTS:\n"
18965  "\n"
18966  " p_argc (int *, input/output) : Number of arguments.\n"
18967  "\n"
18968  " argv (PLCHAR_NC_MATRIX, input/output) : A vector of character\n"
18969  " strings containing *p_argc command-line arguments.\n"
18970  "\n"
18971  " mode (PLINT, input) : Parsing mode with the following\n"
18972  " possibilities: PL_PARSE_FULL (1) -- Full parsing of command line\n"
18973  " and all error messages enabled, including program exit when an\n"
18974  " error occurs. Anything on the command line that isn't recognized\n"
18975  " as a valid option or option argument is flagged as an error.\n"
18976  " PL_PARSE_QUIET (2) -- Turns off all output except in the case\n"
18977  " of errors.\n"
18978  " PL_PARSE_NODELETE (4) -- Turns off deletion of processed\n"
18979  " arguments.\n"
18980  " PL_PARSE_SHOWALL (8) -- Show invisible options\n"
18981  " PL_PARSE_NOPROGRAM (32) -- Specified if argv[0] is NOT a\n"
18982  " pointer to the program name.\n"
18983  " PL_PARSE_NODASH (64) -- Set if leading dash is NOT required.\n"
18984  " PL_PARSE_SKIP (128) -- Set to quietly skip over any\n"
18985  " unrecognized arguments.\n"
18986  "\n"
18987  ""},
18988  { (char *)"plpat", _wrap_plpat, METH_VARARGS, (char *)"\n"
18989  "Set area line fill pattern\n"
18990  "\n"
18991  "DESCRIPTION:\n"
18992  "\n"
18993  " Sets the area line fill pattern to be used, e.g., for calls to plfill.\n"
18994  " The pattern consists of 1 or 2 sets of parallel lines with specified\n"
18995  " inclinations and spacings. The arguments to this routine are the\n"
18996  " number of sets to use (1 or 2) followed by two vectors (with 1 or 2\n"
18997  " elements) specifying the inclinations in tenths of a degree and the\n"
18998  " spacing in micrometers. (See also plpsty)\n"
18999  "\n"
19000  " Redacted form: General: plpat(inc, del)\n"
19001  " Perl/PDL: plpat(nlin, inc, del)\n"
19002  "\n"
19003  "\n"
19004  " This function is used in example 15.\n"
19005  "\n"
19006  "\n"
19007  "\n"
19008  "SYNOPSIS:\n"
19009  "\n"
19010  "plpat(nlin, inc, del)\n"
19011  "\n"
19012  "ARGUMENTS:\n"
19013  "\n"
19014  " nlin (PLINT, input) : Number of sets of lines making up the\n"
19015  " pattern, either 1 or 2.\n"
19016  "\n"
19017  " inc (PLINT_VECTOR, input) : A vector containing nlin values of the\n"
19018  " inclination in tenths of a degree. (Should be between -900 and\n"
19019  " 900).\n"
19020  "\n"
19021  " del (PLINT_VECTOR, input) : A vector containing nlin values of the\n"
19022  " spacing in micrometers between the lines making up the pattern.\n"
19023  "\n"
19024  ""},
19025  { (char *)"plpath", _wrap_plpath, METH_VARARGS, (char *)"\n"
19026  "Draw a line between two points, accounting for coordinate transforms\n"
19027  "\n"
19028  "DESCRIPTION:\n"
19029  "\n"
19030  " Joins the point (\n"
19031  " x1,\n"
19032  " y1) to (\n"
19033  " x2,\n"
19034  " y2) . If a global coordinate transform is defined then the line is\n"
19035  " broken in to n segments to approximate the path. If no transform is\n"
19036  " defined then this simply acts like a call to pljoin.\n"
19037  "\n"
19038  " Redacted form: plpath(n,x1,y1,x2,y2)\n"
19039  "\n"
19040  " This function is used in example 22.\n"
19041  "\n"
19042  "\n"
19043  "\n"
19044  "SYNOPSIS:\n"
19045  "\n"
19046  "plpath(n, x1, y1, x2, y2)\n"
19047  "\n"
19048  "ARGUMENTS:\n"
19049  "\n"
19050  " n (PLINT, input) : number of points to use to approximate the path.\n"
19051  "\n"
19052  " x1 (PLFLT, input) : x coordinate of first point.\n"
19053  "\n"
19054  " y1 (PLFLT, input) : y coordinate of first point.\n"
19055  "\n"
19056  " x2 (PLFLT, input) : x coordinate of second point.\n"
19057  "\n"
19058  " y2 (PLFLT, input) : y coordinate of second point.\n"
19059  "\n"
19060  ""},
19061  { (char *)"plpoin", _wrap_plpoin, METH_VARARGS, (char *)"\n"
19062  "Plot a glyph at the specified points\n"
19063  "\n"
19064  "DESCRIPTION:\n"
19065  "\n"
19066  " Plot a glyph at the specified points. (This function is largely\n"
19067  " superseded by plstring which gives access to many[!] more glyphs.)\n"
19068  " code=-1 means try to just draw a point. Right now it's just a move\n"
19069  " and a draw at the same place. Not ideal, since a sufficiently\n"
19070  " intelligent output device may optimize it away, or there may be faster\n"
19071  " ways of doing it. This is OK for now, though, and offers a 4X speedup\n"
19072  " over drawing a Hershey font \"point\" (which is actually diamond shaped\n"
19073  " and therefore takes 4 strokes to draw). If 0 < code < 32, then a\n"
19074  " useful (but small subset) of Hershey symbols is plotted. If 32 <=\n"
19075  " code <= 127 the corresponding printable ASCII character is plotted.\n"
19076  "\n"
19077  " Redacted form: plpoin(x, y, code)\n"
19078  "\n"
19079  " This function is used in examples 1, 6, 14, and 29.\n"
19080  "\n"
19081  "\n"
19082  "\n"
19083  "SYNOPSIS:\n"
19084  "\n"
19085  "plpoin(n, x, y, code)\n"
19086  "\n"
19087  "ARGUMENTS:\n"
19088  "\n"
19089  " n (PLINT, input) : Number of points in the x and y vectors.\n"
19090  "\n"
19091  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
19092  " points.\n"
19093  "\n"
19094  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
19095  " points.\n"
19096  "\n"
19097  " code (PLINT, input) : Hershey symbol code (in \"ascii-indexed\" form\n"
19098  " with -1 <= code <= 127) corresponding to a glyph to be plotted at\n"
19099  " each of the n points.\n"
19100  "\n"
19101  ""},
19102  { (char *)"plpoin3", _wrap_plpoin3, METH_VARARGS, (char *)"\n"
19103  "Plot a glyph at the specified 3D points\n"
19104  "\n"
19105  "DESCRIPTION:\n"
19106  "\n"
19107  " Plot a glyph at the specified 3D points. (This function is largely\n"
19108  " superseded by plstring3 which gives access to many[!] more glyphs.)\n"
19109  " Set up the call to this function similar to what is done for plline3.\n"
19110  " code=-1 means try to just draw a point. Right now it's just a move\n"
19111  " and a draw at the same place. Not ideal, since a sufficiently\n"
19112  " intelligent output device may optimize it away, or there may be faster\n"
19113  " ways of doing it. This is OK for now, though, and offers a 4X speedup\n"
19114  " over drawing a Hershey font \"point\" (which is actually diamond shaped\n"
19115  " and therefore takes 4 strokes to draw). If 0 < code < 32, then a\n"
19116  " useful (but small subset) of Hershey symbols is plotted. If 32 <=\n"
19117  " code <= 127 the corresponding printable ASCII character is plotted.\n"
19118  "\n"
19119  " Redacted form: plpoin3(x, y, z, code)\n"
19120  "\n"
19121  " This function is not used in any example.\n"
19122  "\n"
19123  "\n"
19124  "\n"
19125  "SYNOPSIS:\n"
19126  "\n"
19127  "plpoin3(n, x, y, z, code)\n"
19128  "\n"
19129  "ARGUMENTS:\n"
19130  "\n"
19131  " n (PLINT, input) : Number of points in the x and y vectors.\n"
19132  "\n"
19133  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
19134  " points.\n"
19135  "\n"
19136  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
19137  " points.\n"
19138  "\n"
19139  " z (PLFLT_VECTOR, input) : A vector containing the z coordinates of\n"
19140  " points.\n"
19141  "\n"
19142  " code (PLINT, input) : Hershey symbol code (in \"ascii-indexed\" form\n"
19143  " with -1 <= code <= 127) corresponding to a glyph to be plotted at\n"
19144  " each of the n points.\n"
19145  "\n"
19146  ""},
19147  { (char *)"plpoly3", _wrap_plpoly3, METH_VARARGS, (char *)"\n"
19148  "Draw a polygon in 3 space\n"
19149  "\n"
19150  "DESCRIPTION:\n"
19151  "\n"
19152  " Draws a polygon in 3 space defined by n points in x, y, and z. Setup\n"
19153  " like plline3, but differs from that function in that plpoly3 attempts\n"
19154  " to determine if the polygon is viewable depending on the order of the\n"
19155  " points within the vector and the value of ifcc. If the back of\n"
19156  " polygon is facing the viewer, then it isn't drawn. If this isn't what\n"
19157  " you want, then use plline3 instead.\n"
19158  "\n"
19159  " The points are assumed to be in a plane, and the directionality of the\n"
19160  " plane is determined from the first three points. Additional points do\n"
19161  " not have to lie on the plane defined by the first three, but if they\n"
19162  " do not, then the determination of visibility obviously can't be 100%\n"
19163  " accurate... So if you're 3 space polygons are too far from planar,\n"
19164  " consider breaking them into smaller polygons. 3 points define a plane\n"
19165  " :-).\n"
19166  "\n"
19167  " Bugs: If one of the first two segments is of zero length, or if they\n"
19168  " are co-linear, the calculation of visibility has a 50/50 chance of\n"
19169  " being correct. Avoid such situations :-). See x18c.c for an example\n"
19170  " of this problem. (Search for 20.1).\n"
19171  "\n"
19172  " Redacted form: plpoly3(x, y, z, code)\n"
19173  "\n"
19174  " This function is used in example 18.\n"
19175  "\n"
19176  "\n"
19177  "\n"
19178  "SYNOPSIS:\n"
19179  "\n"
19180  "plpoly3(n, x, y, z, draw, ifcc)\n"
19181  "\n"
19182  "ARGUMENTS:\n"
19183  "\n"
19184  " n (PLINT, input) : Number of points defining line.\n"
19185  "\n"
19186  " x (PLFLT_VECTOR, input) : A vector containing\n"
19187  " n x coordinates of points.\n"
19188  "\n"
19189  " y (PLFLT_VECTOR, input) : A vector containing\n"
19190  " n y coordinates of points.\n"
19191  "\n"
19192  " z (PLFLT_VECTOR, input) : A vector containing\n"
19193  " n z coordinates of points.\n"
19194  "\n"
19195  " draw (PLBOOL_VECTOR, input) : A vector containing\n"
19196  " n-1 Boolean values which control drawing the segments of the polygon.\n"
19197  " If draw[i] is true, then the polygon segment from index [i] to\n"
19198  " [i+1] is drawn, otherwise, not.\n"
19199  "\n"
19200  " ifcc (PLBOOL, input) : If ifcc is true the directionality of the\n"
19201  " polygon is determined by assuming the points are laid out in a\n"
19202  " counter-clockwise order. Otherwise, the directionality of the\n"
19203  " polygon is determined by assuming the points are laid out in a\n"
19204  " clockwise order.\n"
19205  "\n"
19206  ""},
19207  { (char *)"plprec", _wrap_plprec, METH_VARARGS, (char *)"\n"
19208  "Set precision in numeric labels\n"
19209  "\n"
19210  "DESCRIPTION:\n"
19211  "\n"
19212  " Sets the number of places after the decimal point in numeric labels.\n"
19213  "\n"
19214  " Redacted form: plprec(setp, prec)\n"
19215  "\n"
19216  " This function is used in example 29.\n"
19217  "\n"
19218  "\n"
19219  "\n"
19220  "SYNOPSIS:\n"
19221  "\n"
19222  "plprec(setp, prec)\n"
19223  "\n"
19224  "ARGUMENTS:\n"
19225  "\n"
19226  " setp (PLINT, input) : If setp is equal to 0 then PLplot\n"
19227  " automatically determines the number of places to use after the\n"
19228  " decimal point in numeric labels (like those used to label axes).\n"
19229  " If setp is 1 then prec sets the number of places.\n"
19230  "\n"
19231  " prec (PLINT, input) : The number of characters to draw after the\n"
19232  " decimal point in numeric labels.\n"
19233  "\n"
19234  ""},
19235  { (char *)"plpsty", _wrap_plpsty, METH_VARARGS, (char *)"\n"
19236  "Select area fill pattern\n"
19237  "\n"
19238  "DESCRIPTION:\n"
19239  "\n"
19240  " If\n"
19241  " patt is zero or less use either a hardware solid fill if the drivers\n"
19242  " have that capability (virtually all do) or fall back to a software\n"
19243  " emulation of a solid fill using the eighth area line fill pattern. If\n"
19244  " 0 <\n"
19245  " patt <= 8, then select one of eight predefined area line fill patterns\n"
19246  " to use (see plpat if you desire other patterns).\n"
19247  "\n"
19248  " Redacted form: plpsty(patt)\n"
19249  "\n"
19250  " This function is used in examples 12, 13, 15, 16, and 25.\n"
19251  "\n"
19252  "\n"
19253  "\n"
19254  "SYNOPSIS:\n"
19255  "\n"
19256  "plpsty(patt)\n"
19257  "\n"
19258  "ARGUMENTS:\n"
19259  "\n"
19260  " patt (PLINT, input) : The desired pattern index. If\n"
19261  " patt is zero or less, then a solid fill is (normally, see qualifiers\n"
19262  " above) used. For\n"
19263  " patt in the range from 1 to 8 and assuming the driver has not supplied\n"
19264  " line fill capability itself (most deliberately do not so that line\n"
19265  " fill patterns look identical for those drivers), the patterns\n"
19266  " consist of (1) horizontal lines, (2) vertical lines, (3) lines at\n"
19267  " 45 degrees, (4) lines at -45 degrees, (5) lines at 30 degrees, (6)\n"
19268  " lines at -30 degrees, (7) both vertical and horizontal lines, and\n"
19269  " (8) lines at both 45 degrees and -45 degrees.\n"
19270  "\n"
19271  ""},
19272  { (char *)"plptex", _wrap_plptex, METH_VARARGS, (char *)"\n"
19273  "Write text inside the viewport\n"
19274  "\n"
19275  "DESCRIPTION:\n"
19276  "\n"
19277  " Writes text at a specified position and inclination within the\n"
19278  " viewport. Text is clipped at the viewport boundaries. The reference\n"
19279  " point of a string lies along a line passing through the string at half\n"
19280  " the height of a capital letter. The position of the reference point\n"
19281  " along this line is determined by just, the reference point is placed\n"
19282  " at world coordinates (\n"
19283  " x,\n"
19284  " y) within the viewport. The inclination of the string is specified\n"
19285  " in terms of differences of world coordinates making it easy to write\n"
19286  " text parallel to a line in a graph.\n"
19287  "\n"
19288  " Redacted form: plptex(x, y, dx, dy, just, text)\n"
19289  "\n"
19290  " This function is used in example 2-4,10,12-14,20,23,24,26.\n"
19291  "\n"
19292  "\n"
19293  "\n"
19294  "SYNOPSIS:\n"
19295  "\n"
19296  "plptex(x, y, dx, dy, just, text)\n"
19297  "\n"
19298  "ARGUMENTS:\n"
19299  "\n"
19300  " x (PLFLT, input) : x coordinate of reference point of string.\n"
19301  "\n"
19302  " y (PLFLT, input) : y coordinate of reference point of string.\n"
19303  "\n"
19304  " dx (PLFLT, input) : Together with dy, this specifies the\n"
19305  " inclination of the string. The baseline of the string is parallel\n"
19306  " to a line joining (\n"
19307  " x,\n"
19308  " y) to (\n"
19309  " x+\n"
19310  " dx,\n"
19311  " y+\n"
19312  " dy) .\n"
19313  "\n"
19314  " dy (PLFLT, input) : Together with dx, this specifies the\n"
19315  " inclination of the string.\n"
19316  "\n"
19317  " just (PLFLT, input) : Specifies the position of the string relative\n"
19318  " to its reference point. If just=0. , the reference point is at\n"
19319  " the left and if just=1. , it is at the right of the string. Other\n"
19320  " values of just give intermediate justifications.\n"
19321  "\n"
19322  " text (PLCHAR_VECTOR, input) : A UTF-8 character string to be\n"
19323  " written out.\n"
19324  "\n"
19325  ""},
19326  { (char *)"plptex3", _wrap_plptex3, METH_VARARGS, (char *)"\n"
19327  "Write text inside the viewport of a 3D plot\n"
19328  "\n"
19329  "DESCRIPTION:\n"
19330  "\n"
19331  " Writes text at a specified position and inclination and with a\n"
19332  " specified shear within the viewport. Text is clipped at the viewport\n"
19333  " boundaries. The reference point of a string lies along a line passing\n"
19334  " through the string at half the height of a capital letter. The\n"
19335  " position of the reference point along this line is determined by just,\n"
19336  " and the reference point is placed at world coordinates (\n"
19337  " wx,\n"
19338  " wy,\n"
19339  " wz) within the viewport. The inclination and shear of the string is\n"
19340  " specified in terms of differences of world coordinates making it easy\n"
19341  " to write text parallel to a line in a graph.\n"
19342  "\n"
19343  " Redacted form: plptex3(x, y, z, dx, dy, dz, sx, sy, sz, just, text)\n"
19344  "\n"
19345  " This function is used in example 28.\n"
19346  "\n"
19347  "\n"
19348  "\n"
19349  "SYNOPSIS:\n"
19350  "\n"
19351  "plptex3(wx, wy, wz, dx, dy, dz, sx, sy, sz, just, text)\n"
19352  "\n"
19353  "ARGUMENTS:\n"
19354  "\n"
19355  " wx (PLFLT, input) : x world coordinate of reference point of\n"
19356  " string.\n"
19357  "\n"
19358  " wy (PLFLT, input) : y world coordinate of reference point of\n"
19359  " string.\n"
19360  "\n"
19361  " wz (PLFLT, input) : z world coordinate of reference point of\n"
19362  " string.\n"
19363  "\n"
19364  " dx (PLFLT, input) : Together with dy and\n"
19365  " dz , this specifies the inclination of the string. The baseline of\n"
19366  " the string is parallel to a line joining (\n"
19367  " x,\n"
19368  " y,\n"
19369  " z) to (\n"
19370  " x+\n"
19371  " dx,\n"
19372  " y+\n"
19373  " dy,\n"
19374  " z+\n"
19375  " dz) .\n"
19376  "\n"
19377  " dy (PLFLT, input) : Together with dx and\n"
19378  " dz, this specifies the inclination of the string.\n"
19379  "\n"
19380  " dz (PLFLT, input) : Together with dx and\n"
19381  " dy, this specifies the inclination of the string.\n"
19382  "\n"
19383  " sx (PLFLT, input) : Together with sy and\n"
19384  " sz , this specifies the shear of the string. The string is sheared so\n"
19385  " that the characters are vertically parallel to a line joining (\n"
19386  " x,\n"
19387  " y,\n"
19388  " z) to (\n"
19389  " x+\n"
19390  " sx,\n"
19391  " y+\n"
19392  " sy,\n"
19393  " z+\n"
19394  " sz) . If sx =\n"
19395  " sy =\n"
19396  " sz = 0.) then the text is not sheared.\n"
19397  "\n"
19398  " sy (PLFLT, input) : Together with sx and\n"
19399  " sz, this specifies shear of the string.\n"
19400  "\n"
19401  " sz (PLFLT, input) : Together with sx and\n"
19402  " sy, this specifies shear of the string.\n"
19403  "\n"
19404  " just (PLFLT, input) : Specifies the position of the string relative\n"
19405  " to its reference point. If just=0. , the reference point is at\n"
19406  " the left and if just=1. , it is at the right of the string. Other\n"
19407  " values of just give intermediate justifications.\n"
19408  "\n"
19409  " text (PLCHAR_VECTOR, input) : A UTF-8 character string to be\n"
19410  " written out.\n"
19411  "\n"
19412  ""},
19413  { (char *)"plrandd", _wrap_plrandd, METH_VARARGS, (char *)"\n"
19414  "Random number generator returning a real random number in the range [0,1]\n"
19415  "\n"
19416  "DESCRIPTION:\n"
19417  "\n"
19418  " Random number generator returning a real random number in the range\n"
19419  " [0,1]. The generator is based on the Mersenne Twister. Most languages\n"
19420  " / compilers provide their own random number generator, and so this is\n"
19421  " provided purely for convenience and to give a consistent random number\n"
19422  " generator across all languages supported by PLplot. This is\n"
19423  " particularly useful for comparing results from the test suite of\n"
19424  " examples.\n"
19425  "\n"
19426  " Redacted form: plrandd()\n"
19427  "\n"
19428  " This function is used in examples 17 and 21.\n"
19429  "\n"
19430  "\n"
19431  "\n"
19432  "SYNOPSIS:\n"
19433  "\n"
19434  "plrandd()\n"
19435  "\n"
19436  ""},
19437  { (char *)"plreplot", _wrap_plreplot, METH_VARARGS, (char *)"\n"
19438  "Replays contents of plot buffer to current device/file\n"
19439  "\n"
19440  "DESCRIPTION:\n"
19441  "\n"
19442  " Replays contents of plot buffer to current device/file.\n"
19443  "\n"
19444  " Redacted form: plreplot()\n"
19445  "\n"
19446  " This function is used in example 1,20.\n"
19447  "\n"
19448  "\n"
19449  "\n"
19450  "SYNOPSIS:\n"
19451  "\n"
19452  "plreplot()\n"
19453  "\n"
19454  ""},
19455  { (char *)"plrgbhls", _wrap_plrgbhls, METH_VARARGS, (char *)"\n"
19456  "Convert RGB color to HLS\n"
19457  "\n"
19458  "DESCRIPTION:\n"
19459  "\n"
19460  " Convert RGB color coordinates to HLS\n"
19461  "\n"
19462  " Redacted form: General: plrgbhls(r, g, b, p_h, p_l, p_s)\n"
19463  " Perl/PDL: Not available? Implemented as plrgb/plrgb1?\n"
19464  "\n"
19465  "\n"
19466  " This function is used in example 2.\n"
19467  "\n"
19468  "\n"
19469  "\n"
19470  "SYNOPSIS:\n"
19471  "\n"
19472  "plrgbhls(r, g, b, p_h, p_l, p_s)\n"
19473  "\n"
19474  "ARGUMENTS:\n"
19475  "\n"
19476  " r (PLFLT, input) : Red intensity (0.0-1.0) of the color.\n"
19477  "\n"
19478  " g (PLFLT, input) : Green intensity (0.0-1.0) of the color.\n"
19479  "\n"
19480  " b (PLFLT, input) : Blue intensity (0.0-1.0) of the color.\n"
19481  "\n"
19482  " p_h (PLFLT_NC_SCALAR, output) : Returned value of the hue in\n"
19483  " degrees (0.0-360.0) on the color cylinder.\n"
19484  "\n"
19485  " p_l (PLFLT_NC_SCALAR, output) : Returned value of the lightness\n"
19486  " expressed as a fraction (0.0-1.0) of the axis of the color\n"
19487  " cylinder.\n"
19488  "\n"
19489  " p_s (PLFLT_NC_SCALAR, output) : Returned value of the saturation\n"
19490  " expressed as a fraction (0.0-1.0) of the radius of the color\n"
19491  " cylinder.\n"
19492  "\n"
19493  ""},
19494  { (char *)"plschr", _wrap_plschr, METH_VARARGS, (char *)"\n"
19495  "Set character size\n"
19496  "\n"
19497  "DESCRIPTION:\n"
19498  "\n"
19499  " This sets up the size of all subsequent characters drawn. The actual\n"
19500  " height of a character is the product of the default character size and\n"
19501  " a scaling factor.\n"
19502  "\n"
19503  " Redacted form: plschr(def, scale)\n"
19504  "\n"
19505  " This function is used in examples 2, 13, 23, and 24.\n"
19506  "\n"
19507  "\n"
19508  "\n"
19509  "SYNOPSIS:\n"
19510  "\n"
19511  "plschr(def, scale)\n"
19512  "\n"
19513  "ARGUMENTS:\n"
19514  "\n"
19515  " def (PLFLT, input) : The default height of a character in\n"
19516  " millimeters, should be set to zero if the default height is to\n"
19517  " remain unchanged. For rasterized drivers the dx and dy values\n"
19518  " specified in plspage are used to convert from mm to pixels (note\n"
19519  " the different unit systems used). This dpi aware scaling is not\n"
19520  " implemented for all drivers yet.\n"
19521  "\n"
19522  " scale (PLFLT, input) : Scale factor to be applied to default to get\n"
19523  " actual character height.\n"
19524  "\n"
19525  ""},
19526  { (char *)"plscmap0", _wrap_plscmap0, METH_VARARGS, (char *)"\n"
19527  "Set cmap0 colors by 8-bit RGB values\n"
19528  "\n"
19529  "DESCRIPTION:\n"
19530  "\n"
19531  " Set cmap0 colors using 8-bit RGB values (see the PLplot\n"
19532  " documentation). This sets the entire color map -- only as many colors\n"
19533  " as specified will be allocated.\n"
19534  "\n"
19535  " Redacted form: plscmap0(r, g, b)\n"
19536  "\n"
19537  " This function is used in examples 2 and 24.\n"
19538  "\n"
19539  "\n"
19540  "\n"
19541  "SYNOPSIS:\n"
19542  "\n"
19543  "plscmap0(r, g, b, ncol0)\n"
19544  "\n"
19545  "ARGUMENTS:\n"
19546  "\n"
19547  " r (PLINT_VECTOR, input) : A vector containing unsigned 8-bit\n"
19548  " integers (0-255) representing the degree of red in the color.\n"
19549  "\n"
19550  " g (PLINT_VECTOR, input) : A vector containing unsigned 8-bit\n"
19551  " integers (0-255) representing the degree of green in the color.\n"
19552  "\n"
19553  " b (PLINT_VECTOR, input) : A vector containing unsigned 8-bit\n"
19554  " integers (0-255) representing the degree of blue in the color.\n"
19555  "\n"
19556  " ncol0 (PLINT, input) : Number of items in the r, g, and b vectors.\n"
19557  "\n"
19558  ""},
19559  { (char *)"plscmap0a", _wrap_plscmap0a, METH_VARARGS, (char *)"\n"
19560  "Set cmap0 colors by 8-bit RGB values and PLFLT alpha transparency value\n"
19561  "\n"
19562  "DESCRIPTION:\n"
19563  "\n"
19564  " Set cmap0 colors using 8-bit RGB values (see the PLplot documentation)\n"
19565  " and PLFLT alpha transparency value. This sets the entire color map --\n"
19566  " only as many colors as specified will be allocated.\n"
19567  "\n"
19568  " Redacted form: plscmap0a(r, g, b, alpha)\n"
19569  "\n"
19570  " This function is used in examples 30.\n"
19571  "\n"
19572  "\n"
19573  "\n"
19574  "SYNOPSIS:\n"
19575  "\n"
19576  "plscmap0a(r, g, b, alpha, ncol0)\n"
19577  "\n"
19578  "ARGUMENTS:\n"
19579  "\n"
19580  " r (PLINT_VECTOR, input) : A vector containing unsigned 8-bit\n"
19581  " integers (0-255) representing the degree of red in the color.\n"
19582  "\n"
19583  " g (PLINT_VECTOR, input) : A vector containing unsigned 8-bit\n"
19584  " integers (0-255) representing the degree of green in the color.\n"
19585  "\n"
19586  " b (PLINT_VECTOR, input) : A vector containing unsigned 8-bit\n"
19587  " integers (0-255) representing the degree of blue in the color.\n"
19588  "\n"
19589  " alpha (PLFLT_VECTOR, input) : A vector containing values (0.0-1.0)\n"
19590  " representing the alpha transparency of the color.\n"
19591  "\n"
19592  " ncol0 (PLINT, input) : Number of items in the r, g, b, and alpha\n"
19593  " vectors.\n"
19594  "\n"
19595  ""},
19596  { (char *)"plscmap0n", _wrap_plscmap0n, METH_VARARGS, (char *)"\n"
19597  "Set number of colors in cmap0\n"
19598  "\n"
19599  "DESCRIPTION:\n"
19600  "\n"
19601  " Set number of colors in cmap0 (see the PLplot documentation). Allocate\n"
19602  " (or reallocate) cmap0, and fill with default values for those colors\n"
19603  " not previously allocated. The first 16 default colors are given in\n"
19604  " the plcol0 documentation. For larger indices the default color is\n"
19605  " red.\n"
19606  "\n"
19607  " The drivers are not guaranteed to support more than 16 colors.\n"
19608  "\n"
19609  " Redacted form: plscmap0n(ncol0)\n"
19610  "\n"
19611  " This function is used in examples 15, 16, and 24.\n"
19612  "\n"
19613  "\n"
19614  "\n"
19615  "SYNOPSIS:\n"
19616  "\n"
19617  "plscmap0n(ncol0)\n"
19618  "\n"
19619  "ARGUMENTS:\n"
19620  "\n"
19621  " ncol0 (PLINT, input) : Number of colors that will be allocated in\n"
19622  " the cmap0 palette. If this number is zero or less, then the value\n"
19623  " from the previous call to plscmap0n is used and if there is no\n"
19624  " previous call, then a default value is used.\n"
19625  "\n"
19626  ""},
19627  { (char *)"plscmap1", _wrap_plscmap1, METH_VARARGS, (char *)"\n"
19628  "Set opaque RGB cmap1 colors values\n"
19629  "\n"
19630  "DESCRIPTION:\n"
19631  "\n"
19632  " Set opaque cmap1 colors (see the PLplot documentation) using RGB\n"
19633  " vector values. This function also sets the number of cmap1 colors.\n"
19634  " N.B. Continuous cmap1 colors are indexed with a floating-point index\n"
19635  " in the range from 0.0-1.0 which is linearly transformed (e.g., by\n"
19636  " plcol1) to an integer index of these RGB vectors in the range from 0\n"
19637  " to\n"
19638  " ncol1-1. So in order for this continuous color model to work\n"
19639  " properly, it is the responsibility of the user of plscmap1 to insure\n"
19640  " that these RGB vectors are continuous functions of their integer\n"
19641  " indices.\n"
19642  "\n"
19643  " Redacted form: plscmap1(r, g, b)\n"
19644  "\n"
19645  " This function is used in example 31.\n"
19646  "\n"
19647  "\n"
19648  "\n"
19649  "SYNOPSIS:\n"
19650  "\n"
19651  "plscmap1(r, g, b, ncol1)\n"
19652  "\n"
19653  "ARGUMENTS:\n"
19654  "\n"
19655  " r (PLINT_VECTOR, input) : A vector that represents (using unsigned\n"
19656  " 8-bit integers in the range from 0-255) the degree of red in the\n"
19657  " color as a continuous function of the integer index of the vector.\n"
19658  "\n"
19659  " g (PLINT_VECTOR, input) : A vector that represents (using unsigned\n"
19660  " 8-bit integers in the range from 0-255) the degree of green in the\n"
19661  " color as a continuous function of the integer index of the vector.\n"
19662  "\n"
19663  " b (PLINT_VECTOR, input) : A vector that represents (using unsigned\n"
19664  " 8-bit integers in the range from 0-255) the degree of blue in the\n"
19665  " color as a continuous function of the integer index of the vector.\n"
19666  "\n"
19667  " ncol1 (PLINT, input) : Number of items in the r, g, and b vectors.\n"
19668  "\n"
19669  ""},
19670  { (char *)"plscmap1a", _wrap_plscmap1a, METH_VARARGS, (char *)"\n"
19671  "Set semitransparent cmap1 RGBA colors.\n"
19672  "\n"
19673  "DESCRIPTION:\n"
19674  "\n"
19675  " Set semitransparent cmap1 colors (see the PLplot documentation) using\n"
19676  " RGBA vector values. This function also sets the number of cmap1\n"
19677  " colors. N.B. Continuous cmap1 colors are indexed with a\n"
19678  " floating-point index in the range from 0.0-1.0 which is linearly\n"
19679  " transformed (e.g., by plcol1) to an integer index of these RGBA\n"
19680  " vectors in the range from 0 to\n"
19681  " ncol1-1. So in order for this continuous color model to work\n"
19682  " properly, it is the responsibility of the user of plscmap1 to insure\n"
19683  " that these RGBA vectors are continuous functions of their integer\n"
19684  " indices.\n"
19685  "\n"
19686  " Redacted form: plscmap1a(r, g, b, alpha)\n"
19687  "\n"
19688  " This function is used in example 31.\n"
19689  "\n"
19690  "\n"
19691  "\n"
19692  "SYNOPSIS:\n"
19693  "\n"
19694  "plscmap1a(r, g, b, alpha, ncol1)\n"
19695  "\n"
19696  "ARGUMENTS:\n"
19697  "\n"
19698  " r (PLINT_VECTOR, input) : A vector that represents (using unsigned\n"
19699  " 8-bit integers in the range from 0-255) the degree of red in the\n"
19700  " color as a continuous function of the integer index of the vector.\n"
19701  "\n"
19702  " g (PLINT_VECTOR, input) : A vector that represents (using unsigned\n"
19703  " 8-bit integers in the range from 0-255) the degree of green in the\n"
19704  " color as a continuous function of the integer index of the vector.\n"
19705  "\n"
19706  " b (PLINT_VECTOR, input) : A vector that represents (using unsigned\n"
19707  " 8-bit integers in the range from 0-255) the degree of blue in the\n"
19708  " color as a continuous function of the integer index of the vector.\n"
19709  "\n"
19710  " alpha (PLFLT_VECTOR, input) : A vector that represents (using PLFLT\n"
19711  " values in the range from 0.0-1.0 where 0.0 corresponds to\n"
19712  " completely transparent and 1.0 corresponds to completely opaque)\n"
19713  " the alpha transparency of the color as a continuous function of\n"
19714  " the integer index of the vector.\n"
19715  "\n"
19716  " ncol1 (PLINT, input) : Number of items in the r, g, b, and alpha\n"
19717  " vectors.\n"
19718  "\n"
19719  ""},
19720  { (char *)"plscmap1l", _wrap_plscmap1l, METH_VARARGS, (char *)"\n"
19721  "Set cmap1 colors using a piece-wise linear relationship\n"
19722  "\n"
19723  "DESCRIPTION:\n"
19724  "\n"
19725  " Set cmap1 colors using a piece-wise linear relationship between the\n"
19726  " cmap1 intensity index (0.0-1.0) and position in HLS or RGB color space\n"
19727  " (see the PLplot documentation). May be called at any time.\n"
19728  "\n"
19729  " The idea here is to specify a number of control points that define the\n"
19730  " mapping between input cmap1 intensity indices and HLS (or RGB).\n"
19731  " Between these points, linear interpolation is used which gives a\n"
19732  " smooth variation of color with intensity index. Any number of control\n"
19733  " points may be specified, located at arbitrary positions, although\n"
19734  " typically 2 - 4 are enough. Another way of stating this is that we are\n"
19735  " traversing a given number of lines through HLS (or RGB) space as we\n"
19736  " move through cmap1 intensity indices. The control points at the\n"
19737  " minimum and maximum position (0 and 1) must always be specified. By\n"
19738  " adding more control points you can get more variation. One good\n"
19739  " technique for plotting functions that vary about some expected average\n"
19740  " is to use an additional 2 control points in the center (position ~=\n"
19741  " 0.5) that are the same lightness as the background (typically white\n"
19742  " for paper output, black for crt), and same hue as the boundary control\n"
19743  " points. This allows the highs and lows to be very easily\n"
19744  " distinguished.\n"
19745  "\n"
19746  " Each control point must specify the cmap1 intensity index and the\n"
19747  " associated three coordinates in HLS or RGB space. The first point\n"
19748  " must correspond to position = 0, and the last to position = 1.\n"
19749  "\n"
19750  " The default behaviour is for the hue to be linearly interpolated\n"
19751  " between the control points. Since the hue lies in the range [0, 360]\n"
19752  " this corresponds to interpolation around the \"front\" of the color\n"
19753  " wheel (red<->green<->blue<->red). If alt_hue_path[i] is true, then an\n"
19754  " alternative interpolation is used between control points i and i+1. If\n"
19755  " hue[i+1]-hue[i] > 0 then interpolation is between hue[i] and hue[i+1]\n"
19756  " - 360, otherwise between hue[i] and hue[i+1] + 360. You can consider\n"
19757  " this as interpolation around the \"back\" or \"reverse\" of the color\n"
19758  " wheel. Specifying alt_hue_path=NULL is equivalent to setting\n"
19759  " alt_hue_path[] = false for every control point.\n"
19760  "\n"
19761  " Examples of interpolation Huealt_hue_pathcolor scheme[120\n"
19762  " 240]falsegreen-cyan-blue[240 120]falseblue-cyan-green[120\n"
19763  " 240]truegreen-yellow-red-magenta-blue[240\n"
19764  " 120]trueblue-magenta-red-yellow-green\n"
19765  "\n"
19766  " Bounds on coordinatesRGBR[0, 1]magnitudeRGBG[0, 1]magnitudeRGBB[0,\n"
19767  " 1]magnitudeHLShue[0, 360]degreesHLSlightness[0,\n"
19768  " 1]magnitudeHLSsaturation[0, 1]magnitude\n"
19769  "\n"
19770  " Redacted form: plscmap1l(itype, intensity, coord1, coord2, coord3,\n"
19771  " alt_hue_path)\n"
19772  "\n"
19773  " This function is used in examples 8, 11, 12, 15, 20, and 21.\n"
19774  "\n"
19775  "\n"
19776  "\n"
19777  "SYNOPSIS:\n"
19778  "\n"
19779  "plscmap1l(itype, npts, intensity, coord1, coord2, coord3, alt_hue_path)\n"
19780  "\n"
19781  "ARGUMENTS:\n"
19782  "\n"
19783  " itype (PLBOOL, input) : true: RGB, false: HLS.\n"
19784  "\n"
19785  " npts (PLINT, input) : number of control points\n"
19786  "\n"
19787  " intensity (PLFLT_VECTOR, input) : A vector containing the cmap1\n"
19788  " intensity index (0.0-1.0) in ascending order for each control\n"
19789  " point.\n"
19790  "\n"
19791  " coord1 (PLFLT_VECTOR, input) : A vector containing the first\n"
19792  " coordinate (H or R) for each control point.\n"
19793  "\n"
19794  " coord2 (PLFLT_VECTOR, input) : A vector containing the second\n"
19795  " coordinate (L or G) for each control point.\n"
19796  "\n"
19797  " coord3 (PLFLT_VECTOR, input) : A vector containing the third\n"
19798  " coordinate (S or B) for each control point.\n"
19799  "\n"
19800  " alt_hue_path (PLBOOL_VECTOR, input) : A vector (with\n"
19801  " npts - 1 elements) containing the alternative interpolation method\n"
19802  " Boolean value for each control point interval. (alt_hue_path[i]\n"
19803  " refers to the interpolation interval between the i and i + 1\n"
19804  " control points).\n"
19805  "\n"
19806  ""},
19807  { (char *)"plscmap1la", _wrap_plscmap1la, METH_VARARGS, (char *)"\n"
19808  "Set cmap1 colors and alpha transparency using a piece-wise linear relationship\n"
19809  "\n"
19810  "DESCRIPTION:\n"
19811  "\n"
19812  " This is a variant of plscmap1l that supports alpha channel\n"
19813  " transparency. It sets cmap1 colors using a piece-wise linear\n"
19814  " relationship between cmap1 intensity index (0.0-1.0) and position in\n"
19815  " HLS or RGB color space (see the PLplot documentation) with alpha\n"
19816  " transparency value (0.0-1.0). It may be called at any time.\n"
19817  "\n"
19818  " Redacted form: plscmap1la(itype, intensity, coord1, coord2, coord3,\n"
19819  " alpha, alt_hue_path)\n"
19820  "\n"
19821  " This function is used in example 30.\n"
19822  "\n"
19823  "\n"
19824  "\n"
19825  "SYNOPSIS:\n"
19826  "\n"
19827  "plscmap1la(itype, npts, intensity, coord1, coord2, coord3, alpha, alt_hue_path)\n"
19828  "\n"
19829  "ARGUMENTS:\n"
19830  "\n"
19831  " itype (PLBOOL, input) : true: RGB, false: HLS.\n"
19832  "\n"
19833  " npts (PLINT, input) : number of control points.\n"
19834  "\n"
19835  " intensity (PLFLT_VECTOR, input) : A vector containing the cmap1\n"
19836  " intensity index (0.0-1.0) in ascending order for each control\n"
19837  " point.\n"
19838  "\n"
19839  " coord1 (PLFLT_VECTOR, input) : A vector containing the first\n"
19840  " coordinate (H or R) for each control point.\n"
19841  "\n"
19842  " coord2 (PLFLT_VECTOR, input) : A vector containing the second\n"
19843  " coordinate (L or G) for each control point.\n"
19844  "\n"
19845  " coord3 (PLFLT_VECTOR, input) : A vector containing the third\n"
19846  " coordinate (S or B) for each control point.\n"
19847  "\n"
19848  " alpha (PLFLT_VECTOR, input) : A vector containing the alpha\n"
19849  " transparency value (0.0-1.0) for each control point.\n"
19850  "\n"
19851  " alt_hue_path (PLBOOL_VECTOR, input) : A vector (with\n"
19852  " npts - 1 elements) containing the alternative interpolation method\n"
19853  " Boolean value for each control point interval. (alt_hue_path[i]\n"
19854  " refers to the interpolation interval between the i and i + 1\n"
19855  " control points).\n"
19856  "\n"
19857  ""},
19858  { (char *)"plscmap1n", _wrap_plscmap1n, METH_VARARGS, (char *)"\n"
19859  "Set number of colors in cmap1\n"
19860  "\n"
19861  "DESCRIPTION:\n"
19862  "\n"
19863  " Set number of colors in cmap1, (re-)allocate cmap1, and set default\n"
19864  " values if this is the first allocation (see the PLplot documentation).\n"
19865  "\n"
19866  " Redacted form: plscmap1n(ncol1)\n"
19867  "\n"
19868  " This function is used in examples 8, 11, 20, and 21.\n"
19869  "\n"
19870  "\n"
19871  "\n"
19872  "SYNOPSIS:\n"
19873  "\n"
19874  "plscmap1n(ncol1)\n"
19875  "\n"
19876  "ARGUMENTS:\n"
19877  "\n"
19878  " ncol1 (PLINT, input) : Number of colors that will be allocated in\n"
19879  " the cmap1 palette. If this number is zero or less, then the value\n"
19880  " from the previous call to plscmap1n is used and if there is no\n"
19881  " previous call, then a default value is used.\n"
19882  "\n"
19883  ""},
19884  { (char *)"plscmap1_range", _wrap_plscmap1_range, METH_VARARGS, (char *)"\n"
19885  "Set the cmap1 argument range for continuous color plots\n"
19886  "\n"
19887  "DESCRIPTION:\n"
19888  "\n"
19889  " Set the cmap1 argument range for continuous color plots that\n"
19890  " corresponds to the range of data values. The maximum range\n"
19891  " corresponding to the entire cmap1 palette is 0.0-1.0, and the smaller\n"
19892  " the cmap1 argument range that is specified with this routine, the\n"
19893  " smaller the subset of the cmap1 color palette that is used to\n"
19894  " represent the continuous data being plotted. If\n"
19895  " min_color is greater than\n"
19896  " max_color or\n"
19897  " max_color is greater than 1.0 or\n"
19898  " min_color is less than 0.0 then no change is made to the cmap1\n"
19899  " argument range. (Use plgcmap1_range to get the cmap1 argument range.)\n"
19900  "\n"
19901  " Redacted form: plscmap1_range(min_color, max_color)\n"
19902  "\n"
19903  " This function is currently used in example 33.\n"
19904  "\n"
19905  "\n"
19906  "\n"
19907  "SYNOPSIS:\n"
19908  "\n"
19909  "plscmap1_range(min_color, max_color)\n"
19910  "\n"
19911  "ARGUMENTS:\n"
19912  "\n"
19913  " min_color (PLFLT, input) : The minimum cmap1 argument. If less\n"
19914  " than 0.0, then 0.0 is used instead.\n"
19915  "\n"
19916  " max_color (PLFLT, input) : The maximum cmap1 argument. If greater\n"
19917  " than 1.0, then 1.0 is used instead.\n"
19918  "\n"
19919  ""},
19920  { (char *)"plgcmap1_range", _wrap_plgcmap1_range, METH_VARARGS, (char *)"\n"
19921  "Get the cmap1 argument range for continuous color plots\n"
19922  "\n"
19923  "DESCRIPTION:\n"
19924  "\n"
19925  " Get the cmap1 argument range for continuous color plots. (Use\n"
19926  " plscmap1_range to set the cmap1 argument range.)\n"
19927  "\n"
19928  " Redacted form: plgcmap1_range(min_color, max_color)\n"
19929  "\n"
19930  " This function is currently not used in any example.\n"
19931  "\n"
19932  "\n"
19933  "\n"
19934  "SYNOPSIS:\n"
19935  "\n"
19936  "plgcmap1_range(min_color, max_color)\n"
19937  "\n"
19938  "ARGUMENTS:\n"
19939  "\n"
19940  " min_color (PLFLT_NC_SCALAR, output) : Returned value of the current\n"
19941  " minimum cmap1 argument.\n"
19942  "\n"
19943  " max_color (PLFLT_NC_SCALAR, output) : Returned value of the current\n"
19944  " maximum cmap1 argument.\n"
19945  "\n"
19946  ""},
19947  { (char *)"plscol0", _wrap_plscol0, METH_VARARGS, (char *)"\n"
19948  "Set 8-bit RGB values for given cmap0 color index\n"
19949  "\n"
19950  "DESCRIPTION:\n"
19951  "\n"
19952  " Set 8-bit RGB values for given cmap0 (see the PLplot documentation)\n"
19953  " index. Overwrites the previous color value for the given index and,\n"
19954  " thus, does not result in any additional allocation of space for\n"
19955  " colors.\n"
19956  "\n"
19957  " Redacted form: plscol0(icol0, r, g, b)\n"
19958  "\n"
19959  " This function is used in any example 31.\n"
19960  "\n"
19961  "\n"
19962  "\n"
19963  "SYNOPSIS:\n"
19964  "\n"
19965  "plscol0(icol0, r, g, b)\n"
19966  "\n"
19967  "ARGUMENTS:\n"
19968  "\n"
19969  " icol0 (PLINT, input) : Color index. Must be less than the maximum\n"
19970  " number of colors (which is set by default, by plscmap0n, or even\n"
19971  " by plscmap0).\n"
19972  "\n"
19973  " r (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
19974  " degree of red in the color.\n"
19975  "\n"
19976  " g (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
19977  " degree of green in the color.\n"
19978  "\n"
19979  " b (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
19980  " degree of blue in the color.\n"
19981  "\n"
19982  ""},
19983  { (char *)"plscol0a", _wrap_plscol0a, METH_VARARGS, (char *)"\n"
19984  "Set 8-bit RGB values and PLFLT alpha transparency value for given cmap0 color index\n"
19985  "\n"
19986  "DESCRIPTION:\n"
19987  "\n"
19988  " Set 8-bit RGB value and PLFLT alpha transparency value for given cmap0\n"
19989  " (see the PLplot documentation) index. Overwrites the previous color\n"
19990  " value for the given index and, thus, does not result in any additional\n"
19991  " allocation of space for colors.\n"
19992  "\n"
19993  " This function is used in example 30.\n"
19994  "\n"
19995  "\n"
19996  "\n"
19997  "SYNOPSIS:\n"
19998  "\n"
19999  "plscol0a(icol0, r, g, b, alpha)\n"
20000  "\n"
20001  "ARGUMENTS:\n"
20002  "\n"
20003  " icol0 (PLINT, input) : Color index. Must be less than the maximum\n"
20004  " number of colors (which is set by default, by plscmap0n, or even\n"
20005  " by plscmap0).\n"
20006  "\n"
20007  " r (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
20008  " degree of red in the color.\n"
20009  "\n"
20010  " g (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
20011  " degree of green in the color.\n"
20012  "\n"
20013  " b (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
20014  " degree of blue in the color.\n"
20015  "\n"
20016  " alpha (PLFLT, input) : Value of the alpha transparency in the range\n"
20017  " (0.0-1.0).\n"
20018  "\n"
20019  ""},
20020  { (char *)"plscolbg", _wrap_plscolbg, METH_VARARGS, (char *)"\n"
20021  "Set the background color by 8-bit RGB value\n"
20022  "\n"
20023  "DESCRIPTION:\n"
20024  "\n"
20025  " Set the background color (color 0 in cmap0) by 8-bit RGB value (see\n"
20026  " the PLplot documentation).\n"
20027  "\n"
20028  " Redacted form: plscolbg(r, g, b)\n"
20029  "\n"
20030  " This function is used in examples 15 and 31.\n"
20031  "\n"
20032  "\n"
20033  "\n"
20034  "SYNOPSIS:\n"
20035  "\n"
20036  "plscolbg(r, g, b)\n"
20037  "\n"
20038  "ARGUMENTS:\n"
20039  "\n"
20040  " r (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
20041  " degree of red in the color.\n"
20042  "\n"
20043  " g (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
20044  " degree of green in the color.\n"
20045  "\n"
20046  " b (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
20047  " degree of blue in the color.\n"
20048  "\n"
20049  ""},
20050  { (char *)"plscolbga", _wrap_plscolbga, METH_VARARGS, (char *)"\n"
20051  "Set the background color by 8-bit RGB value and PLFLT alpha transparency value.\n"
20052  "\n"
20053  "DESCRIPTION:\n"
20054  "\n"
20055  " Set the background color (color 0 in cmap0) by 8-bit RGB value and\n"
20056  " PLFLT alpha transparency value (see the PLplot documentation).\n"
20057  "\n"
20058  " This function is used in example 31.\n"
20059  "\n"
20060  "\n"
20061  "\n"
20062  "SYNOPSIS:\n"
20063  "\n"
20064  "plscolbga(r, g, b, alpha)\n"
20065  "\n"
20066  "ARGUMENTS:\n"
20067  "\n"
20068  " r (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
20069  " degree of red in the color.\n"
20070  "\n"
20071  " g (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
20072  " degree of green in the color.\n"
20073  "\n"
20074  " b (PLINT, input) : Unsigned 8-bit integer (0-255) representing the\n"
20075  " degree of blue in the color.\n"
20076  "\n"
20077  " alpha (PLFLT, input) : Value of the alpha transparency in the range\n"
20078  " (0.0-1.0).\n"
20079  "\n"
20080  ""},
20081  { (char *)"plscolor", _wrap_plscolor, METH_VARARGS, (char *)"\n"
20082  "Used to globally turn color output on/off\n"
20083  "\n"
20084  "DESCRIPTION:\n"
20085  "\n"
20086  " Used to globally turn color output on/off for those drivers/devices\n"
20087  " that support it.\n"
20088  "\n"
20089  " Redacted form: plscolor(color)\n"
20090  "\n"
20091  " This function is used in example 31.\n"
20092  "\n"
20093  "\n"
20094  "\n"
20095  "SYNOPSIS:\n"
20096  "\n"
20097  "plscolor(color)\n"
20098  "\n"
20099  "ARGUMENTS:\n"
20100  "\n"
20101  " color (PLINT, input) : Color flag (Boolean). If zero, color is\n"
20102  " turned off. If non-zero, color is turned on.\n"
20103  "\n"
20104  ""},
20105  { (char *)"plscompression", _wrap_plscompression, METH_VARARGS, (char *)"\n"
20106  "Set device-compression level\n"
20107  "\n"
20108  "DESCRIPTION:\n"
20109  "\n"
20110  " Set device-compression level. Only used for drivers that provide\n"
20111  " compression. This function, if used, should be invoked before a call\n"
20112  " to plinit.\n"
20113  "\n"
20114  " Redacted form: plscompression(compression)\n"
20115  "\n"
20116  " This function is used in example 31.\n"
20117  "\n"
20118  "\n"
20119  "\n"
20120  "SYNOPSIS:\n"
20121  "\n"
20122  "plscompression(compression)\n"
20123  "\n"
20124  "ARGUMENTS:\n"
20125  "\n"
20126  " compression (PLINT, input) : The desired compression level. This is\n"
20127  " a device-dependent value. Currently only the jpeg and png devices\n"
20128  " use these values. For jpeg value is the jpeg quality which should\n"
20129  " normally be in the range 0-95. Higher values denote higher quality\n"
20130  " and hence larger image sizes. For png values are in the range -1\n"
20131  " to 99. Values of 0-9 are taken as the compression level for zlib.\n"
20132  " A value of -1 denotes the default zlib compression level. Values\n"
20133  " in the range 10-99 are divided by 10 and then used as the zlib\n"
20134  " compression level. Higher compression levels correspond to greater\n"
20135  " compression and small file sizes at the expense of more\n"
20136  " computation.\n"
20137  "\n"
20138  ""},
20139  { (char *)"plsdev", _wrap_plsdev, METH_VARARGS, (char *)"\n"
20140  "Set the device (keyword) name\n"
20141  "\n"
20142  "DESCRIPTION:\n"
20143  "\n"
20144  " Set the device (keyword) name.\n"
20145  "\n"
20146  " Redacted form: plsdev(devname)\n"
20147  "\n"
20148  " This function is used in examples 1, 14, and 20.\n"
20149  "\n"
20150  "\n"
20151  "\n"
20152  "SYNOPSIS:\n"
20153  "\n"
20154  "plsdev(devname)\n"
20155  "\n"
20156  "ARGUMENTS:\n"
20157  "\n"
20158  " devname (PLCHAR_VECTOR, input) : An ascii character string\n"
20159  " containing the device name keyword of the required output device.\n"
20160  " If\n"
20161  " devname is NULL or if the first character of the string is a ``?'',\n"
20162  " the normal (prompted) start up is used.\n"
20163  "\n"
20164  ""},
20165  { (char *)"plsdidev", _wrap_plsdidev, METH_VARARGS, (char *)"\n"
20166  "Set parameters that define current device-space window\n"
20167  "\n"
20168  "DESCRIPTION:\n"
20169  "\n"
20170  " Set relative margin width, aspect ratio, and relative justification\n"
20171  " that define current device-space window. If you want to just use the\n"
20172  " previous value for any of these, just pass in the magic value\n"
20173  " PL_NOTSET. It is unlikely that one should ever need to change the\n"
20174  " aspect ratio but it's in there for completeness. If plsdidev is not\n"
20175  " called the default values of mar, jx, and jy are all 0. aspect is set\n"
20176  " to a device-specific value.\n"
20177  "\n"
20178  " Redacted form: plsdidev(mar, aspect, jx, jy)\n"
20179  "\n"
20180  " This function is used in example 31.\n"
20181  "\n"
20182  "\n"
20183  "\n"
20184  "SYNOPSIS:\n"
20185  "\n"
20186  "plsdidev(mar, aspect, jx, jy)\n"
20187  "\n"
20188  "ARGUMENTS:\n"
20189  "\n"
20190  " mar (PLFLT, input) : Relative margin width.\n"
20191  "\n"
20192  " aspect (PLFLT, input) : Aspect ratio.\n"
20193  "\n"
20194  " jx (PLFLT, input) : Relative justification in x. Value must lie in\n"
20195  " the range -0.5 to 0.5.\n"
20196  "\n"
20197  " jy (PLFLT, input) : Relative justification in y. Value must lie in\n"
20198  " the range -0.5 to 0.5.\n"
20199  "\n"
20200  ""},
20201  { (char *)"plsdimap", _wrap_plsdimap, METH_VARARGS, (char *)"\n"
20202  "Set up transformation from metafile coordinates\n"
20203  "\n"
20204  "DESCRIPTION:\n"
20205  "\n"
20206  " Set up transformation from metafile coordinates. The size of the plot\n"
20207  " is scaled so as to preserve aspect ratio. This isn't intended to be a\n"
20208  " general-purpose facility just yet (not sure why the user would need\n"
20209  " it, for one).\n"
20210  "\n"
20211  " Redacted form: plsdimap(dimxmin, dimxmax, dimymin, dimymax, dimxpmm,\n"
20212  " dimypmm)\n"
20213  "\n"
20214  " This function is not used in any examples.\n"
20215  "\n"
20216  "\n"
20217  "\n"
20218  "SYNOPSIS:\n"
20219  "\n"
20220  "plsdimap(dimxmin, dimxmax, dimymin, dimymax, dimxpmm, dimypmm)\n"
20221  "\n"
20222  "ARGUMENTS:\n"
20223  "\n"
20224  " dimxmin (PLINT, input) : NEEDS DOCUMENTATION\n"
20225  "\n"
20226  " dimxmax (PLINT, input) : NEEDS DOCUMENTATION\n"
20227  "\n"
20228  " dimymin (PLINT, input) : NEEDS DOCUMENTATION\n"
20229  "\n"
20230  " dimymax (PLINT, input) : NEEDS DOCUMENTATION\n"
20231  "\n"
20232  " dimxpmm (PLFLT, input) : NEEDS DOCUMENTATION\n"
20233  "\n"
20234  " dimypmm (PLFLT, input) : NEEDS DOCUMENTATION\n"
20235  "\n"
20236  ""},
20237  { (char *)"plsdiori", _wrap_plsdiori, METH_VARARGS, (char *)"\n"
20238  "Set plot orientation\n"
20239  "\n"
20240  "DESCRIPTION:\n"
20241  "\n"
20242  " Set plot orientation parameter which is multiplied by 90 degrees to\n"
20243  " obtain the angle of rotation. Note, arbitrary rotation parameters\n"
20244  " such as 0.2 (corresponding to 18 degrees) are possible, but the usual\n"
20245  " values for the rotation parameter are 0., 1., 2., and 3. corresponding\n"
20246  " to 0 degrees (landscape mode), 90 degrees (portrait mode), 180 degrees\n"
20247  " (seascape mode), and 270 degrees (upside-down mode). If plsdiori is\n"
20248  " not called the default value of rot is 0.\n"
20249  "\n"
20250  " N.B. aspect ratio is unaffected by calls to plsdiori. So you will\n"
20251  " probably want to change the aspect ratio to a value suitable for the\n"
20252  " plot orientation using a call to plsdidev or the command-line options\n"
20253  " -a or -freeaspect. For more documentation of those options see the\n"
20254  " PLplot documentation. Such command-line options can be set internally\n"
20255  " using plsetopt or set directly using the command line and parsed using\n"
20256  " a call to plparseopts.\n"
20257  "\n"
20258  " Redacted form: plsdiori(rot)\n"
20259  "\n"
20260  " This function is not used in any examples.\n"
20261  "\n"
20262  "\n"
20263  "\n"
20264  "SYNOPSIS:\n"
20265  "\n"
20266  "plsdiori(rot)\n"
20267  "\n"
20268  "ARGUMENTS:\n"
20269  "\n"
20270  " rot (PLFLT, input) : Plot orientation parameter.\n"
20271  "\n"
20272  ""},
20273  { (char *)"plsdiplt", _wrap_plsdiplt, METH_VARARGS, (char *)"\n"
20274  "Set parameters that define current plot-space window\n"
20275  "\n"
20276  "DESCRIPTION:\n"
20277  "\n"
20278  " Set relative minima and maxima that define the current plot-space\n"
20279  " window. If plsdiplt is not called the default values of xmin, ymin,\n"
20280  " xmax, and ymax are 0., 0., 1., and 1.\n"
20281  "\n"
20282  " Redacted form: plsdiplt(xmin, ymin, xmax, ymax)\n"
20283  "\n"
20284  " This function is used in example 31.\n"
20285  "\n"
20286  "\n"
20287  "\n"
20288  "SYNOPSIS:\n"
20289  "\n"
20290  "plsdiplt(xmin, ymin, xmax, ymax)\n"
20291  "\n"
20292  "ARGUMENTS:\n"
20293  "\n"
20294  " xmin (PLFLT, input) : Relative minimum in x.\n"
20295  "\n"
20296  " ymin (PLFLT, input) : Relative minimum in y.\n"
20297  "\n"
20298  " xmax (PLFLT, input) : Relative maximum in x.\n"
20299  "\n"
20300  " ymax (PLFLT, input) : Relative maximum in y.\n"
20301  "\n"
20302  ""},
20303  { (char *)"plsdiplz", _wrap_plsdiplz, METH_VARARGS, (char *)"\n"
20304  "Set parameters incrementally (zoom mode) that define current plot-space window\n"
20305  "\n"
20306  "DESCRIPTION:\n"
20307  "\n"
20308  " Set relative minima and maxima incrementally (zoom mode) that define\n"
20309  " the current plot-space window. This function has the same effect as\n"
20310  " plsdiplt if that function has not been previously called. Otherwise,\n"
20311  " this function implements zoom mode using the transformation min_used =\n"
20312  " old_min + old_length*min and max_used = old_min + old_length*max for\n"
20313  " each axis. For example, if min = 0.05 and max = 0.95 for each axis,\n"
20314  " repeated calls to plsdiplz will zoom in by 10 per cent for each call.\n"
20315  "\n"
20316  " Redacted form: plsdiplz(xmin, ymin, xmax, ymax)\n"
20317  "\n"
20318  " This function is used in example 31.\n"
20319  "\n"
20320  "\n"
20321  "\n"
20322  "SYNOPSIS:\n"
20323  "\n"
20324  "plsdiplz(xmin, ymin, xmax, ymax)\n"
20325  "\n"
20326  "ARGUMENTS:\n"
20327  "\n"
20328  " xmin (PLFLT, input) : Relative (incremental) minimum in x.\n"
20329  "\n"
20330  " ymin (PLFLT, input) : Relative (incremental) minimum in y.\n"
20331  "\n"
20332  " xmax (PLFLT, input) : Relative (incremental) maximum in x.\n"
20333  "\n"
20334  " ymax (PLFLT, input) : Relative (incremental) maximum in y.\n"
20335  "\n"
20336  ""},
20337  { (char *)"plseed", _wrap_plseed, METH_VARARGS, (char *)"\n"
20338  "Set seed for internal random number generator.\n"
20339  "\n"
20340  "DESCRIPTION:\n"
20341  "\n"
20342  " Set the seed for the internal random number generator. See plrandd for\n"
20343  " further details.\n"
20344  "\n"
20345  " Redacted form: plseed(seed)\n"
20346  "\n"
20347  " This function is used in example 21.\n"
20348  "\n"
20349  "\n"
20350  "\n"
20351  "SYNOPSIS:\n"
20352  "\n"
20353  "plseed(seed)\n"
20354  "\n"
20355  "ARGUMENTS:\n"
20356  "\n"
20357  " seed (unsigned int, input) : Seed for random number generator.\n"
20358  "\n"
20359  ""},
20360  { (char *)"plsesc", _wrap_plsesc, METH_VARARGS, (char *)"\n"
20361  "Set the escape character for text strings\n"
20362  "\n"
20363  "DESCRIPTION:\n"
20364  "\n"
20365  " Set the escape character for text strings. From C (in contrast to\n"
20366  " Fortran, see plsescfortran) you pass esc as a character. Only selected\n"
20367  " characters are allowed to prevent the user from shooting himself in\n"
20368  " the foot (For example, a \\ isn't allowed since it conflicts with C's\n"
20369  " use of backslash as a character escape). Here are the allowed escape\n"
20370  " characters and their corresponding decimal ASCII values: !, ASCII 33\n"
20371  " #, ASCII 35\n"
20372  " $, ASCII 36\n"
20373  " %, ASCII 37\n"
20374  " &, ASCII 38\n"
20375  " *, ASCII 42\n"
20376  " @, ASCII 64\n"
20377  " ^, ASCII 94\n"
20378  " ~, ASCII 126\n"
20379  "\n"
20380  "\n"
20381  " Redacted form: General: plsesc(esc)\n"
20382  " Perl/PDL: Not available?\n"
20383  "\n"
20384  "\n"
20385  " This function is used in example 29.\n"
20386  "\n"
20387  "\n"
20388  "\n"
20389  "SYNOPSIS:\n"
20390  "\n"
20391  "plsesc(esc)\n"
20392  "\n"
20393  "ARGUMENTS:\n"
20394  "\n"
20395  " esc (char, input) : Escape character.\n"
20396  "\n"
20397  ""},
20398  { (char *)"plsetopt", _wrap_plsetopt, METH_VARARGS, (char *)"\n"
20399  "Set any command-line option\n"
20400  "\n"
20401  "DESCRIPTION:\n"
20402  "\n"
20403  " Set any command-line option internally from a program before it\n"
20404  " invokes plinit. opt is the name of the command-line option and optarg\n"
20405  " is the corresponding command-line option argument.\n"
20406  "\n"
20407  " This function returns 0 on success.\n"
20408  "\n"
20409  " Redacted form: plsetopt(opt, optarg)\n"
20410  "\n"
20411  " This function is used in example 14.\n"
20412  "\n"
20413  "\n"
20414  "\n"
20415  "SYNOPSIS:\n"
20416  "\n"
20417  "PLINT plsetopt(opt, optarg)\n"
20418  "\n"
20419  "ARGUMENTS:\n"
20420  "\n"
20421  " opt (PLCHAR_VECTOR, input) : An ascii character string containing\n"
20422  " the command-line option.\n"
20423  "\n"
20424  " optarg (PLCHAR_VECTOR, input) : An ascii character string\n"
20425  " containing the argument of the command-line option.\n"
20426  "\n"
20427  ""},
20428  { (char *)"plsfam", _wrap_plsfam, METH_VARARGS, (char *)"\n"
20429  "Set family file parameters\n"
20430  "\n"
20431  "DESCRIPTION:\n"
20432  "\n"
20433  " Sets variables dealing with output file familying. Does nothing if\n"
20434  " familying not supported by the driver. This routine, if used, must be\n"
20435  " called before initializing PLplot. See the PLplot documentation for\n"
20436  " more information.\n"
20437  "\n"
20438  " Redacted form: plsfam(fam, num, bmax)\n"
20439  "\n"
20440  " This function is used in examples 14 and 31.\n"
20441  "\n"
20442  "\n"
20443  "\n"
20444  "SYNOPSIS:\n"
20445  "\n"
20446  "plsfam(fam, num, bmax)\n"
20447  "\n"
20448  "ARGUMENTS:\n"
20449  "\n"
20450  " fam (PLINT, input) : Family flag (Boolean). If nonzero, familying\n"
20451  " is enabled.\n"
20452  "\n"
20453  " num (PLINT, input) : Current family file number.\n"
20454  "\n"
20455  " bmax (PLINT, input) : Maximum file size (in bytes) for a family\n"
20456  " file.\n"
20457  "\n"
20458  ""},
20459  { (char *)"plsfci", _wrap_plsfci, METH_VARARGS, (char *)"\n"
20460  "Set FCI (font characterization integer)\n"
20461  "\n"
20462  "DESCRIPTION:\n"
20463  "\n"
20464  " Sets font characteristics to be used at the start of the next string\n"
20465  " using the FCI approach. See the PLplot documentation for more\n"
20466  " information. Note, plsfont (which calls plsfci internally) provides a\n"
20467  " more user-friendly API for setting the font characterisitics.\n"
20468  "\n"
20469  " Redacted form: General: plsfci(fci)\n"
20470  " Perl/PDL: Not available?\n"
20471  "\n"
20472  "\n"
20473  " This function is used in example 23.\n"
20474  "\n"
20475  "\n"
20476  "\n"
20477  "SYNOPSIS:\n"
20478  "\n"
20479  "plsfci(fci)\n"
20480  "\n"
20481  "ARGUMENTS:\n"
20482  "\n"
20483  " fci (PLUNICODE, input) : PLUNICODE (unsigned 32-bit integer) value\n"
20484  " of FCI.\n"
20485  "\n"
20486  ""},
20487  { (char *)"plsfnam", _wrap_plsfnam, METH_VARARGS, (char *)"\n"
20488  "Set output file name\n"
20489  "\n"
20490  "DESCRIPTION:\n"
20491  "\n"
20492  " Sets the current output file name, if applicable. If the file name\n"
20493  " has not been specified and is required by the driver, the user will be\n"
20494  " prompted for it. If using the X-windows output driver, this sets the\n"
20495  " display name. This routine, if used, must be called before\n"
20496  " initializing PLplot.\n"
20497  "\n"
20498  " Redacted form: plsfnam(fnam)\n"
20499  "\n"
20500  " This function is used in examples 1 and 20.\n"
20501  "\n"
20502  "\n"
20503  "\n"
20504  "SYNOPSIS:\n"
20505  "\n"
20506  "plsfnam(fnam)\n"
20507  "\n"
20508  "ARGUMENTS:\n"
20509  "\n"
20510  " fnam (PLCHAR_VECTOR, input) : An ascii character string containing\n"
20511  " the file name.\n"
20512  "\n"
20513  ""},
20514  { (char *)"plsfont", _wrap_plsfont, METH_VARARGS, (char *)"\n"
20515  "Set family, style and weight of the current font\n"
20516  "\n"
20517  "DESCRIPTION:\n"
20518  "\n"
20519  " Sets the current font. See the PLplot documentation for more\n"
20520  " information on font selection.\n"
20521  "\n"
20522  " Redacted form: plsfont(family, style, weight)\n"
20523  "\n"
20524  " This function is used in example 23.\n"
20525  "\n"
20526  "\n"
20527  "\n"
20528  "SYNOPSIS:\n"
20529  "\n"
20530  "plsfont(family, style, weight)\n"
20531  "\n"
20532  "ARGUMENTS:\n"
20533  "\n"
20534  " family (PLINT, input) : Font family to select for the current font.\n"
20535  " The available values are given by the PL_FCI_* constants in\n"
20536  " plplot.h. Current options are PL_FCI_SANS, PL_FCI_SERIF,\n"
20537  " PL_FCI_MONO, PL_FCI_SCRIPT and PL_FCI_SYMBOL. A negative value\n"
20538  " signifies that the font family should not be altered.\n"
20539  "\n"
20540  " style (PLINT, input) : Font style to select for the current font.\n"
20541  " The available values are given by the PL_FCI_* constants in\n"
20542  " plplot.h. Current options are PL_FCI_UPRIGHT, PL_FCI_ITALIC and\n"
20543  " PL_FCI_OBLIQUE. A negative value signifies that the font style\n"
20544  " should not be altered.\n"
20545  "\n"
20546  " weight (PLINT, input) : Font weight to select for the current font.\n"
20547  " The available values are given by the PL_FCI_* constants in\n"
20548  " plplot.h. Current options are PL_FCI_MEDIUM and PL_FCI_BOLD. A\n"
20549  " negative value signifies that the font weight should not be\n"
20550  " altered.\n"
20551  "\n"
20552  ""},
20553  { (char *)"plshades", _wrap_plshades, METH_VARARGS, (char *)"\n"
20554  "Shade regions on the basis of value\n"
20555  "\n"
20556  "DESCRIPTION:\n"
20557  "\n"
20558  " Shade regions on the basis of value. This is the high-level routine\n"
20559  " for making continuous color shaded plots with cmap1 while plshade\n"
20560  " should be used to plot individual shaded regions using either cmap0 or\n"
20561  " cmap1. examples/;<language>/x16* shows how to use plshades for each of\n"
20562  " our supported languages.\n"
20563  "\n"
20564  " Redacted form: General: plshades(a, defined, xmin, xmax, ymin, ymax,\n"
20565  " clevel, fill_width, cont_color, cont_width, fill, rectangular, pltr,\n"
20566  " pltr_data)\n"
20567  " Perl/PDL: plshades(a, xmin, xmax, ymin, ymax, clevel,\n"
20568  " fill_width, cont_color, cont_width, fill, rectangular, defined, pltr,\n"
20569  " pltr_data)\n"
20570  "\n"
20571  "\n"
20572  " This function is used in examples 16, 21, and 22.\n"
20573  "\n"
20574  "\n"
20575  "\n"
20576  "SYNOPSIS:\n"
20577  "\n"
20578  "plshades(a, nx, ny, defined, xmin, xmax, ymin, ymax, clevel, nlevel, fill_width, cont_color, cont_width, fill, rectangular, pltr, pltr_data)\n"
20579  "\n"
20580  "ARGUMENTS:\n"
20581  "\n"
20582  " a (PLFLT_MATRIX, input) : A matrix containing function values to\n"
20583  " plot. Should have dimensions of\n"
20584  " nx by\n"
20585  " ny.\n"
20586  "\n"
20587  " nx (PLINT, input) : First dimension of matrix \"a\".\n"
20588  "\n"
20589  " ny (PLINT, input) : Second dimension of matrix \"a\".\n"
20590  "\n"
20591  " defined (PLDEFINED_callback, input) : Callback function specifying\n"
20592  " the region that should be plotted in the shade plot. This\n"
20593  " function accepts x and y coordinates as input arguments and must\n"
20594  " return 1 if the point is to be included in the shade plot and 0\n"
20595  " otherwise. If you want to plot the entire shade plot (the usual\n"
20596  " case), this argument should be set to NULL.\n"
20597  "\n"
20598  " xmin, xmax, ymin, ymax (PLFLT, input) : See the discussion of\n"
20599  " pltr below for how these arguments are used (only for the special case\n"
20600  " when the callback function\n"
20601  " pltr is not supplied).\n"
20602  "\n"
20603  " clevel (PLFLT_VECTOR, input) : A vector containing the data levels\n"
20604  " corresponding to the edges of each shaded region that will be\n"
20605  " plotted by this function. To work properly the levels should be\n"
20606  " monotonic.\n"
20607  "\n"
20608  " nlevel (PLINT, input) : Number of shades plus 1 (i.e., the number\n"
20609  " of shade edge values in clevel).\n"
20610  "\n"
20611  " fill_width (PLFLT, input) : Defines the line width used by the fill\n"
20612  " pattern.\n"
20613  "\n"
20614  " cont_color (PLINT, input) : Defines cmap0 pen color used for\n"
20615  " contours defining edges of shaded regions. The pen color is only\n"
20616  " temporary set for the contour drawing. Set this value to zero or\n"
20617  " less if no shade edge contours are wanted.\n"
20618  "\n"
20619  " cont_width (PLFLT, input) : Defines line width used for contours\n"
20620  " defining edges of shaded regions. This value may not be honored\n"
20621  " by all drivers. The pen width is only temporary set for the\n"
20622  " contour drawing. Set this value to zero or less if no shade edge\n"
20623  " contours are wanted.\n"
20624  "\n"
20625  " fill (PLFILL_callback, input) : Callback routine used to fill the\n"
20626  " region. Use plfill for this purpose.\n"
20627  "\n"
20628  " rectangular (PLBOOL, input) : Set rectangular to true if rectangles\n"
20629  " map to rectangles after coordinate transformation with pltrl.\n"
20630  " Otherwise, set rectangular to false. If rectangular is set to\n"
20631  " true, plshade tries to save time by filling large rectangles.\n"
20632  " This optimization fails if the coordinate transformation distorts\n"
20633  " the shape of rectangles. For example a plot in polar coordinates\n"
20634  " has to have rectangular set to false.\n"
20635  "\n"
20636  " pltr (PLTRANSFORM_callback, input) : A callback function that\n"
20637  " defines the transformation between the zero-based indices of the\n"
20638  " matrix a and world coordinates. If\n"
20639  " pltr is not supplied (e.g., is set to NULL in the C case), then the x\n"
20640  " indices of a are mapped to the range\n"
20641  " xmin through\n"
20642  " xmax and the y indices of a are mapped to the range\n"
20643  " ymin through\n"
20644  " ymax.For the C case, transformation functions are provided in the\n"
20645  " PLplot library: pltr0 for the identity mapping, and pltr1 and\n"
20646  " pltr2 for arbitrary mappings respectively defined by vectors and\n"
20647  " matrices. In addition, C callback routines for the transformation\n"
20648  " can be supplied by the user such as the mypltr function in\n"
20649  " examples/c/x09c.c which provides a general linear transformation\n"
20650  " between index coordinates and world coordinates.For languages\n"
20651  " other than C you should consult the PLplot documentation for the\n"
20652  " details concerning how PLTRANSFORM_callback arguments are\n"
20653  " interfaced. However, in general, a particular pattern of\n"
20654  " callback-associated arguments such as a tr vector with 6 elements;\n"
20655  " xg and yg vectors; or xg and yg matrices are respectively\n"
20656  " interfaced to a linear-transformation routine similar to the above\n"
20657  " mypltr function; pltr1; and pltr2. Furthermore, some of our more\n"
20658  " sophisticated bindings (see, e.g., the PLplot documentation)\n"
20659  " support native language callbacks for handling index to\n"
20660  " world-coordinate transformations. Examples of these various\n"
20661  " approaches are given in examples/<language>x09*,\n"
20662  " examples/<language>x16*, examples/<language>x20*,\n"
20663  " examples/<language>x21*, and examples/<language>x22*, for all our\n"
20664  " supported languages.\n"
20665  "\n"
20666  " pltr_data (PLPointer, input) : Extra parameter to help pass\n"
20667  " information to pltr0, pltr1, pltr2, or whatever routine that is\n"
20668  " externally supplied.\n"
20669  "\n"
20670  ""},
20671  { (char *)"plshade", _wrap_plshade, METH_VARARGS, (char *)"\n"
20672  "Shade individual region on the basis of value\n"
20673  "\n"
20674  "DESCRIPTION:\n"
20675  "\n"
20676  " Shade individual region on the basis of value. Use plshades if you\n"
20677  " want to shade a number of contiguous regions using continuous colors.\n"
20678  " In particular the edge contours are treated properly in plshades. If\n"
20679  " you attempt to do contiguous regions with plshade the contours at the\n"
20680  " edge of the shade are partially obliterated by subsequent plots of\n"
20681  " contiguous shaded regions.\n"
20682  "\n"
20683  " Redacted form: General: plshade(a, defined, xmin, xmax, ymin, ymax,\n"
20684  " shade_min, shade_max, sh_cmap, sh_color, sh_width, min_color,\n"
20685  " min_width, max_color, max_width, fill, rectangular, pltr, pltr_data)\n"
20686  "\n"
20687  "\n"
20688  " This function is used in example 15.\n"
20689  "\n"
20690  "\n"
20691  "\n"
20692  "SYNOPSIS:\n"
20693  "\n"
20694  "plshade(a, nx, ny, defined, xmin, xmax, ymin, ymax, shade_min, shade_max, sh_cmap, sh_color, sh_width, min_color, min_width, max_color, max_width, fill, rectangular, pltr, pltr_data)\n"
20695  "\n"
20696  "ARGUMENTS:\n"
20697  "\n"
20698  " a (PLFLT_MATRIX, input) : A matrix containing function values to\n"
20699  " plot. Should have dimensions of\n"
20700  " nx by\n"
20701  " ny.\n"
20702  "\n"
20703  " nx (PLINT, input) : First dimension of the matrix \"a\".\n"
20704  "\n"
20705  " ny (PLINT, input) : Second dimension of the matrix \"a\".\n"
20706  "\n"
20707  " defined (PLDEFINED_callback, input) : Callback function specifying\n"
20708  " the region that should be plotted in the shade plot. This\n"
20709  " function accepts x and y coordinates as input arguments and must\n"
20710  " return 1 if the point is to be included in the shade plot and 0\n"
20711  " otherwise. If you want to plot the entire shade plot (the usual\n"
20712  " case), this argument should be set to NULL.\n"
20713  "\n"
20714  " xmin, xmax, ymin, ymax (PLFLT, input) : See the discussion of\n"
20715  " pltr below for how these arguments are used (only for the special case\n"
20716  " when the callback function\n"
20717  " pltr is not supplied).\n"
20718  "\n"
20719  " shade_min (PLFLT, input) : Defines the lower end of the interval to\n"
20720  " be shaded. If shade_max <= shade_min, plshade does nothing.\n"
20721  "\n"
20722  " shade_max (PLFLT, input) : Defines the upper end of the interval to\n"
20723  " be shaded. If shade_max <= shade_min, plshade does nothing.\n"
20724  "\n"
20725  " sh_cmap (PLINT, input) : Defines color map. If sh_cmap=0, then\n"
20726  " sh_color is interpreted as a cmap0 (integer) index. If sh_cmap=1,\n"
20727  " then sh_color is interpreted as a cmap1 argument in the range\n"
20728  " (0.0-1.0).\n"
20729  "\n"
20730  " sh_color (PLFLT, input) : Defines color map index with integer\n"
20731  " value if cmap0 or value in range (0.0-1.0) if cmap1.\n"
20732  "\n"
20733  " sh_width (PLFLT, input) : Defines width used by the fill pattern.\n"
20734  "\n"
20735  " min_color (PLINT, input) : Defines pen color, width used by the\n"
20736  " boundary of shaded region. The min values are used for the\n"
20737  " shade_min boundary, and the max values are used on the shade_max\n"
20738  " boundary. Set color and width to zero for no plotted boundaries.\n"
20739  "\n"
20740  " min_width (PLFLT, input) : Defines pen color, width used by the\n"
20741  " boundary of shaded region. The min values are used for the\n"
20742  " shade_min boundary, and the max values are used on the shade_max\n"
20743  " boundary. Set color and width to zero for no plotted boundaries.\n"
20744  "\n"
20745  " max_color (PLINT, input) : Defines pen color, width used by the\n"
20746  " boundary of shaded region. The min values are used for the\n"
20747  " shade_min boundary, and the max values are used on the shade_max\n"
20748  " boundary. Set color and width to zero for no plotted boundaries.\n"
20749  "\n"
20750  " max_width (PLFLT, input) : Defines pen color, width used by the\n"
20751  " boundary of shaded region. The min values are used for the\n"
20752  " shade_min boundary, and the max values are used on the shade_max\n"
20753  " boundary. Set color and width to zero for no plotted boundaries.\n"
20754  "\n"
20755  " fill (PLFILL_callback, input) : Routine used to fill the region.\n"
20756  " Use plfill. Future version of PLplot may have other fill\n"
20757  " routines.\n"
20758  "\n"
20759  " rectangular (PLBOOL, input) : Set rectangular to true if rectangles\n"
20760  " map to rectangles after coordinate transformation with pltrl.\n"
20761  " Otherwise, set rectangular to false. If rectangular is set to\n"
20762  " true, plshade tries to save time by filling large rectangles.\n"
20763  " This optimization fails if the coordinate transformation distorts\n"
20764  " the shape of rectangles. For example a plot in polar coordinates\n"
20765  " has to have rectangular set to false.\n"
20766  "\n"
20767  " pltr (PLTRANSFORM_callback, input) : A callback function that\n"
20768  " defines the transformation between the zero-based indices of the\n"
20769  " matrix a and world coordinates. If\n"
20770  " pltr is not supplied (e.g., is set to NULL in the C case), then the x\n"
20771  " indices of a are mapped to the range\n"
20772  " xmin through\n"
20773  " xmax and the y indices of a are mapped to the range\n"
20774  " ymin through\n"
20775  " ymax.For the C case, transformation functions are provided in the\n"
20776  " PLplot library: pltr0 for the identity mapping, and pltr1 and\n"
20777  " pltr2 for arbitrary mappings respectively defined by vectors and\n"
20778  " matrices. In addition, C callback routines for the transformation\n"
20779  " can be supplied by the user such as the mypltr function in\n"
20780  " examples/c/x09c.c which provides a general linear transformation\n"
20781  " between index coordinates and world coordinates.For languages\n"
20782  " other than C you should consult the PLplot documentation for the\n"
20783  " details concerning how PLTRANSFORM_callback arguments are\n"
20784  " interfaced. However, in general, a particular pattern of\n"
20785  " callback-associated arguments such as a tr vector with 6 elements;\n"
20786  " xg and yg vectors; or xg and yg matrices are respectively\n"
20787  " interfaced to a linear-transformation routine similar to the above\n"
20788  " mypltr function; pltr1; and pltr2. Furthermore, some of our more\n"
20789  " sophisticated bindings (see, e.g., the PLplot documentation)\n"
20790  " support native language callbacks for handling index to\n"
20791  " world-coordinate transformations. Examples of these various\n"
20792  " approaches are given in examples/<language>x09*,\n"
20793  " examples/<language>x16*, examples/<language>x20*,\n"
20794  " examples/<language>x21*, and examples/<language>x22*, for all our\n"
20795  " supported languages.\n"
20796  "\n"
20797  " pltr_data (PLPointer, input) : Extra parameter to help pass\n"
20798  " information to pltr0, pltr1, pltr2, or whatever routine that is\n"
20799  " externally supplied.\n"
20800  "\n"
20801  ""},
20802  { (char *)"plslabelfunc", _wrap_plslabelfunc, METH_VARARGS, (char *)"\n"
20803  "Assign a function to use for generating custom axis labels\n"
20804  "\n"
20805  "DESCRIPTION:\n"
20806  "\n"
20807  " This function allows a user to provide their own function to provide\n"
20808  " axis label text. The user function is given the numeric value for a\n"
20809  " point on an axis and returns a string label to correspond with that\n"
20810  " value. Custom axis labels can be enabled by passing appropriate\n"
20811  " arguments to plenv, plbox, plbox3 and similar functions.\n"
20812  "\n"
20813  " This function is used in example 19.\n"
20814  "\n"
20815  "\n"
20816  "\n"
20817  "SYNOPSIS:\n"
20818  "\n"
20819  "plslabelfunc(label_func, label_data)\n"
20820  "\n"
20821  "ARGUMENTS:\n"
20822  "\n"
20823  " label_func (PLLABEL_FUNC_callback, input) : This is the custom\n"
20824  " label function. In order to reset to the default labelling, set\n"
20825  " this to NULL. The labelling function parameters are, in order:\n"
20826  " axis: This indicates which axis a label is being requested for.\n"
20827  " The value will be one of PL_X_AXIS, PL_Y_AXIS or PL_Z_AXIS.\n"
20828  "\n"
20829  " value: This is the value along the axis which is being labelled.\n"
20830  "\n"
20831  " label_text: The string representation of the label value.\n"
20832  "\n"
20833  " length: The maximum length in characters allowed for label_text.\n"
20834  "\n"
20835  "\n"
20836  " label_data (PLPointer, input) : This parameter may be used to pass\n"
20837  " data to the label_func function.\n"
20838  "\n"
20839  ""},
20840  { (char *)"plsmaj", _wrap_plsmaj, METH_VARARGS, (char *)"\n"
20841  "Set length of major ticks\n"
20842  "\n"
20843  "DESCRIPTION:\n"
20844  "\n"
20845  " This sets up the length of the major ticks. The actual length is the\n"
20846  " product of the default length and a scaling factor as for character\n"
20847  " height.\n"
20848  "\n"
20849  " Redacted form: plsmaj(def, scale)\n"
20850  "\n"
20851  " This function is used in example 29.\n"
20852  "\n"
20853  "\n"
20854  "\n"
20855  "SYNOPSIS:\n"
20856  "\n"
20857  "plsmaj(def, scale)\n"
20858  "\n"
20859  "ARGUMENTS:\n"
20860  "\n"
20861  " def (PLFLT, input) : The default length of a major tick in\n"
20862  " millimeters, should be set to zero if the default length is to\n"
20863  " remain unchanged.\n"
20864  "\n"
20865  " scale (PLFLT, input) : Scale factor to be applied to default to get\n"
20866  " actual tick length.\n"
20867  "\n"
20868  ""},
20869  { (char *)"plsmem", _wrap_plsmem, METH_VARARGS, (char *)"\n"
20870  "Set the memory area to be plotted (RGB)\n"
20871  "\n"
20872  "DESCRIPTION:\n"
20873  "\n"
20874  " Set the memory area to be plotted (with the mem or memcairo driver) as\n"
20875  " the dev member of the stream structure. Also set the number of pixels\n"
20876  " in the memory passed in\n"
20877  " plotmem, which is a block of memory\n"
20878  " maxy by\n"
20879  " maxx by 3 bytes long, say: 480 x 640 x 3 (Y, X, RGB)\n"
20880  "\n"
20881  " This memory will have to be freed by the user!\n"
20882  "\n"
20883  " Redacted form: plsmem(maxx, maxy, plotmem)\n"
20884  "\n"
20885  " This function is not used in any examples.\n"
20886  "\n"
20887  "\n"
20888  "\n"
20889  "SYNOPSIS:\n"
20890  "\n"
20891  "plsmem(maxx, maxy, plotmem)\n"
20892  "\n"
20893  "ARGUMENTS:\n"
20894  "\n"
20895  " maxx (PLINT, input) : Size of memory area in the X coordinate.\n"
20896  "\n"
20897  " maxy (PLINT, input) : Size of memory area in the Y coordinate.\n"
20898  "\n"
20899  " plotmem (PLPointer, input) : Pointer to the beginning of a\n"
20900  " user-supplied writeable memory area.\n"
20901  "\n"
20902  ""},
20903  { (char *)"plsmema", _wrap_plsmema, METH_VARARGS, (char *)"\n"
20904  "Set the memory area to be plotted (RGBA)\n"
20905  "\n"
20906  "DESCRIPTION:\n"
20907  "\n"
20908  " Set the memory area to be plotted (with the memcairo driver) as the\n"
20909  " dev member of the stream structure. Also set the number of pixels in\n"
20910  " the memory passed in\n"
20911  " plotmem, which is a block of memory\n"
20912  " maxy by\n"
20913  " maxx by 4 bytes long, say: 480 x 640 x 4 (Y, X, RGBA)\n"
20914  "\n"
20915  " This memory will have to be freed by the user!\n"
20916  "\n"
20917  " Redacted form: plsmema(maxx, maxy, plotmem)\n"
20918  "\n"
20919  " This function is not used in any examples.\n"
20920  "\n"
20921  "\n"
20922  "\n"
20923  "SYNOPSIS:\n"
20924  "\n"
20925  "plsmema(maxx, maxy, plotmem)\n"
20926  "\n"
20927  "ARGUMENTS:\n"
20928  "\n"
20929  " maxx (PLINT, input) : Size of memory area in the X coordinate.\n"
20930  "\n"
20931  " maxy (PLINT, input) : Size of memory area in the Y coordinate.\n"
20932  "\n"
20933  " plotmem (PLPointer, input) : Pointer to the beginning of a\n"
20934  " user-supplied writeable memory area.\n"
20935  "\n"
20936  ""},
20937  { (char *)"plsmin", _wrap_plsmin, METH_VARARGS, (char *)"\n"
20938  "Set length of minor ticks\n"
20939  "\n"
20940  "DESCRIPTION:\n"
20941  "\n"
20942  " This sets up the length of the minor ticks and the length of the\n"
20943  " terminals on error bars. The actual length is the product of the\n"
20944  " default length and a scaling factor as for character height.\n"
20945  "\n"
20946  " Redacted form: plsmin(def, scale)\n"
20947  "\n"
20948  " This function is used in example 29.\n"
20949  "\n"
20950  "\n"
20951  "\n"
20952  "SYNOPSIS:\n"
20953  "\n"
20954  "plsmin(def, scale)\n"
20955  "\n"
20956  "ARGUMENTS:\n"
20957  "\n"
20958  " def (PLFLT, input) : The default length of a minor tick in\n"
20959  " millimeters, should be set to zero if the default length is to\n"
20960  " remain unchanged.\n"
20961  "\n"
20962  " scale (PLFLT, input) : Scale factor to be applied to default to get\n"
20963  " actual tick length.\n"
20964  "\n"
20965  ""},
20966  { (char *)"plsori", _wrap_plsori, METH_VARARGS, (char *)"\n"
20967  "Set orientation\n"
20968  "\n"
20969  "DESCRIPTION:\n"
20970  "\n"
20971  " Set integer plot orientation parameter. This function is identical to\n"
20972  " plsdiori except for the type of the argument, and should be used in\n"
20973  " the same way. See the documentation of plsdiori for details.\n"
20974  "\n"
20975  " Redacted form: plsori(ori)\n"
20976  "\n"
20977  " This function is used in example 3.\n"
20978  "\n"
20979  "\n"
20980  "\n"
20981  "SYNOPSIS:\n"
20982  "\n"
20983  "plsori(ori)\n"
20984  "\n"
20985  "ARGUMENTS:\n"
20986  "\n"
20987  " ori (PLINT, input) : Orientation value (0 for landscape, 1 for\n"
20988  " portrait, etc.) The value is multiplied by 90 degrees to get the\n"
20989  " angle.\n"
20990  "\n"
20991  ""},
20992  { (char *)"plspage", _wrap_plspage, METH_VARARGS, (char *)"\n"
20993  "Set page parameters\n"
20994  "\n"
20995  "DESCRIPTION:\n"
20996  "\n"
20997  " Sets the page configuration (optional). If an individual parameter is\n"
20998  " zero then that parameter value is not updated. Not all parameters are\n"
20999  " recognized by all drivers and the interpretation is device-dependent.\n"
21000  " The X-window driver uses the length and offset parameters to determine\n"
21001  " the window size and location. The length and offset values are\n"
21002  " expressed in units that are specific to the current driver. For\n"
21003  " instance: screen drivers will usually interpret them as number of\n"
21004  " pixels, whereas printer drivers will usually use mm.\n"
21005  "\n"
21006  " This routine, if used, must be called before initializing PLplot. It\n"
21007  " may be called at later times for interactive drivers to change only\n"
21008  " the dpi for subsequent redraws which you can force via a call to\n"
21009  " plreplot. If this function is not called then the page size defaults\n"
21010  " to landscape A4 for drivers which use real world page sizes and 744\n"
21011  " pixels wide by 538 pixels high for raster drivers. The default value\n"
21012  " for dx and dy is 90 pixels per inch for raster drivers.\n"
21013  "\n"
21014  "\n"
21015  "\n"
21016  " Redacted form: plspage(xp, yp, xleng, yleng, xoff, yoff)\n"
21017  "\n"
21018  " This function is used in examples 14 and 31.\n"
21019  "\n"
21020  "\n"
21021  "\n"
21022  "SYNOPSIS:\n"
21023  "\n"
21024  "plspage(xp, yp, xleng, yleng, xoff, yoff)\n"
21025  "\n"
21026  "ARGUMENTS:\n"
21027  "\n"
21028  " xp (PLFLT, input) : Number of pixels per inch (DPI), x. Used only\n"
21029  " by raster drivers, ignored by drivers which use \"real world\" units\n"
21030  " (e.g. mm).\n"
21031  "\n"
21032  " yp (PLFLT, input) : Number of pixels per inch (DPI), y. Used only\n"
21033  " by raster drivers, ignored by drivers which use \"real world\" units\n"
21034  " (e.g. mm).\n"
21035  "\n"
21036  " xleng (PLINT, input) : Page length, x.\n"
21037  "\n"
21038  " yleng (PLINT, input) : Page length, y.\n"
21039  "\n"
21040  " xoff (PLINT, input) : Page offset, x.\n"
21041  "\n"
21042  " yoff (PLINT, input) : Page offset, y.\n"
21043  "\n"
21044  ""},
21045  { (char *)"plspal0", _wrap_plspal0, METH_VARARGS, (char *)"\n"
21046  "Set the cmap0 palette using the specified cmap0*.pal format file\n"
21047  "\n"
21048  "DESCRIPTION:\n"
21049  "\n"
21050  " Set the cmap0 palette using the specified cmap0*.pal format file.\n"
21051  "\n"
21052  " Redacted form: plspal0(filename)\n"
21053  "\n"
21054  " This function is in example 16.\n"
21055  "\n"
21056  "\n"
21057  "\n"
21058  "SYNOPSIS:\n"
21059  "\n"
21060  "plspal0(filename)\n"
21061  "\n"
21062  "ARGUMENTS:\n"
21063  "\n"
21064  " filename (PLCHAR_VECTOR, input) : An ascii character string\n"
21065  " containing the name of the cmap0*.pal file. If this string is\n"
21066  " empty, use the default cmap0*.pal file.\n"
21067  "\n"
21068  ""},
21069  { (char *)"plspal1", _wrap_plspal1, METH_VARARGS, (char *)"\n"
21070  "Set the cmap1 palette using the specified cmap1*.pal format file\n"
21071  "\n"
21072  "DESCRIPTION:\n"
21073  "\n"
21074  " Set the cmap1 palette using the specified cmap1*.pal format file.\n"
21075  "\n"
21076  " Redacted form: plspal1(filename, interpolate)\n"
21077  "\n"
21078  " This function is used in example 16.\n"
21079  "\n"
21080  "\n"
21081  "\n"
21082  "SYNOPSIS:\n"
21083  "\n"
21084  "plspal1(filename, interpolate)\n"
21085  "\n"
21086  "ARGUMENTS:\n"
21087  "\n"
21088  " filename (PLCHAR_VECTOR, input) : An ascii character string\n"
21089  " containing the name of the cmap1*.pal file. If this string is\n"
21090  " empty, use the default cmap1*.pal file.\n"
21091  "\n"
21092  " interpolate (PLBOOL, input) : If this parameter is true, the\n"
21093  " columns containing the intensity index, r, g, b, alpha and\n"
21094  " alt_hue_path in the cmap1*.pal file are used to set the cmap1\n"
21095  " palette with a call to plscmap1la. (The cmap1*.pal header contains\n"
21096  " a flag which controls whether the r, g, b data sent to plscmap1la\n"
21097  " are interpreted as HLS or RGB.) If this parameter is false, the\n"
21098  " intensity index and alt_hue_path columns are ignored and the r, g,\n"
21099  " b (interpreted as RGB), and alpha columns of the cmap1*.pal file\n"
21100  " are used instead to set the cmap1 palette directly with a call to\n"
21101  " plscmap1a.\n"
21102  "\n"
21103  ""},
21104  { (char *)"plspause", _wrap_plspause, METH_VARARGS, (char *)"\n"
21105  "Set the pause (on end-of-page) status\n"
21106  "\n"
21107  "DESCRIPTION:\n"
21108  "\n"
21109  " Set the pause (on end-of-page) status.\n"
21110  "\n"
21111  " Redacted form: plspause(pause)\n"
21112  "\n"
21113  " This function is in examples 14,20.\n"
21114  "\n"
21115  "\n"
21116  "\n"
21117  "SYNOPSIS:\n"
21118  "\n"
21119  "plspause(pause)\n"
21120  "\n"
21121  "ARGUMENTS:\n"
21122  "\n"
21123  " pause (PLBOOL, input) : If pause is true there will be a pause on\n"
21124  " end-of-page for those drivers which support this. Otherwise there\n"
21125  " is no pause.\n"
21126  "\n"
21127  ""},
21128  { (char *)"plsstrm", _wrap_plsstrm, METH_VARARGS, (char *)"\n"
21129  "Set current output stream\n"
21130  "\n"
21131  "DESCRIPTION:\n"
21132  "\n"
21133  " Sets the number of the current output stream. The stream number\n"
21134  " defaults to 0 unless changed by this routine. The first use of this\n"
21135  " routine must be followed by a call initializing PLplot (e.g. plstar).\n"
21136  "\n"
21137  " Redacted form: plsstrm(strm)\n"
21138  "\n"
21139  " This function is examples 1,14,20.\n"
21140  "\n"
21141  "\n"
21142  "\n"
21143  "SYNOPSIS:\n"
21144  "\n"
21145  "plsstrm(strm)\n"
21146  "\n"
21147  "ARGUMENTS:\n"
21148  "\n"
21149  " strm (PLINT, input) : The current stream number.\n"
21150  "\n"
21151  ""},
21152  { (char *)"plssub", _wrap_plssub, METH_VARARGS, (char *)"\n"
21153  "Set the number of subpages in x and y\n"
21154  "\n"
21155  "DESCRIPTION:\n"
21156  "\n"
21157  " Set the number of subpages in x and y.\n"
21158  "\n"
21159  " Redacted form: plssub(nx, ny)\n"
21160  "\n"
21161  " This function is examples 1,2,14,21,25,27.\n"
21162  "\n"
21163  "\n"
21164  "\n"
21165  "SYNOPSIS:\n"
21166  "\n"
21167  "plssub(nx, ny)\n"
21168  "\n"
21169  "ARGUMENTS:\n"
21170  "\n"
21171  " nx (PLINT, input) : Number of windows in x direction (i.e., number\n"
21172  " of window columns).\n"
21173  "\n"
21174  " ny (PLINT, input) : Number of windows in y direction (i.e., number\n"
21175  " of window rows).\n"
21176  "\n"
21177  ""},
21178  { (char *)"plssym", _wrap_plssym, METH_VARARGS, (char *)"\n"
21179  "Set symbol size\n"
21180  "\n"
21181  "DESCRIPTION:\n"
21182  "\n"
21183  " This sets up the size of all subsequent symbols drawn by plpoin and\n"
21184  " plsym. The actual height of a symbol is the product of the default\n"
21185  " symbol size and a scaling factor as for the character height.\n"
21186  "\n"
21187  " Redacted form: plssym(def, scale)\n"
21188  "\n"
21189  " This function is used in example 29.\n"
21190  "\n"
21191  "\n"
21192  "\n"
21193  "SYNOPSIS:\n"
21194  "\n"
21195  "plssym(def, scale)\n"
21196  "\n"
21197  "ARGUMENTS:\n"
21198  "\n"
21199  " def (PLFLT, input) : The default height of a symbol in millimeters,\n"
21200  " should be set to zero if the default height is to remain\n"
21201  " unchanged.\n"
21202  "\n"
21203  " scale (PLFLT, input) : Scale factor to be applied to default to get\n"
21204  " actual symbol height.\n"
21205  "\n"
21206  ""},
21207  { (char *)"plstar", _wrap_plstar, METH_VARARGS, (char *)"\n"
21208  "Initialization\n"
21209  "\n"
21210  "DESCRIPTION:\n"
21211  "\n"
21212  " Initializing the plotting package. The program prompts for the device\n"
21213  " keyword or number of the desired output device. Hitting a RETURN in\n"
21214  " response to the prompt is the same as selecting the first device. If\n"
21215  " only one device is enabled when PLplot is installed, plstar will issue\n"
21216  " no prompt. The output device is divided into nx by ny subpages, each\n"
21217  " of which may be used independently. The subroutine pladv is used to\n"
21218  " advance from one subpage to the next.\n"
21219  "\n"
21220  " Redacted form: plstar(nx, ny)\n"
21221  "\n"
21222  " This function is used in example 1.\n"
21223  "\n"
21224  "\n"
21225  "\n"
21226  "SYNOPSIS:\n"
21227  "\n"
21228  "plstar(nx, ny)\n"
21229  "\n"
21230  "ARGUMENTS:\n"
21231  "\n"
21232  " nx (PLINT, input) : Number of subpages to divide output page in the\n"
21233  " x direction.\n"
21234  "\n"
21235  " ny (PLINT, input) : Number of subpages to divide output page in the\n"
21236  " y direction.\n"
21237  "\n"
21238  ""},
21239  { (char *)"plstart", _wrap_plstart, METH_VARARGS, (char *)"\n"
21240  "Initialization\n"
21241  "\n"
21242  "DESCRIPTION:\n"
21243  "\n"
21244  " Alternative to plstar for initializing the plotting package. The\n"
21245  " device name keyword for the desired output device must be supplied as\n"
21246  " an argument. These keywords are the same as those printed out by\n"
21247  " plstar. If the requested device is not available, or if the input\n"
21248  " string is empty or begins with ``?'', the prompted start up of plstar\n"
21249  " is used. This routine also divides the output device page into nx by\n"
21250  " ny subpages, each of which may be used independently. The subroutine\n"
21251  " pladv is used to advance from one subpage to the next.\n"
21252  "\n"
21253  " Redacted form: General: plstart(devname, nx, ny)\n"
21254  " Perl/PDL: plstart(nx, ny, devname)\n"
21255  "\n"
21256  "\n"
21257  " This function is not used in any examples.\n"
21258  "\n"
21259  "\n"
21260  "\n"
21261  "SYNOPSIS:\n"
21262  "\n"
21263  "plstart(devname, nx, ny)\n"
21264  "\n"
21265  "ARGUMENTS:\n"
21266  "\n"
21267  " devname (PLCHAR_VECTOR, input) : An ascii character string\n"
21268  " containing the device name keyword of the required output device.\n"
21269  " If\n"
21270  " devname is NULL or if the first character of the string is a ``?'',\n"
21271  " the normal (prompted) start up is used.\n"
21272  "\n"
21273  " nx (PLINT, input) : Number of subpages to divide output page in the\n"
21274  " x direction.\n"
21275  "\n"
21276  " ny (PLINT, input) : Number of subpages to divide output page in the\n"
21277  " y direction.\n"
21278  "\n"
21279  ""},
21280  { (char *)"plstransform", _wrap_plstransform, METH_VARARGS, (char *)"\n"
21281  "Set a global coordinate transform function\n"
21282  "\n"
21283  "DESCRIPTION:\n"
21284  "\n"
21285  " This function can be used to define a coordinate transformation which\n"
21286  " affects all elements drawn within the current plot window. The\n"
21287  " coordinate_transform callback function is similar to that provided for\n"
21288  " the plmap and plmeridians functions. The coordinate_transform_data\n"
21289  " parameter may be used to pass extra data to coordinate_transform.\n"
21290  "\n"
21291  " Redacted form: General: plstransform(coordinate_transform,\n"
21292  " coordinate_transform_data)\n"
21293  "\n"
21294  "\n"
21295  " This function is used in examples 19 and 22.\n"
21296  "\n"
21297  "\n"
21298  "\n"
21299  "SYNOPSIS:\n"
21300  "\n"
21301  "plstransform(coordinate_transform, coordinate_transform_data)\n"
21302  "\n"
21303  "ARGUMENTS:\n"
21304  "\n"
21305  " coordinate_transform (PLTRANSFORM_callback, input) : A callback\n"
21306  " function that defines the transformation from the input (x, y)\n"
21307  " world coordinates to new PLplot world coordinates. If\n"
21308  " coordinate_transform is not supplied (e.g., is set to NULL in the C\n"
21309  " case), then no transform is applied.\n"
21310  "\n"
21311  " coordinate_transform_data (PLPointer, input) : Optional extra data\n"
21312  " for\n"
21313  " coordinate_transform.\n"
21314  "\n"
21315  ""},
21316  { (char *)"plstring", _wrap_plstring, METH_VARARGS, (char *)"\n"
21317  "Plot a glyph at the specified points\n"
21318  "\n"
21319  "DESCRIPTION:\n"
21320  "\n"
21321  " Plot a glyph at the specified points. (Supersedes plpoin and plsym\n"
21322  " because many[!] more glyphs are accessible with plstring.) The glyph\n"
21323  " is specified with a PLplot user string. Note that the user string is\n"
21324  " not actually limited to one glyph so it is possible (but not normally\n"
21325  " useful) to plot more than one glyph at the specified points with this\n"
21326  " function. As with plmtex and plptex, the user string can contain FCI\n"
21327  " escapes to determine the font, UTF-8 code to determine the glyph or\n"
21328  " else PLplot escapes for Hershey or unicode text to determine the\n"
21329  " glyph.\n"
21330  "\n"
21331  " Redacted form: plstring(x, y, string)\n"
21332  "\n"
21333  " This function is used in examples 4, 21 and 26.\n"
21334  "\n"
21335  "\n"
21336  "\n"
21337  "SYNOPSIS:\n"
21338  "\n"
21339  "plstring(n, x, y, string)\n"
21340  "\n"
21341  "ARGUMENTS:\n"
21342  "\n"
21343  " n (PLINT, input) : Number of points in the x and y vectors.\n"
21344  "\n"
21345  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
21346  " the points.\n"
21347  "\n"
21348  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
21349  " the points.\n"
21350  "\n"
21351  " string (PLCHAR_VECTOR, input) : A UTF-8 character string containing\n"
21352  " the glyph(s) to be plotted at each of the n points.\n"
21353  "\n"
21354  ""},
21355  { (char *)"plstring3", _wrap_plstring3, METH_VARARGS, (char *)"\n"
21356  "Plot a glyph at the specified 3D points\n"
21357  "\n"
21358  "DESCRIPTION:\n"
21359  "\n"
21360  " Plot a glyph at the specified 3D points. (Supersedes plpoin3 because\n"
21361  " many[!] more glyphs are accessible with plstring3.) Set up the call to\n"
21362  " this function similar to what is done for plline3. The glyph is\n"
21363  " specified with a PLplot user string. Note that the user string is not\n"
21364  " actually limited to one glyph so it is possible (but not normally\n"
21365  " useful) to plot more than one glyph at the specified points with this\n"
21366  " function. As with plmtex and plptex, the user string can contain FCI\n"
21367  " escapes to determine the font, UTF-8 code to determine the glyph or\n"
21368  " else PLplot escapes for Hershey or unicode text to determine the\n"
21369  " glyph.\n"
21370  "\n"
21371  " Redacted form: plstring3(x, y, z, string)\n"
21372  "\n"
21373  " This function is used in example 18.\n"
21374  "\n"
21375  "\n"
21376  "\n"
21377  "SYNOPSIS:\n"
21378  "\n"
21379  "plstring3(n, x, y, z, string)\n"
21380  "\n"
21381  "ARGUMENTS:\n"
21382  "\n"
21383  " n (PLINT, input) : Number of points in the x, y, and z vectors.\n"
21384  "\n"
21385  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
21386  " the points.\n"
21387  "\n"
21388  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
21389  " the points.\n"
21390  "\n"
21391  " z (PLFLT_VECTOR, input) : A vector containing the z coordinates of\n"
21392  " the points.\n"
21393  "\n"
21394  " string (PLCHAR_VECTOR, input) : A UTF-8 character string containing\n"
21395  " the glyph(s) to be plotted at each of the n points. points.\n"
21396  "\n"
21397  ""},
21398  { (char *)"plstripa", _wrap_plstripa, METH_VARARGS, (char *)"\n"
21399  "Add a point to a strip chart\n"
21400  "\n"
21401  "DESCRIPTION:\n"
21402  "\n"
21403  " Add a point to a given pen of a given strip chart. There is no need\n"
21404  " for all pens to have the same number of points or to be equally\n"
21405  " sampled in the x coordinate. Allocates memory and rescales as\n"
21406  " necessary.\n"
21407  "\n"
21408  " Redacted form: plstripa(id, pen, x, y)\n"
21409  "\n"
21410  " This function is used in example 17.\n"
21411  "\n"
21412  "\n"
21413  "\n"
21414  "SYNOPSIS:\n"
21415  "\n"
21416  "plstripa(id, pen, x, y)\n"
21417  "\n"
21418  "ARGUMENTS:\n"
21419  "\n"
21420  " id (PLINT, input) : Identification number of the strip chart (set\n"
21421  " up in plstripc).\n"
21422  "\n"
21423  " pen (PLINT, input) : Pen number (ranges from 0 to 3).\n"
21424  "\n"
21425  " x (PLFLT, input) : X coordinate of point to plot.\n"
21426  "\n"
21427  " y (PLFLT, input) : Y coordinate of point to plot.\n"
21428  "\n"
21429  ""},
21430  { (char *)"plstripc", _wrap_plstripc, METH_VARARGS, (char *)"\n"
21431  "Create a 4-pen strip chart\n"
21432  "\n"
21433  "DESCRIPTION:\n"
21434  "\n"
21435  " Create a 4-pen strip chart, to be used afterwards by plstripa\n"
21436  "\n"
21437  " Redacted form: General: plstripc(id, xspec, yspec, xmin, xmax, xjump,\n"
21438  " ymin, ymax, xlpos, ylpos, y_ascl, acc, colbox, collab, colline,\n"
21439  " styline, legline, labx, laby, labz)\n"
21440  " Perl/PDL: plstripc(xmin, xmax, xjump, ymin, ymax, xlpos,\n"
21441  " ylpos, y_ascl, acc, colbox, collab, colline, styline, id, xspec,\n"
21442  " ypsec, legline, labx, laby, labtop)\n"
21443  "\n"
21444  "\n"
21445  " This function is used in example 17.\n"
21446  "\n"
21447  "\n"
21448  "\n"
21449  "SYNOPSIS:\n"
21450  "\n"
21451  "plstripc(id, xspec, yspec, xmin, xmax, xjump, ymin, ymax, xlpos, ylpos, y_ascl, acc, colbox, collab, colline, styline, legline[], labx, laby, labtop)\n"
21452  "\n"
21453  "ARGUMENTS:\n"
21454  "\n"
21455  " id (PLINT_NC_SCALAR, output) : Returned value of the identification\n"
21456  " number of the strip chart to use on plstripa and plstripd.\n"
21457  "\n"
21458  " xspec (PLCHAR_VECTOR, input) : An ascii character string containing\n"
21459  " the x-axis specification as in plbox.\n"
21460  "\n"
21461  " yspec (PLCHAR_VECTOR, input) : An ascii character string containing\n"
21462  " the y-axis specification as in plbox.\n"
21463  "\n"
21464  " xmin (PLFLT, input) : Initial coordinates of plot box; they will\n"
21465  " change as data are added.\n"
21466  "\n"
21467  " xmax (PLFLT, input) : Initial coordinates of plot box; they will\n"
21468  " change as data are added.\n"
21469  "\n"
21470  " xjump (PLFLT, input) : When x attains xmax, the length of the plot\n"
21471  " is multiplied by the factor (1 +\n"
21472  " xjump) .\n"
21473  "\n"
21474  " ymin (PLFLT, input) : Initial coordinates of plot box; they will\n"
21475  " change as data are added.\n"
21476  "\n"
21477  " ymax (PLFLT, input) : Initial coordinates of plot box; they will\n"
21478  " change as data are added.\n"
21479  "\n"
21480  " xlpos (PLFLT, input) : X legend box position (range from 0 to 1).\n"
21481  "\n"
21482  " ylpos (PLFLT, input) : Y legend box position (range from 0 to 1).\n"
21483  "\n"
21484  " y_ascl (PLBOOL, input) : Autoscale y between x jumps if y_ascl is\n"
21485  " true, otherwise not.\n"
21486  "\n"
21487  " acc (PLBOOL, input) : Accumulate strip plot if acc is true,\n"
21488  " otherwise slide display.\n"
21489  "\n"
21490  " colbox (PLINT, input) : Plot box color index (cmap0).\n"
21491  "\n"
21492  " collab (PLINT, input) : Legend color index (cmap0).\n"
21493  "\n"
21494  " colline (PLINT_VECTOR, input) : A vector containing the cmap0 color\n"
21495  " indices for the 4 pens.\n"
21496  "\n"
21497  " styline (PLINT_VECTOR, input) : A vector containing the line style\n"
21498  " indices for the 4 pens.\n"
21499  "\n"
21500  " legline (PLCHAR_MATRIX, input) : A vector of UTF-8 character\n"
21501  " strings containing legends for the 4 pens.\n"
21502  "\n"
21503  " labx (PLCHAR_VECTOR, input) : A UTF-8 character string containing\n"
21504  " the label for the x axis.\n"
21505  "\n"
21506  " laby (PLCHAR_VECTOR, input) : A UTF-8 character string containing\n"
21507  " the label for the y axis.\n"
21508  "\n"
21509  " labtop (PLCHAR_VECTOR, input) : A UTF-8 character string containing\n"
21510  " the plot title.\n"
21511  "\n"
21512  ""},
21513  { (char *)"plstripd", _wrap_plstripd, METH_VARARGS, (char *)"\n"
21514  "Deletes and releases memory used by a strip chart\n"
21515  "\n"
21516  "DESCRIPTION:\n"
21517  "\n"
21518  " Deletes and releases memory used by a strip chart.\n"
21519  "\n"
21520  " Redacted form: plstripd(id)\n"
21521  "\n"
21522  " This function is used in example 17.\n"
21523  "\n"
21524  "\n"
21525  "\n"
21526  "SYNOPSIS:\n"
21527  "\n"
21528  "plstripd(id)\n"
21529  "\n"
21530  "ARGUMENTS:\n"
21531  "\n"
21532  " id (PLINT, input) : Identification number of strip chart to delete.\n"
21533  "\n"
21534  ""},
21535  { (char *)"plstyl", _wrap_plstyl, METH_VARARGS, (char *)"\n"
21536  "Set line style\n"
21537  "\n"
21538  "DESCRIPTION:\n"
21539  "\n"
21540  " This sets up the line style for all lines subsequently drawn. A line\n"
21541  " consists of segments in which the pen is alternately down and up. The\n"
21542  " lengths of these segments are passed in the vectors mark and space\n"
21543  " respectively. The number of mark-space pairs is specified by nms. In\n"
21544  " order to return the line style to the default continuous line, plstyl\n"
21545  " should be called with nms =0 .(see also pllsty)\n"
21546  "\n"
21547  " Redacted form: plstyl(mark, space)\n"
21548  "\n"
21549  " This function is used in examples 1, 9, and 14.\n"
21550  "\n"
21551  "\n"
21552  "\n"
21553  "SYNOPSIS:\n"
21554  "\n"
21555  "plstyl(nms, mark, space)\n"
21556  "\n"
21557  "ARGUMENTS:\n"
21558  "\n"
21559  " nms (PLINT, input) : The number of mark and space elements in a\n"
21560  " line. Thus a simple broken line can be obtained by setting nms=1\n"
21561  " . A continuous line is specified by setting nms=0 .\n"
21562  "\n"
21563  " mark (PLINT_VECTOR, input) : A vector containing the lengths of the\n"
21564  " segments during which the pen is down, measured in micrometers.\n"
21565  "\n"
21566  " space (PLINT_VECTOR, input) : A vector containing the lengths of\n"
21567  " the segments during which the pen is up, measured in micrometers.\n"
21568  "\n"
21569  ""},
21570  { (char *)"plsvect", _wrap_plsvect, METH_VARARGS, (char *)"\n"
21571  "Set arrow style for vector plots\n"
21572  "\n"
21573  "DESCRIPTION:\n"
21574  "\n"
21575  " Set the style for the arrow used by plvect to plot vectors.\n"
21576  "\n"
21577  " Redacted form: plsvect(arrowx, arrowy, fill)\n"
21578  "\n"
21579  " This function is used in example 22.\n"
21580  "\n"
21581  "\n"
21582  "\n"
21583  "SYNOPSIS:\n"
21584  "\n"
21585  "plsvect(arrowx, arrowy, npts, fill)\n"
21586  "\n"
21587  "ARGUMENTS:\n"
21588  "\n"
21589  " arrowx, arrowy (PLFLT_VECTOR, input) : A pair of vectors containing\n"
21590  " the x and y points which make up the arrow. The arrow is plotted\n"
21591  " by joining these points to form a polygon. The scaling assumes\n"
21592  " that the x and y points in the arrow lie in the range -0.5 <= x,y\n"
21593  " <= 0.5. If both arrowx and arrowy are NULL then the arrow style\n"
21594  " will be reset to its default.\n"
21595  "\n"
21596  " npts (PLINT, input) : Number of points in the vectors arrowx and\n"
21597  " arrowy.\n"
21598  "\n"
21599  " fill (PLBOOL, input) : If fill is true then the arrow is closed, if\n"
21600  " fill is false then the arrow is open.\n"
21601  "\n"
21602  ""},
21603  { (char *)"plsvpa", _wrap_plsvpa, METH_VARARGS, (char *)"\n"
21604  "Specify viewport in absolute coordinates\n"
21605  "\n"
21606  "DESCRIPTION:\n"
21607  "\n"
21608  " Alternate routine to plvpor for setting up the viewport. This routine\n"
21609  " should be used only if the viewport is required to have a definite\n"
21610  " size in millimeters. The routine plgspa is useful for finding out the\n"
21611  " size of the current subpage.\n"
21612  "\n"
21613  " Redacted form: plsvpa(xmin, xmax, ymin, ymax)\n"
21614  "\n"
21615  " This function is used in example 10.\n"
21616  "\n"
21617  "\n"
21618  "\n"
21619  "SYNOPSIS:\n"
21620  "\n"
21621  "plsvpa(xmin, xmax, ymin, ymax)\n"
21622  "\n"
21623  "ARGUMENTS:\n"
21624  "\n"
21625  " xmin (PLFLT, input) : The distance of the left-hand edge of the\n"
21626  " viewport from the left-hand edge of the subpage in millimeters.\n"
21627  "\n"
21628  " xmax (PLFLT, input) : The distance of the right-hand edge of the\n"
21629  " viewport from the left-hand edge of the subpage in millimeters.\n"
21630  "\n"
21631  " ymin (PLFLT, input) : The distance of the bottom edge of the\n"
21632  " viewport from the bottom edge of the subpage in millimeters.\n"
21633  "\n"
21634  " ymax (PLFLT, input) : The distance of the top edge of the viewport\n"
21635  " from the bottom edge of the subpage in millimeters.\n"
21636  "\n"
21637  ""},
21638  { (char *)"plsxax", _wrap_plsxax, METH_VARARGS, (char *)"\n"
21639  "Set x axis parameters\n"
21640  "\n"
21641  "DESCRIPTION:\n"
21642  "\n"
21643  " Sets values of the digmax and digits flags for the x axis. See the\n"
21644  " PLplot documentation for more information.\n"
21645  "\n"
21646  " Redacted form: plsxax(digmax, digits)\n"
21647  "\n"
21648  " This function is used in example 31.\n"
21649  "\n"
21650  "\n"
21651  "\n"
21652  "SYNOPSIS:\n"
21653  "\n"
21654  "plsxax(digmax, digits)\n"
21655  "\n"
21656  "ARGUMENTS:\n"
21657  "\n"
21658  " digmax (PLINT, input) : Variable to set the maximum number of\n"
21659  " digits for the x axis. If nonzero, the printed label will be\n"
21660  " switched to a floating-point representation when the number of\n"
21661  " digits exceeds digmax.\n"
21662  "\n"
21663  " digits (PLINT, input) : Field digits value. Currently, changing\n"
21664  " its value here has no effect since it is set only by plbox or\n"
21665  " plbox3. However, the user may obtain its value after a call to\n"
21666  " either of these functions by calling plgxax.\n"
21667  "\n"
21668  ""},
21669  { (char *)"plsyax", _wrap_plsyax, METH_VARARGS, (char *)"\n"
21670  "Set y axis parameters\n"
21671  "\n"
21672  "DESCRIPTION:\n"
21673  "\n"
21674  " Identical to plsxax, except that arguments are flags for y axis. See\n"
21675  " the description of plsxax for more detail.\n"
21676  "\n"
21677  " Redacted form: plsyax(digmax, digits)\n"
21678  "\n"
21679  " This function is used in examples 1, 14, and 31.\n"
21680  "\n"
21681  "\n"
21682  "\n"
21683  "SYNOPSIS:\n"
21684  "\n"
21685  "plsyax(digmax, digits)\n"
21686  "\n"
21687  "ARGUMENTS:\n"
21688  "\n"
21689  " digmax (PLINT, input) : Variable to set the maximum number of\n"
21690  " digits for the y axis. If nonzero, the printed label will be\n"
21691  " switched to a floating-point representation when the number of\n"
21692  " digits exceeds digmax.\n"
21693  "\n"
21694  " digits (PLINT, input) : Field digits value. Currently, changing\n"
21695  " its value here has no effect since it is set only by plbox or\n"
21696  " plbox3. However, the user may obtain its value after a call to\n"
21697  " either of these functions by calling plgyax.\n"
21698  "\n"
21699  ""},
21700  { (char *)"plsym", _wrap_plsym, METH_VARARGS, (char *)"\n"
21701  "Plot a glyph at the specified points\n"
21702  "\n"
21703  "DESCRIPTION:\n"
21704  "\n"
21705  " Plot a glyph at the specified points. (This function is largely\n"
21706  " superseded by plstring which gives access to many[!] more glyphs.)\n"
21707  "\n"
21708  " Redacted form: plsym(x, y, code)\n"
21709  "\n"
21710  " This function is used in example 7.\n"
21711  "\n"
21712  "\n"
21713  "\n"
21714  "SYNOPSIS:\n"
21715  "\n"
21716  "plsym(n, x, y, code)\n"
21717  "\n"
21718  "ARGUMENTS:\n"
21719  "\n"
21720  " n (PLINT, input) : Number of points in the x and y vectors.\n"
21721  "\n"
21722  " x (PLFLT_VECTOR, input) : A vector containing the x coordinates of\n"
21723  " the points.\n"
21724  "\n"
21725  " y (PLFLT_VECTOR, input) : A vector containing the y coordinates of\n"
21726  " the points.\n"
21727  "\n"
21728  " code (PLINT, input) : Hershey symbol code corresponding to a glyph\n"
21729  " to be plotted at each of the n points.\n"
21730  "\n"
21731  ""},
21732  { (char *)"plszax", _wrap_plszax, METH_VARARGS, (char *)"\n"
21733  "Set z axis parameters\n"
21734  "\n"
21735  "DESCRIPTION:\n"
21736  "\n"
21737  " Identical to plsxax, except that arguments are flags for z axis. See\n"
21738  " the description of plsxax for more detail.\n"
21739  "\n"
21740  " Redacted form: plszax(digmax, digits)\n"
21741  "\n"
21742  " This function is used in example 31.\n"
21743  "\n"
21744  "\n"
21745  "\n"
21746  "SYNOPSIS:\n"
21747  "\n"
21748  "plszax(digmax, digits)\n"
21749  "\n"
21750  "ARGUMENTS:\n"
21751  "\n"
21752  " digmax (PLINT, input) : Variable to set the maximum number of\n"
21753  " digits for the z axis. If nonzero, the printed label will be\n"
21754  " switched to a floating-point representation when the number of\n"
21755  " digits exceeds digmax.\n"
21756  "\n"
21757  " digits (PLINT, input) : Field digits value. Currently, changing\n"
21758  " its value here has no effect since it is set only by plbox or\n"
21759  " plbox3. However, the user may obtain its value after a call to\n"
21760  " either of these functions by calling plgzax.\n"
21761  "\n"
21762  ""},
21763  { (char *)"pltext", _wrap_pltext, METH_VARARGS, (char *)"\n"
21764  "Switch to text screen\n"
21765  "\n"
21766  "DESCRIPTION:\n"
21767  "\n"
21768  " Sets an interactive device to text mode, used in conjunction with\n"
21769  " plgra to allow graphics and text to be interspersed. On a device\n"
21770  " which supports separate text and graphics windows, this command causes\n"
21771  " control to be switched to the text window. This can be useful for\n"
21772  " printing diagnostic messages or getting user input, which would\n"
21773  " otherwise interfere with the plots. The program must switch back to\n"
21774  " the graphics window before issuing plot commands, as the text (or\n"
21775  " console) device will probably become quite confused otherwise. If\n"
21776  " already in text mode, this command is ignored. It is also ignored on\n"
21777  " devices which only support a single window or use a different method\n"
21778  " for shifting focus (see also plgra).\n"
21779  "\n"
21780  " Redacted form: pltext()\n"
21781  "\n"
21782  " This function is used in example 1.\n"
21783  "\n"
21784  "\n"
21785  "\n"
21786  "SYNOPSIS:\n"
21787  "\n"
21788  "pltext()\n"
21789  "\n"
21790  ""},
21791  { (char *)"pltimefmt", _wrap_pltimefmt, METH_VARARGS, (char *)"\n"
21792  "Set format for date / time labels\n"
21793  "\n"
21794  "DESCRIPTION:\n"
21795  "\n"
21796  " Sets the format for date / time labels. To enable date / time format\n"
21797  " labels see the options to plbox, plbox3, and plenv.\n"
21798  "\n"
21799  " Redacted form: pltimefmt(fmt)\n"
21800  "\n"
21801  " This function is used in example 29.\n"
21802  "\n"
21803  "\n"
21804  "\n"
21805  "SYNOPSIS:\n"
21806  "\n"
21807  "pltimefmt(fmt)\n"
21808  "\n"
21809  "ARGUMENTS:\n"
21810  "\n"
21811  " fmt (PLCHAR_VECTOR, input) : An ascii character string which is\n"
21812  " interpreted similarly to the format specifier of typical system\n"
21813  " strftime routines except that PLplot ignores locale and also\n"
21814  " supplies some useful extensions in the context of plotting. All\n"
21815  " text in the string is printed as-is other than conversion\n"
21816  " specifications which take the form of a '%' character followed by\n"
21817  " further conversion specification character. The conversion\n"
21818  " specifications which are similar to those provided by system\n"
21819  " strftime routines are the following: %a: The abbreviated (English)\n"
21820  " weekday name.\n"
21821  " %A: The full (English) weekday name.\n"
21822  " %b: The abbreviated (English) month name.\n"
21823  " %B: The full (English) month name.\n"
21824  " %c: Equivalent to %a %b %d %T %Y (non-ISO).\n"
21825  " %C: The century number (year/100) as a 2-digit integer.\n"
21826  " %d: The day of the month as a decimal number (range 01 to 31).\n"
21827  " %D: Equivalent to %m/%d/%y (non-ISO).\n"
21828  " %e: Like %d, but a leading zero is replaced by a space.\n"
21829  " %F: Equivalent to %Y-%m-%d (the ISO 8601 date format).\n"
21830  " %h: Equivalent to %b.\n"
21831  " %H: The hour as a decimal number using a 24-hour clock (range\n"
21832  " 00 to 23).\n"
21833  " %I: The hour as a decimal number using a 12-hour clock (range\n"
21834  " 01 to 12).\n"
21835  " %j: The day of the year as a decimal number (range 001 to\n"
21836  " 366).\n"
21837  " %k: The hour (24-hour clock) as a decimal number (range 0 to\n"
21838  " 23); single digits are preceded by a blank. (See also %H.)\n"
21839  " %l: The hour (12-hour clock) as a decimal number (range 1 to\n"
21840  " 12); single digits are preceded by a blank. (See also %I.)\n"
21841  " %m: The month as a decimal number (range 01 to 12).\n"
21842  " %M: The minute as a decimal number (range 00 to 59).\n"
21843  " %n: A newline character.\n"
21844  " %p: Either \"AM\" or \"PM\" according to the given time value.\n"
21845  " Noon is treated as \"PM\" and midnight as \"AM\".\n"
21846  " %r: Equivalent to %I:%M:%S %p.\n"
21847  " %R: The time in 24-hour notation (%H:%M). For a version\n"
21848  " including the seconds, see %T below.\n"
21849  " %s: The number of seconds since the Epoch, 1970-01-01 00:00:00\n"
21850  " +0000 (UTC).\n"
21851  " %S: The second as a decimal number (range 00 to 60). (The\n"
21852  " range is up to 60 to allow for occasional leap seconds.)\n"
21853  " %t: A tab character.\n"
21854  " %T: The time in 24-hour notation (%H:%M:%S).\n"
21855  " %u: The day of the week as a decimal, range 1 to 7, Monday\n"
21856  " being 1. See also %w.\n"
21857  " %U: The week number of the current year as a decimal number,\n"
21858  " range 00 to 53, starting with the first Sunday as the first\n"
21859  " day of week 01. See also %V and %W.\n"
21860  " %v: Equivalent to %e-%b-%Y.\n"
21861  " %V: The ISO 8601 week number of the current year as a decimal\n"
21862  " number, range 01 to 53, where week 1 is the first week that\n"
21863  " has at least 4 days in the new year. See also %U and %W.\n"
21864  " %w: The day of the week as a decimal, range 0 to 6, Sunday\n"
21865  " being 0. See also %u.\n"
21866  " %W: The week number of the current year as a decimal number,\n"
21867  " range 00 to 53, starting with the first Monday as the first\n"
21868  " day of week 01.\n"
21869  " %x: Equivalent to %a %b %d %Y.\n"
21870  " %X: Equivalent to %T.\n"
21871  " %y: The year as a decimal number without a century (range 00\n"
21872  " to 99).\n"
21873  " %Y: The year as a decimal number including a century.\n"
21874  " %z: The UTC time-zone string = \"+0000\".\n"
21875  " %Z: The UTC time-zone abbreviation = \"UTC\".\n"
21876  " %+: The UTC date and time in default format of the Unix date\n"
21877  " command which is equivalent to %a %b %d %T %Z %Y.\n"
21878  " %%: A literal \"%\" character.\n"
21879  " The conversion specifications which are extensions to those normally\n"
21880  " provided by system strftime routines are the following: %(0-9):\n"
21881  " The fractional part of the seconds field (including leading\n"
21882  " decimal point) to the specified accuracy. Thus %S%3 would give\n"
21883  " seconds to millisecond accuracy (00.000).\n"
21884  " %.: The fractional part of the seconds field (including\n"
21885  " leading decimal point) to the maximum available accuracy. Thus\n"
21886  " %S%. would give seconds with fractional part up to 9 decimal\n"
21887  " places if available.\n"
21888  "\n"
21889  ""},
21890  { (char *)"plvasp", _wrap_plvasp, METH_VARARGS, (char *)"\n"
21891  "Specify viewport using aspect ratio only\n"
21892  "\n"
21893  "DESCRIPTION:\n"
21894  "\n"
21895  " Selects the largest viewport with the given aspect ratio within the\n"
21896  " subpage that leaves a standard margin (left-hand margin of eight\n"
21897  " character heights, and a margin around the other three sides of five\n"
21898  " character heights).\n"
21899  "\n"
21900  " Redacted form: plvasp(aspect)\n"
21901  "\n"
21902  " This function is used in example 13.\n"
21903  "\n"
21904  "\n"
21905  "\n"
21906  "SYNOPSIS:\n"
21907  "\n"
21908  "plvasp(aspect)\n"
21909  "\n"
21910  "ARGUMENTS:\n"
21911  "\n"
21912  " aspect (PLFLT, input) : Ratio of length of y axis to length of x\n"
21913  " axis of resulting viewport.\n"
21914  "\n"
21915  ""},
21916  { (char *)"plvect", _wrap_plvect, METH_VARARGS, (char *)"\n"
21917  "Vector plot\n"
21918  "\n"
21919  "DESCRIPTION:\n"
21920  "\n"
21921  " Draws a plot of vector data contained in the matrices (\n"
21922  " u[\n"
21923  " nx][\n"
21924  " ny],\n"
21925  " v[\n"
21926  " nx][\n"
21927  " ny]) . The scaling factor for the vectors is given by scale. A\n"
21928  " transformation routine pointed to by pltr with a pointer pltr_data for\n"
21929  " additional data required by the transformation routine to map indices\n"
21930  " within the matrices to the world coordinates. The style of the vector\n"
21931  " arrow may be set using plsvect.\n"
21932  "\n"
21933  " Redacted form: plvect(u, v, scale, pltr, pltr_data) where (see above\n"
21934  " discussion) the pltr, pltr_data callback arguments are sometimes\n"
21935  " replaced by a tr vector with 6 elements, or xg and yg array arguments\n"
21936  " with either one or two dimensions.\n"
21937  "\n"
21938  " This function is used in example 22.\n"
21939  "\n"
21940  "\n"
21941  "\n"
21942  "SYNOPSIS:\n"
21943  "\n"
21944  "plvect(u, v, nx, ny, scale, pltr, pltr_data)\n"
21945  "\n"
21946  "ARGUMENTS:\n"
21947  "\n"
21948  " u, v (PLFLT_MATRIX, input) : A pair of matrices containing the x\n"
21949  " and y components of the vector data to be plotted.\n"
21950  "\n"
21951  " nx, ny (PLINT, input) : Dimensions of the matrices u and v.\n"
21952  "\n"
21953  " scale (PLFLT, input) : Parameter to control the scaling factor of\n"
21954  " the vectors for plotting. If scale = 0 then the scaling factor is\n"
21955  " automatically calculated for the data. If scale < 0 then the\n"
21956  " scaling factor is automatically calculated for the data and then\n"
21957  " multiplied by -\n"
21958  " scale. If scale > 0 then the scaling factor is set to scale.\n"
21959  "\n"
21960  " pltr (PLTRANSFORM_callback, input) : A callback function that\n"
21961  " defines the transformation between the zero-based indices of the\n"
21962  " matrices u and v and world coordinates.For the C case,\n"
21963  " transformation functions are provided in the PLplot library: pltr0\n"
21964  " for the identity mapping, and pltr1 and pltr2 for arbitrary\n"
21965  " mappings respectively defined by vectors and matrices. In\n"
21966  " addition, C callback routines for the transformation can be\n"
21967  " supplied by the user such as the mypltr function in\n"
21968  " examples/c/x09c.c which provides a general linear transformation\n"
21969  " between index coordinates and world coordinates.For languages\n"
21970  " other than C you should consult the PLplot documentation for the\n"
21971  " details concerning how PLTRANSFORM_callback arguments are\n"
21972  " interfaced. However, in general, a particular pattern of\n"
21973  " callback-associated arguments such as a tr vector with 6 elements;\n"
21974  " xg and yg vectors; or xg and yg matrices are respectively\n"
21975  " interfaced to a linear-transformation routine similar to the above\n"
21976  " mypltr function; pltr1; and pltr2. Furthermore, some of our more\n"
21977  " sophisticated bindings (see, e.g., the PLplot documentation)\n"
21978  " support native language callbacks for handling index to\n"
21979  " world-coordinate transformations. Examples of these various\n"
21980  " approaches are given in examples/<language>x09*,\n"
21981  " examples/<language>x16*, examples/<language>x20*,\n"
21982  " examples/<language>x21*, and examples/<language>x22*, for all our\n"
21983  " supported languages.\n"
21984  "\n"
21985  " pltr_data (PLPointer, input) : Extra parameter to help pass\n"
21986  " information to pltr0, pltr1, pltr2, or whatever callback routine\n"
21987  " that is externally supplied.\n"
21988  "\n"
21989  ""},
21990  { (char *)"plvpas", _wrap_plvpas, METH_VARARGS, (char *)"\n"
21991  "Specify viewport using coordinates and aspect ratio\n"
21992  "\n"
21993  "DESCRIPTION:\n"
21994  "\n"
21995  " Device-independent routine for setting up the viewport. The viewport\n"
21996  " is chosen to be the largest with the given aspect ratio that fits\n"
21997  " within the specified region (in terms of normalized subpage\n"
21998  " coordinates). This routine is functionally equivalent to plvpor when\n"
21999  " a ``natural'' aspect ratio (0.0) is chosen. Unlike plvasp, this\n"
22000  " routine reserves no extra space at the edges for labels.\n"
22001  "\n"
22002  " Redacted form: plvpas(xmin, xmax, ymin, ymax, aspect)\n"
22003  "\n"
22004  " This function is used in example 9.\n"
22005  "\n"
22006  "\n"
22007  "\n"
22008  "SYNOPSIS:\n"
22009  "\n"
22010  "plvpas(xmin, xmax, ymin, ymax, aspect)\n"
22011  "\n"
22012  "ARGUMENTS:\n"
22013  "\n"
22014  " xmin (PLFLT, input) : The normalized subpage coordinate of the\n"
22015  " left-hand edge of the viewport.\n"
22016  "\n"
22017  " xmax (PLFLT, input) : The normalized subpage coordinate of the\n"
22018  " right-hand edge of the viewport.\n"
22019  "\n"
22020  " ymin (PLFLT, input) : The normalized subpage coordinate of the\n"
22021  " bottom edge of the viewport.\n"
22022  "\n"
22023  " ymax (PLFLT, input) : The normalized subpage coordinate of the top\n"
22024  " edge of the viewport.\n"
22025  "\n"
22026  " aspect (PLFLT, input) : Ratio of length of y axis to length of x\n"
22027  " axis.\n"
22028  "\n"
22029  ""},
22030  { (char *)"plvpor", _wrap_plvpor, METH_VARARGS, (char *)"\n"
22031  "Specify viewport using normalized subpage coordinates\n"
22032  "\n"
22033  "DESCRIPTION:\n"
22034  "\n"
22035  " Device-independent routine for setting up the viewport. This defines\n"
22036  " the viewport in terms of normalized subpage coordinates which run from\n"
22037  " 0.0 to 1.0 (left to right and bottom to top) along each edge of the\n"
22038  " current subpage. Use the alternate routine plsvpa in order to create\n"
22039  " a viewport of a definite size.\n"
22040  "\n"
22041  " Redacted form: plvpor(xmin, xmax, ymin, ymax)\n"
22042  "\n"
22043  " This function is used in examples 2, 6-8, 10, 11, 15, 16, 18, 21, 23,\n"
22044  " 24, 26, 27, and 31.\n"
22045  "\n"
22046  "\n"
22047  "\n"
22048  "SYNOPSIS:\n"
22049  "\n"
22050  "plvpor(xmin, xmax, ymin, ymax)\n"
22051  "\n"
22052  "ARGUMENTS:\n"
22053  "\n"
22054  " xmin (PLFLT, input) : The normalized subpage coordinate of the\n"
22055  " left-hand edge of the viewport.\n"
22056  "\n"
22057  " xmax (PLFLT, input) : The normalized subpage coordinate of the\n"
22058  " right-hand edge of the viewport.\n"
22059  "\n"
22060  " ymin (PLFLT, input) : The normalized subpage coordinate of the\n"
22061  " bottom edge of the viewport.\n"
22062  "\n"
22063  " ymax (PLFLT, input) : The normalized subpage coordinate of the top\n"
22064  " edge of the viewport.\n"
22065  "\n"
22066  ""},
22067  { (char *)"plvsta", _wrap_plvsta, METH_VARARGS, (char *)"\n"
22068  "Select standard viewport\n"
22069  "\n"
22070  "DESCRIPTION:\n"
22071  "\n"
22072  " Selects the largest viewport within the subpage that leaves a standard\n"
22073  " margin (left-hand margin of eight character heights, and a margin\n"
22074  " around the other three sides of five character heights).\n"
22075  "\n"
22076  " Redacted form: plvsta()\n"
22077  "\n"
22078  " This function is used in examples 1, 12, 14, 17, 25, and 29.\n"
22079  "\n"
22080  "\n"
22081  "\n"
22082  "SYNOPSIS:\n"
22083  "\n"
22084  "plvsta()\n"
22085  "\n"
22086  ""},
22087  { (char *)"plw3d", _wrap_plw3d, METH_VARARGS, (char *)"\n"
22088  "Configure the transformations required for projecting a 3D surface on a 2D window\n"
22089  "\n"
22090  "DESCRIPTION:\n"
22091  "\n"
22092  " Configure the transformations required for projecting a 3D surface on\n"
22093  " an existing 2D window. Those transformations (see the PLplot\n"
22094  " documentation) are done to a rectangular cuboid enclosing the 3D\n"
22095  " surface which has its limits expressed in 3D world coordinates and\n"
22096  " also normalized 3D coordinates (used for interpreting the altitude and\n"
22097  " azimuth of the viewing angle). The transformations consist of the\n"
22098  " linear transform from 3D world coordinates to normalized 3D\n"
22099  " coordinates, and the 3D rotation of normalized coordinates required to\n"
22100  " align the pole of the new 3D coordinate system with the viewing\n"
22101  " direction specified by altitude and azimuth so that x and y of the\n"
22102  " surface elements in that transformed coordinate system are the\n"
22103  " projection of the 3D surface with given viewing direction on the 2D\n"
22104  " window.\n"
22105  "\n"
22106  " The enclosing rectangular cuboid for the surface plot is defined by\n"
22107  " xmin, xmax, ymin, ymax, zmin and zmax in 3D world coordinates. It is\n"
22108  " mapped into the same rectangular cuboid with normalized 3D coordinate\n"
22109  " sizes of basex by basey by height so that xmin maps to -\n"
22110  " basex/2, xmax maps to basex/2, ymin maps to -\n"
22111  " basey/2, ymax maps to basey/2, zmin maps to 0 and zmax maps to height.\n"
22112  " The resulting rectangular cuboid in normalized coordinates is then\n"
22113  " viewed by an observer at altitude alt and azimuth az. This routine\n"
22114  " must be called before plbox3 or any of the 3D surface plotting\n"
22115  " routines; plmesh, plmeshc, plot3d, plot3dc, plot3dcl, plsurf3d,\n"
22116  " plsurf3dl or plfill3.\n"
22117  "\n"
22118  " Redacted form: plw3d(basex, basey, height, xmin, xmax, ymin, ymax,\n"
22119  " zmin, zmax, alt, az)\n"
22120  "\n"
22121  " This function is examples 8, 11, 18, and 21.\n"
22122  "\n"
22123  "\n"
22124  "\n"
22125  "SYNOPSIS:\n"
22126  "\n"
22127  "plw3d(basex, basey, height, xmin, xmax, ymin, ymax, zmin, zmax, alt, az)\n"
22128  "\n"
22129  "ARGUMENTS:\n"
22130  "\n"
22131  " basex (PLFLT, input) : The normalized x coordinate size of the\n"
22132  " rectangular cuboid.\n"
22133  "\n"
22134  " basey (PLFLT, input) : The normalized y coordinate size of the\n"
22135  " rectangular cuboid.\n"
22136  "\n"
22137  " height (PLFLT, input) : The normalized z coordinate size of the\n"
22138  " rectangular cuboid.\n"
22139  "\n"
22140  " xmin (PLFLT, input) : The minimum x world coordinate of the\n"
22141  " rectangular cuboid.\n"
22142  "\n"
22143  " xmax (PLFLT, input) : The maximum x world coordinate of the\n"
22144  " rectangular cuboid.\n"
22145  "\n"
22146  " ymin (PLFLT, input) : The minimum y world coordinate of the\n"
22147  " rectangular cuboid.\n"
22148  "\n"
22149  " ymax (PLFLT, input) : The maximum y world coordinate of the\n"
22150  " rectangular cuboid.\n"
22151  "\n"
22152  " zmin (PLFLT, input) : The minimum z world coordinate of the\n"
22153  " rectangular cuboid.\n"
22154  "\n"
22155  " zmax (PLFLT, input) : The maximum z world coordinate of the\n"
22156  " rectangular cuboid.\n"
22157  "\n"
22158  " alt (PLFLT, input) : The viewing altitude in degrees above the xy\n"
22159  " plane of the rectangular cuboid in normalized coordinates.\n"
22160  "\n"
22161  " az (PLFLT, input) : The viewing azimuth in degrees of the\n"
22162  " rectangular cuboid in normalized coordinates. When az=0, the\n"
22163  " observer is looking face onto the zx plane of the rectangular\n"
22164  " cuboid in normalized coordinates, and as az is increased, the\n"
22165  " observer moves clockwise around that cuboid when viewed from above\n"
22166  " the xy plane.\n"
22167  "\n"
22168  ""},
22169  { (char *)"plwidth", _wrap_plwidth, METH_VARARGS, (char *)"\n"
22170  "Set pen width\n"
22171  "\n"
22172  "DESCRIPTION:\n"
22173  "\n"
22174  " Sets the pen width.\n"
22175  "\n"
22176  " Redacted form: plwidth(width)\n"
22177  "\n"
22178  " This function is used in examples 1 and 2.\n"
22179  "\n"
22180  "\n"
22181  "\n"
22182  "SYNOPSIS:\n"
22183  "\n"
22184  "plwidth(width)\n"
22185  "\n"
22186  "ARGUMENTS:\n"
22187  "\n"
22188  " width (PLFLT, input) : The desired pen width. If width is negative\n"
22189  " or the same as the previous value no action is taken. width = 0.\n"
22190  " should be interpreted as as the minimum valid pen width for the\n"
22191  " device. The interpretation of positive width values is also\n"
22192  " device dependent.\n"
22193  "\n"
22194  ""},
22195  { (char *)"plwind", _wrap_plwind, METH_VARARGS, (char *)"\n"
22196  "Specify window\n"
22197  "\n"
22198  "DESCRIPTION:\n"
22199  "\n"
22200  " Specify the window, i.e., the world coordinates of the edges of the\n"
22201  " viewport.\n"
22202  "\n"
22203  " Redacted form: plwind(xmin, xmax, ymin, ymax)\n"
22204  "\n"
22205  " This function is used in examples 1, 2, 4, 6-12, 14-16, 18, 21, 23-27,\n"
22206  " 29, and 31.\n"
22207  "\n"
22208  "\n"
22209  "\n"
22210  "SYNOPSIS:\n"
22211  "\n"
22212  "plwind(xmin, xmax, ymin, ymax)\n"
22213  "\n"
22214  "ARGUMENTS:\n"
22215  "\n"
22216  " xmin (PLFLT, input) : The world x coordinate of the left-hand edge\n"
22217  " of the viewport.\n"
22218  "\n"
22219  " xmax (PLFLT, input) : The world x coordinate of the right-hand edge\n"
22220  " of the viewport.\n"
22221  "\n"
22222  " ymin (PLFLT, input) : The world y coordinate of the bottom edge of\n"
22223  " the viewport.\n"
22224  "\n"
22225  " ymax (PLFLT, input) : The world y coordinate of the top edge of the\n"
22226  " viewport.\n"
22227  "\n"
22228  ""},
22229  { (char *)"plxormod", _wrap_plxormod, METH_VARARGS, (char *)"\n"
22230  "Enter or leave xor mode\n"
22231  "\n"
22232  "DESCRIPTION:\n"
22233  "\n"
22234  " Enter (when mode is true) or leave (when mode is false) xor mode for\n"
22235  " those drivers (e.g., the xwin driver) that support it. Enables\n"
22236  " erasing plots by drawing twice the same line, symbol, etc. If driver\n"
22237  " is not capable of xor operation it returns a status of false.\n"
22238  "\n"
22239  " Redacted form: plxormod(mode, status)\n"
22240  "\n"
22241  " This function is used in examples 1 and 20.\n"
22242  "\n"
22243  "\n"
22244  "\n"
22245  "SYNOPSIS:\n"
22246  "\n"
22247  "plxormod(mode, status)\n"
22248  "\n"
22249  "ARGUMENTS:\n"
22250  "\n"
22251  " mode (PLBOOL, input) : mode is true means enter xor mode and mode\n"
22252  " is false means leave xor mode.\n"
22253  "\n"
22254  " status (PLBOOL_NC_SCALAR, output) : Returned value of the status.\n"
22255  " modestatus of true (false) means driver is capable (incapable) of\n"
22256  " xor mode.\n"
22257  "\n"
22258  ""},
22259  { (char *)"plmap", _wrap_plmap, METH_VARARGS, (char *)"\n"
22260  "Plot continental outline or shapefile data in world coordinates\n"
22261  "\n"
22262  "DESCRIPTION:\n"
22263  "\n"
22264  " Plots continental outlines or shapefile data in world coordinates. A\n"
22265  " demonstration of how to use this function to create different\n"
22266  " projections can be found in examples/c/x19c. PLplot is provided with\n"
22267  " basic coastal outlines and USA state borders. These can be used\n"
22268  " irrespective of whether Shapefile support is built into PLplot. With\n"
22269  " Shapefile support this function can also be used with user Shapefiles,\n"
22270  " in which case it will plot the entire contents of a Shapefile joining\n"
22271  " each point of each Shapefile element with a line. Shapefiles have\n"
22272  " become a popular standard for geographical data and data in this\n"
22273  " format can be easily found from a number of online sources. Shapefile\n"
22274  " data is actually provided as three or more files with the same\n"
22275  " filename, but different extensions. The .shp and .shx files are\n"
22276  " required for plotting Shapefile data with PLplot.\n"
22277  "\n"
22278  " Redacted form: plmap(mapform, name, minx, maxx, miny, maxy)\n"
22279  "\n"
22280  " This function is used in example 19.\n"
22281  "\n"
22282  "\n"
22283  "\n"
22284  "SYNOPSIS:\n"
22285  "\n"
22286  "plmap(mapform, name, minx, maxx, miny, maxy)\n"
22287  "\n"
22288  "ARGUMENTS:\n"
22289  "\n"
22290  " mapform (PLMAPFORM_callback, input) : A user supplied function to\n"
22291  " transform the original map data coordinates to a new coordinate\n"
22292  " system. The PLplot-supplied map data is provided as latitudes and\n"
22293  " longitudes; other Shapefile data may be provided in other\n"
22294  " coordinate systems as can be found in their .prj plain text files.\n"
22295  " For example, by using this transform we can change from a\n"
22296  " longitude, latitude coordinate to a polar stereographic\n"
22297  " projection. Initially, x[0]..[n-1] are the original x coordinates\n"
22298  " (longitudes for the PLplot-supplied data) and y[0]..y[n-1] are the\n"
22299  " corresponding y coordinates (latitudes for the PLplot supplied\n"
22300  " data). After the call to mapform(), x[] and y[] should be\n"
22301  " replaced by the corresponding plot coordinates. If no transform is\n"
22302  " desired, mapform can be replaced by NULL.\n"
22303  "\n"
22304  " name (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
22305  " the type of map plotted. This is either one of the PLplot built-in\n"
22306  " maps or the file name of a set of Shapefile files without the file\n"
22307  " extensions. For the PLplot built-in maps the possible values are:\n"
22308  " \"globe\" -- continental outlines\n"
22309  " \"usa\" -- USA and state boundaries\n"
22310  " \"cglobe\" -- continental outlines and countries\n"
22311  " \"usaglobe\" -- USA, state boundaries and continental outlines\n"
22312  "\n"
22313  "\n"
22314  " minx (PLFLT, input) : The minimum x value of map elements to be\n"
22315  " drawn. For the built in maps this is a measure of longitude. For\n"
22316  " Shapefiles the units must match the projection. The value of minx\n"
22317  " must be less than the value of maxx. Specifying a useful limit for\n"
22318  " these limits provides a useful optimization for complex or\n"
22319  " detailed maps.\n"
22320  "\n"
22321  " maxx (PLFLT, input) : The maximum x value of map elements to be\n"
22322  " drawn\n"
22323  "\n"
22324  " miny (PLFLT, input) : The minimum y value of map elements to be\n"
22325  " drawn. For the built in maps this is a measure of latitude. For\n"
22326  " Shapefiles the units must match the projection. The value of miny\n"
22327  " must be less than the value of maxy.\n"
22328  "\n"
22329  " maxy (PLFLT, input) : The maximum y value of map elements to be\n"
22330  " drawn.\n"
22331  "\n"
22332  ""},
22333  { (char *)"plmapline", _wrap_plmapline, METH_VARARGS, (char *)"\n"
22334  "Plot all or a subset of Shapefile data using lines in world coordinates\n"
22335  "\n"
22336  "DESCRIPTION:\n"
22337  "\n"
22338  " Plot all or a subset of Shapefile data using lines in world\n"
22339  " coordinates. Our 19th standard example demonstrates how to use this\n"
22340  " function. This function plots data from a Shapefile using lines as in\n"
22341  " plmap, however it also has the option of also only drawing specified\n"
22342  " elements from the Shapefile. The vector of indices of the required\n"
22343  " elements are passed as a function argument. The Shapefile data should\n"
22344  " include a metadata file (extension.dbf) listing all items within the\n"
22345  " Shapefile. This file can be opened by most popular spreadsheet\n"
22346  " programs and can be used to decide which indices to pass to this\n"
22347  " function.\n"
22348  "\n"
22349  " Redacted form: plmapline(mapform, name, minx, maxx, miny, maxy,\n"
22350  " plotentries)\n"
22351  "\n"
22352  " This function is used in example 19.\n"
22353  "\n"
22354  "\n"
22355  "\n"
22356  "SYNOPSIS:\n"
22357  "\n"
22358  "plmapline(mapform, name, minx, maxx, miny, maxy, plotentries, nplotentries)\n"
22359  "\n"
22360  "ARGUMENTS:\n"
22361  "\n"
22362  " mapform (PLMAPFORM_callback, input) : A user supplied function to\n"
22363  " transform the coordinates given in the shapefile into a plot\n"
22364  " coordinate system. By using this transform, we can change from a\n"
22365  " longitude, latitude coordinate to a polar stereographic project,\n"
22366  " for example. Initially, x[0]..[n-1] are the longitudes and\n"
22367  " y[0]..y[n-1] are the corresponding latitudes. After the call to\n"
22368  " mapform(), x[] and y[] should be replaced by the corresponding\n"
22369  " plot coordinates. If no transform is desired, mapform can be\n"
22370  " replaced by NULL.\n"
22371  "\n"
22372  " name (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
22373  " the file name of a set of Shapefile files without the file\n"
22374  " extension.\n"
22375  "\n"
22376  " minx (PLFLT, input) : The minimum x value to be plotted. This must\n"
22377  " be in the same units as used by the Shapefile. You could use a\n"
22378  " very large negative number to plot everything, but you can improve\n"
22379  " performance by limiting the area drawn. The units must match those\n"
22380  " of the Shapefile projection, which may be for example longitude or\n"
22381  " distance. The value of minx must be less than the value of maxx.\n"
22382  "\n"
22383  " maxx (PLFLT, input) : The maximum x value to be plotted. You could\n"
22384  " use a very large number to plot everything, but you can improve\n"
22385  " performance by limiting the area drawn.\n"
22386  "\n"
22387  " miny (PLFLT, input) : The minimum y value to be plotted. This must\n"
22388  " be in the same units as used by the Shapefile. You could use a\n"
22389  " very large negative number to plot everything, but you can improve\n"
22390  " performance by limiting the area drawn. The units must match those\n"
22391  " of the Shapefile projection, which may be for example latitude or\n"
22392  " distance. The value of miny must be less than the value of maxy.\n"
22393  "\n"
22394  " maxy (PLFLT, input) : The maximum y value to be plotted. You could\n"
22395  " use a very large number to plot everything, but you can improve\n"
22396  " performance by limiting the area drawn.\n"
22397  "\n"
22398  " plotentries (PLINT_VECTOR, input) : A vector containing the\n"
22399  " zero-based indices of the Shapefile elements which will be drawn.\n"
22400  " Setting\n"
22401  " plotentries to NULL will plot all elements of the Shapefile.\n"
22402  "\n"
22403  " nplotentries (PLINT, input) : The number of items in\n"
22404  " plotentries. Ignored if\n"
22405  " plotentries is NULL.\n"
22406  "\n"
22407  ""},
22408  { (char *)"plmapstring", _wrap_plmapstring, METH_VARARGS, (char *)"\n"
22409  "Plot all or a subset of Shapefile data using strings or points in world coordinates\n"
22410  "\n"
22411  "DESCRIPTION:\n"
22412  "\n"
22413  " As per plmapline, however the items are plotted as strings or points\n"
22414  " in the same way as plstring.\n"
22415  "\n"
22416  " Redacted form: plmapstring(mapform, name, string, minx, maxx, miny,\n"
22417  " maxy, plotentries)\n"
22418  "\n"
22419  " This function is not used in any examples.\n"
22420  "\n"
22421  "\n"
22422  "\n"
22423  "SYNOPSIS:\n"
22424  "\n"
22425  "plmapstring(mapform, name, string, minx, maxx, miny, maxy, plotentries, nplotentries)\n"
22426  "\n"
22427  "ARGUMENTS:\n"
22428  "\n"
22429  " mapform (PLMAPFORM_callback, input) : A user supplied function to\n"
22430  " transform the coordinates given in the shapefile into a plot\n"
22431  " coordinate system. By using this transform, we can change from a\n"
22432  " longitude, latitude coordinate to a polar stereographic project,\n"
22433  " for example. Initially, x[0]..[n-1] are the longitudes and\n"
22434  " y[0]..y[n-1] are the corresponding latitudes. After the call to\n"
22435  " mapform(), x[] and y[] should be replaced by the corresponding\n"
22436  " plot coordinates. If no transform is desired, mapform can be\n"
22437  " replaced by NULL.\n"
22438  "\n"
22439  " name (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
22440  " the file name of a set of Shapefile files without the file\n"
22441  " extension.\n"
22442  "\n"
22443  " string (PLCHAR_VECTOR, input) : A UTF-8 character string to be\n"
22444  " drawn.\n"
22445  "\n"
22446  " minx (PLFLT, input) : The minimum x value to be plotted. This must\n"
22447  " be in the same units as used by the Shapefile. You could use a\n"
22448  " very large negative number to plot everything, but you can improve\n"
22449  " performance by limiting the area drawn. The units must match those\n"
22450  " of the Shapefile projection, which may be for example longitude or\n"
22451  " distance. The value of minx must be less than the value of maxx.\n"
22452  "\n"
22453  " maxx (PLFLT, input) : The maximum x value to be plotted. You could\n"
22454  " use a very large number to plot everything, but you can improve\n"
22455  " performance by limiting the area drawn.\n"
22456  "\n"
22457  " miny (PLFLT, input) : The minimum y value to be plotted. This must\n"
22458  " be in the same units as used by the Shapefile. You could use a\n"
22459  " very large negative number to plot everything, but you can improve\n"
22460  " performance by limiting the area drawn. The units must match those\n"
22461  " of the Shapefile projection, which may be for example latitude or\n"
22462  " distance. The value of miny must be less than the value of maxy.\n"
22463  "\n"
22464  " maxy (PLFLT, input) : The maximum y value to be plotted. You could\n"
22465  " use a very large number to plot everything, but you can improve\n"
22466  " performance by limiting the area drawn.\n"
22467  "\n"
22468  " plotentries (PLINT_VECTOR, input) : A vector containing the\n"
22469  " zero-based indices of the Shapefile elements which will be drawn.\n"
22470  " Setting\n"
22471  " plotentries to NULL will plot all elements of the Shapefile.\n"
22472  "\n"
22473  " nplotentries (PLINT, input) : The number of items in\n"
22474  " plotentries. Ignored if\n"
22475  " plotentries is NULL.\n"
22476  "\n"
22477  ""},
22478  { (char *)"plmaptex", _wrap_plmaptex, METH_VARARGS, (char *)"\n"
22479  "Draw text at points defined by Shapefile data in world coordinates\n"
22480  "\n"
22481  "DESCRIPTION:\n"
22482  "\n"
22483  " As per plmapline, however the items are plotted as text in the same\n"
22484  " way as plptex.\n"
22485  "\n"
22486  " Redacted form: plmaptex(mapform, name, dx, dy, just, text, minx, maxx,\n"
22487  " miny, maxy, plotentry)\n"
22488  "\n"
22489  " This function is used in example 19.\n"
22490  "\n"
22491  "\n"
22492  "\n"
22493  "SYNOPSIS:\n"
22494  "\n"
22495  "plmaptex(mapform, name, dx, dy, just, text, minx, maxx, miny, maxy, plotentry)\n"
22496  "\n"
22497  "ARGUMENTS:\n"
22498  "\n"
22499  " mapform (PLMAPFORM_callback, input) : A user supplied function to\n"
22500  " transform the coordinates given in the shapefile into a plot\n"
22501  " coordinate system. By using this transform, we can change from a\n"
22502  " longitude, latitude coordinate to a polar stereographic project,\n"
22503  " for example. Initially, x[0]..[n-1] are the longitudes and\n"
22504  " y[0]..y[n-1] are the corresponding latitudes. After the call to\n"
22505  " mapform(), x[] and y[] should be replaced by the corresponding\n"
22506  " plot coordinates. If no transform is desired, mapform can be\n"
22507  " replaced by NULL.\n"
22508  "\n"
22509  " name (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
22510  " the file name of a set of Shapefile files without the file\n"
22511  " extension.\n"
22512  "\n"
22513  " dx (PLFLT, input) : Used to define the slope of the texts which is\n"
22514  " dy/dx.\n"
22515  "\n"
22516  " dy (PLFLT, input) : Used to define the slope of the texts which is\n"
22517  " dy/dx.\n"
22518  "\n"
22519  " just (PLFLT, input) : Set the justification of the text. The value\n"
22520  " given will be the fraction of the distance along the string that\n"
22521  " sits at the given point. 0.0 gives left aligned text, 0.5 gives\n"
22522  " centralized text and 1.0 gives right aligned text.\n"
22523  "\n"
22524  " text (PLCHAR_VECTOR, input) : A UTF-8 character string to be drawn.\n"
22525  "\n"
22526  " minx (PLFLT, input) : The minimum x value to be plotted. This must\n"
22527  " be in the same units as used by the Shapefile. You could use a\n"
22528  " very large negative number to plot everything, but you can improve\n"
22529  " performance by limiting the area drawn. The units must match those\n"
22530  " of the Shapefile projection, which may be for example longitude or\n"
22531  " distance. The value of minx must be less than the value of maxx.\n"
22532  "\n"
22533  " maxx (PLFLT, input) : The maximum x value to be plotted. You could\n"
22534  " use a very large number to plot everything, but you can improve\n"
22535  " performance by limiting the area drawn.\n"
22536  "\n"
22537  " miny (PLFLT, input) : The minimum y value to be plotted. This must\n"
22538  " be in the same units as used by the Shapefile. You could use a\n"
22539  " very large negative number to plot everything, but you can improve\n"
22540  " performance by limiting the area drawn. The units must match those\n"
22541  " of the Shapefile projection, which may be for example latitude or\n"
22542  " distance. The value of miny must be less than the value of maxy.\n"
22543  "\n"
22544  " maxy (PLFLT, input) : The maximum y value to be plotted. You could\n"
22545  " use a very large number to plot everything, but you can improve\n"
22546  " performance by limiting the area drawn.\n"
22547  "\n"
22548  " plotentry (PLINT, input) : An integer indicating which text string\n"
22549  " of the Shapefile (zero indexed) will be drawn.\n"
22550  "\n"
22551  ""},
22552  { (char *)"plmapfill", _wrap_plmapfill, METH_VARARGS, (char *)"\n"
22553  "Plot all or a subset of Shapefile data, filling the polygons\n"
22554  "\n"
22555  "DESCRIPTION:\n"
22556  "\n"
22557  " As per plmapline, however the items are filled in the same way as\n"
22558  " plfill.\n"
22559  "\n"
22560  " Redacted form: plmapfill(mapform, name, minx, maxx, miny, maxy,\n"
22561  " plotentries)\n"
22562  "\n"
22563  " This function is used in example 19.\n"
22564  "\n"
22565  "\n"
22566  "\n"
22567  "SYNOPSIS:\n"
22568  "\n"
22569  "plmapfill(mapform, name, minx, maxx, miny, maxy, plotentries, nplotentries)\n"
22570  "\n"
22571  "ARGUMENTS:\n"
22572  "\n"
22573  " mapform (PLMAPFORM_callback, input) : A user supplied function to\n"
22574  " transform the coordinates given in the shapefile into a plot\n"
22575  " coordinate system. By using this transform, we can change from a\n"
22576  " longitude, latitude coordinate to a polar stereographic project,\n"
22577  " for example. Initially, x[0]..[n-1] are the longitudes and\n"
22578  " y[0]..y[n-1] are the corresponding latitudes. After the call to\n"
22579  " mapform(), x[] and y[] should be replaced by the corresponding\n"
22580  " plot coordinates. If no transform is desired, mapform can be\n"
22581  " replaced by NULL.\n"
22582  "\n"
22583  " name (PLCHAR_VECTOR, input) : An ascii character string specifying\n"
22584  " the file name of a set of Shapefile files without the file\n"
22585  " extension.\n"
22586  "\n"
22587  " minx (PLFLT, input) : The minimum x value to be plotted. This must\n"
22588  " be in the same units as used by the Shapefile. You could use a\n"
22589  " very large negative number to plot everything, but you can improve\n"
22590  " performance by limiting the area drawn. The units must match those\n"
22591  " of the Shapefile projection, which may be for example longitude or\n"
22592  " distance. The value of minx must be less than the value of maxx.\n"
22593  "\n"
22594  " maxx (PLFLT, input) : The maximum x value to be plotted. You could\n"
22595  " use a very large number to plot everything, but you can improve\n"
22596  " performance by limiting the area drawn.\n"
22597  "\n"
22598  " miny (PLFLT, input) : The minimum y value to be plotted. This must\n"
22599  " be in the same units as used by the Shapefile. You could use a\n"
22600  " very large negative number to plot everything, but you can improve\n"
22601  " performance by limiting the area drawn. The units must match those\n"
22602  " of the Shapefile projection, which may be for example latitude or\n"
22603  " distance. The value of miny must be less than the value of maxy.\n"
22604  "\n"
22605  " maxy (PLFLT, input) : The maximum y value to be plotted. You could\n"
22606  " use a very large number to plot everything, but you can improve\n"
22607  " performance by limiting the area drawn.\n"
22608  "\n"
22609  " plotentries (PLINT_VECTOR, input) : A vector containing the\n"
22610  " zero-based indices of the Shapefile elements which will be drawn.\n"
22611  " Setting\n"
22612  " plotentries to NULL will plot all elements of the Shapefile.\n"
22613  "\n"
22614  " nplotentries (PLINT, input) : The number of items in\n"
22615  " plotentries. Ignored if\n"
22616  " plotentries is NULL.\n"
22617  "\n"
22618  ""},
22619  { (char *)"plmeridians", _wrap_plmeridians, METH_VARARGS, (char *)"\n"
22620  "Plot latitude and longitude lines\n"
22621  "\n"
22622  "DESCRIPTION:\n"
22623  "\n"
22624  " Displays latitude and longitude on the current plot. The lines are\n"
22625  " plotted in the current color and line style.\n"
22626  "\n"
22627  " Redacted form: plmeridians(mapform, dlong, dlat, minlong, maxlong,\n"
22628  " minlat, maxlat)\n"
22629  "\n"
22630  " This function is used in example 19.\n"
22631  "\n"
22632  "\n"
22633  "\n"
22634  "SYNOPSIS:\n"
22635  "\n"
22636  "plmeridians(mapform, dlong, dlat, minlong, maxlong, minlat, maxlat)\n"
22637  "\n"
22638  "ARGUMENTS:\n"
22639  "\n"
22640  " mapform (PLMAPFORM_callback, input) : A user supplied function to\n"
22641  " transform the coordinate longitudes and latitudes to a plot\n"
22642  " coordinate system. By using this transform, we can change from a\n"
22643  " longitude, latitude coordinate to a polar stereographic project,\n"
22644  " for example. Initially, x[0]..[n-1] are the longitudes and\n"
22645  " y[0]..y[n-1] are the corresponding latitudes. After the call to\n"
22646  " mapform(), x[] and y[] should be replaced by the corresponding\n"
22647  " plot coordinates. If no transform is desired, mapform can be\n"
22648  " replaced by NULL.\n"
22649  "\n"
22650  " dlong (PLFLT, input) : The interval in degrees at which the\n"
22651  " longitude lines are to be plotted.\n"
22652  "\n"
22653  " dlat (PLFLT, input) : The interval in degrees at which the latitude\n"
22654  " lines are to be plotted.\n"
22655  "\n"
22656  " minlong (PLFLT, input) : The value of the longitude on the left\n"
22657  " side of the plot. The value of minlong must be less than the value\n"
22658  " of maxlong, and the quantity maxlong-minlong must be less than or\n"
22659  " equal to 360.\n"
22660  "\n"
22661  " maxlong (PLFLT, input) : The value of the longitude on the right\n"
22662  " side of the plot.\n"
22663  "\n"
22664  " minlat (PLFLT, input) : The minimum latitude to be plotted on the\n"
22665  " background. One can always use -90.0 as the boundary outside the\n"
22666  " plot window will be automatically eliminated. However, the\n"
22667  " program will be faster if one can reduce the size of the\n"
22668  " background plotted.\n"
22669  "\n"
22670  " maxlat (PLFLT, input) : The maximum latitudes to be plotted on the\n"
22671  " background. One can always use 90.0 as the boundary outside the\n"
22672  " plot window will be automatically eliminated.\n"
22673  "\n"
22674  ""},
22675  { (char *)"plimage", _wrap_plimage, METH_VARARGS, (char *)"\n"
22676  "Plot a 2D matrix using cmap1 with automatic color adjustment\n"
22677  "\n"
22678  "DESCRIPTION:\n"
22679  "\n"
22680  " Plot a 2D matrix using the cmap1 palette. The color scale is\n"
22681  " automatically adjusted to use the maximum and minimum values in idata\n"
22682  " as valuemin and valuemax in a call to plimagefr.\n"
22683  "\n"
22684  " Redacted form: General: plimage(idata, xmin, xmax, ymin, ymax, zmin,\n"
22685  " zmax, Dxmin, Dxmax, Dymin, Dymax)\n"
22686  "\n"
22687  "\n"
22688  " This function is used in example 20.\n"
22689  "\n"
22690  "\n"
22691  "\n"
22692  "SYNOPSIS:\n"
22693  "\n"
22694  "plimage(idata, nx, ny, xmin, xmax, ymin, ymax, zmin, zmax, Dxmin, Dxmax, Dymin, Dymax)\n"
22695  "\n"
22696  "ARGUMENTS:\n"
22697  "\n"
22698  " idata (PLFLT_MATRIX, input) : A matrix containing function values\n"
22699  " to plot. Should have dimensions of\n"
22700  " nx by\n"
22701  " ny.\n"
22702  "\n"
22703  " nx, ny (PLINT, input) : Dimensions of idata\n"
22704  "\n"
22705  " xmin, xmax, ymin, ymax (PLFLT, input) : The x and y index ranges\n"
22706  " are linearly transformed to these world coordinate ranges such\n"
22707  " that idata[0][0] corresponds to (xmin, ymin) and idata[nx - 1][ny\n"
22708  " - 1] corresponds to (xmax, ymax).\n"
22709  "\n"
22710  " zmin, zmax (PLFLT, input) : Only data between zmin and zmax\n"
22711  " (inclusive) will be plotted.\n"
22712  "\n"
22713  " Dxmin, Dxmax, Dymin, Dymax (PLFLT, input) : Plot only the window of\n"
22714  " points whose plot coordinates fall inside the window of (Dxmin,\n"
22715  " Dymin) to (Dxmax, Dymax).\n"
22716  "\n"
22717  ""},
22718  { (char *)"plimagefr", _wrap_plimagefr, METH_VARARGS, (char *)"\n"
22719  "Plot a 2D matrix using cmap1\n"
22720  "\n"
22721  "DESCRIPTION:\n"
22722  "\n"
22723  " Plot a 2D matrix using cmap1.\n"
22724  "\n"
22725  " Redacted form: General: plimagefr(idata, xmin, xmax, ymin, ymax, zmin,\n"
22726  " zmax, valuemin, valuemax, pltr, pltr_data)\n"
22727  "\n"
22728  "\n"
22729  " This function is used in example 20.\n"
22730  "\n"
22731  "\n"
22732  "\n"
22733  "SYNOPSIS:\n"
22734  "\n"
22735  "plimagefr(idata, nx, ny, xmin, xmax, ymin, ymax, zmin, zmax, valuemin, valuemax, pltr, pltr_data)\n"
22736  "\n"
22737  "ARGUMENTS:\n"
22738  "\n"
22739  " idata (PLFLT_MATRIX, input) : A matrix of values (intensities) to\n"
22740  " plot. Should have dimensions of\n"
22741  " nx by\n"
22742  " ny.\n"
22743  "\n"
22744  " nx, ny (PLINT, input) : Dimensions of idata\n"
22745  "\n"
22746  " xmin, xmax, ymin, ymax (PLFLT, input) : See the discussion of\n"
22747  " pltr below for how these arguments are used (only for the special case\n"
22748  " when the callback function\n"
22749  " pltr is not supplied).\n"
22750  "\n"
22751  " zmin, zmax (PLFLT, input) : Only data between zmin and zmax\n"
22752  " (inclusive) will be plotted.\n"
22753  "\n"
22754  " valuemin, valuemax (PLFLT, input) : The minimum and maximum data\n"
22755  " values to use for value to color mappings. A datum equal to or\n"
22756  " less than valuemin will be plotted with color 0.0, while a datum\n"
22757  " equal to or greater than valuemax will be plotted with color 1.0.\n"
22758  " Data between valuemin and valuemax map linearly to colors in the\n"
22759  " range (0.0-1.0).\n"
22760  "\n"
22761  " pltr (PLTRANSFORM_callback, input) : A callback function that\n"
22762  " defines the transformation between the zero-based indices of the\n"
22763  " matrix idata and world coordinates. If\n"
22764  " pltr is not supplied (e.g., is set to NULL in the C case), then the x\n"
22765  " indices of idata are mapped to the range\n"
22766  " xmin through\n"
22767  " xmax and the y indices of idata are mapped to the range\n"
22768  " ymin through\n"
22769  " ymax.For the C case, transformation functions are provided in the\n"
22770  " PLplot library: pltr0 for the identity mapping, and pltr1 and\n"
22771  " pltr2 for arbitrary mappings respectively defined by vectors and\n"
22772  " matrices. In addition, C callback routines for the transformation\n"
22773  " can be supplied by the user such as the mypltr function in\n"
22774  " examples/c/x09c.c which provides a general linear transformation\n"
22775  " between index coordinates and world coordinates.For languages\n"
22776  " other than C you should consult the PLplot documentation for the\n"
22777  " details concerning how PLTRANSFORM_callback arguments are\n"
22778  " interfaced. However, in general, a particular pattern of\n"
22779  " callback-associated arguments such as a tr vector with 6 elements;\n"
22780  " xg and yg vectors; or xg and yg matrices are respectively\n"
22781  " interfaced to a linear-transformation routine similar to the above\n"
22782  " mypltr function; pltr1; and pltr2. Furthermore, some of our more\n"
22783  " sophisticated bindings (see, e.g., the PLplot documentation)\n"
22784  " support native language callbacks for handling index to\n"
22785  " world-coordinate transformations. Examples of these various\n"
22786  " approaches are given in examples/<language>x09*,\n"
22787  " examples/<language>x16*, examples/<language>x20*,\n"
22788  " examples/<language>x21*, and examples/<language>x22*, for all our\n"
22789  " supported languages.\n"
22790  "\n"
22791  " pltr_data (PLPointer, input) : Extra parameter to help pass\n"
22792  " information to pltr0, pltr1, pltr2, or whatever routine is\n"
22793  " externally supplied.\n"
22794  "\n"
22795  ""},
22796  { (char *)"plClearOpts", _wrap_plClearOpts, METH_VARARGS, NULL},
22797  { (char *)"plResetOpts", _wrap_plResetOpts, METH_VARARGS, NULL},
22798  { (char *)"plSetUsage", _wrap_plSetUsage, METH_VARARGS, NULL},
22799  { (char *)"plOptUsage", _wrap_plOptUsage, METH_VARARGS, NULL},
22800  { (char *)"plMinMax2dGrid", _wrap_plMinMax2dGrid, METH_VARARGS, NULL},
22801  { (char *)"plGetCursor", _wrap_plGetCursor, METH_VARARGS, (char *)"\n"
22802  "Wait for graphics input event and translate to world coordinates.\n"
22803  "\n"
22804  "DESCRIPTION:\n"
22805  "\n"
22806  " Wait for graphics input event and translate to world coordinates.\n"
22807  " Returns 0 if no translation to world coordinates is possible.\n"
22808  "\n"
22809  " This function returns 1 on success and 0 if no translation to world\n"
22810  " coordinates is possible.\n"
22811  "\n"
22812  " Redacted form: plGetCursor(gin)\n"
22813  "\n"
22814  " This function is used in examples 1 and 20.\n"
22815  "\n"
22816  "\n"
22817  "\n"
22818  "SYNOPSIS:\n"
22819  "\n"
22820  "PLINT plGetCursor(gin)\n"
22821  "\n"
22822  "ARGUMENTS:\n"
22823  "\n"
22824  " gin (PLGraphicsIn *, output) : Pointer to PLGraphicsIn structure\n"
22825  " which will contain the output. The structure is not allocated by\n"
22826  " the routine and must exist before the function is called.\n"
22827  "\n"
22828  ""},
22829  { NULL, NULL, 0, NULL }
22830 };
22831 
22832 
22833 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
22834 
22835 static swig_type_info _swigt__p_PLGraphicsIn = {"_p_PLGraphicsIn", "PLGraphicsIn *", 0, 0, (void*)0, 0};
22836 static swig_type_info _swigt__p_PLcGrid = {"_p_PLcGrid", "PLcGrid *", 0, 0, (void*)0, 0};
22837 static swig_type_info _swigt__p_PLcGrid2 = {"_p_PLcGrid2", "PLcGrid2 *", 0, 0, (void*)0, 0};
22838 static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
22839 static swig_type_info _swigt__p_double = {"_p_double", "double *|PLFLT *", 0, 0, (void*)0, 0};
22840 static swig_type_info _swigt__p_f_double_double__int = {"_p_f_double_double__int", "defined_func|int (*)(double,double)", 0, 0, (void*)0, 0};
22841 static swig_type_info _swigt__p_f_double_double_p_double_p_double_p_void__void = {"_p_f_double_double_p_double_p_double_p_void__void", "ct_func|pltr_func|void (*)(double,double,double *,double *,void *)", 0, 0, (void*)0, 0};
22842 static swig_type_info _swigt__p_f_int_double_p_char_int_p_void__void = {"_p_f_int_double_p_char_int_p_void__void", "void (*)(int,double,char *,int,void *)|label_func", 0, 0, (void*)0, 0};
22843 static swig_type_info _swigt__p_f_int_p_double_p_double__void = {"_p_f_int_p_double_p_double__void", "mapform_func|void (*)(int,double *,double *)", 0, 0, (void*)0, 0};
22844 static swig_type_info _swigt__p_f_int_p_q_const__double_p_q_const__double__void = {"_p_f_int_p_q_const__double_p_q_const__double__void", "void (*)(int,double const *,double const *)|fill_func", 0, 0, (void*)0, 0};
22845 static swig_type_info _swigt__p_int = {"_p_int", "PLBOOL *|int *|PLINT *", 0, 0, (void*)0, 0};
22846 static swig_type_info _swigt__p_p_char = {"_p_p_char", "char **", 0, 0, (void*)0, 0};
22847 static swig_type_info _swigt__p_p_double = {"_p_p_double", "PLFLT **|double **", 0, 0, (void*)0, 0};
22848 static swig_type_info _swigt__p_unsigned_int = {"_p_unsigned_int", "unsigned int *|PLUNICODE *", 0, 0, (void*)0, 0};
22849 
22854  &_swigt__p_char,
22861  &_swigt__p_int,
22865 };
22866 
22867 static swig_cast_info _swigc__p_PLGraphicsIn[] = { {&_swigt__p_PLGraphicsIn, 0, 0, 0},{0, 0, 0, 0}};
22868 static swig_cast_info _swigc__p_PLcGrid[] = { {&_swigt__p_PLcGrid, 0, 0, 0},{0, 0, 0, 0}};
22869 static swig_cast_info _swigc__p_PLcGrid2[] = { {&_swigt__p_PLcGrid2, 0, 0, 0},{0, 0, 0, 0}};
22870 static swig_cast_info _swigc__p_char[] = { {&_swigt__p_char, 0, 0, 0},{0, 0, 0, 0}};
22871 static swig_cast_info _swigc__p_double[] = { {&_swigt__p_double, 0, 0, 0},{0, 0, 0, 0}};
22877 static swig_cast_info _swigc__p_int[] = { {&_swigt__p_int, 0, 0, 0},{0, 0, 0, 0}};
22878 static swig_cast_info _swigc__p_p_char[] = { {&_swigt__p_p_char, 0, 0, 0},{0, 0, 0, 0}};
22879 static swig_cast_info _swigc__p_p_double[] = { {&_swigt__p_p_double, 0, 0, 0},{0, 0, 0, 0}};
22880 static swig_cast_info _swigc__p_unsigned_int[] = { {&_swigt__p_unsigned_int, 0, 0, 0},{0, 0, 0, 0}};
22881 
22893  _swigc__p_int,
22897 };
22898 
22899 
22900 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */
22901 
22903 {0, 0, 0, 0.0, 0, 0}};
22904 
22905 #ifdef __cplusplus
22906 }
22907 #endif
22908 /* -----------------------------------------------------------------------------
22909  * Type initialization:
22910  * This problem is tough by the requirement that no dynamic
22911  * memory is used. Also, since swig_type_info structures store pointers to
22912  * swig_cast_info structures and swig_cast_info structures store pointers back
22913  * to swig_type_info structures, we need some lookup code at initialization.
22914  * The idea is that swig generates all the structures that are needed.
22915  * The runtime then collects these partially filled structures.
22916  * The SWIG_InitializeModule function takes these initial arrays out of
22917  * swig_module, and does all the lookup, filling in the swig_module.types
22918  * array with the correct data and linking the correct swig_cast_info
22919  * structures together.
22920  *
22921  * The generated swig_type_info structures are assigned staticly to an initial
22922  * array. We just loop through that array, and handle each type individually.
22923  * First we lookup if this type has been already loaded, and if so, use the
22924  * loaded structure instead of the generated one. Then we have to fill in the
22925  * cast linked list. The cast data is initially stored in something like a
22926  * two-dimensional array. Each row corresponds to a type (there are the same
22927  * number of rows as there are in the swig_type_initial array). Each entry in
22928  * a column is one of the swig_cast_info structures for that type.
22929  * The cast_initial array is actually an array of arrays, because each row has
22930  * a variable number of columns. So to actually build the cast linked list,
22931  * we find the array of casts associated with the type, and loop through it
22932  * adding the casts to the list. The one last trick we need to do is making
22933  * sure the type pointer in the swig_cast_info struct is correct.
22934  *
22935  * First off, we lookup the cast->type name to see if it is already loaded.
22936  * There are three cases to handle:
22937  * 1) If the cast->type has already been loaded AND the type we are adding
22938  * casting info to has not been loaded (it is in this module), THEN we
22939  * replace the cast->type pointer with the type pointer that has already
22940  * been loaded.
22941  * 2) If BOTH types (the one we are adding casting info to, and the
22942  * cast->type) are loaded, THEN the cast info has already been loaded by
22943  * the previous module so we just ignore it.
22944  * 3) Finally, if cast->type has not already been loaded, then we add that
22945  * swig_cast_info to the linked list (because the cast->type) pointer will
22946  * be correct.
22947  * ----------------------------------------------------------------------------- */
22948 
22949 #ifdef __cplusplus
22950 extern "C" {
22951 #if 0
22952 } /* c-mode */
22953 #endif
22954 #endif
22955 
22956 #if 0
22957 #define SWIGRUNTIME_DEBUG
22958 #endif
22959 
22960 
22961 SWIGRUNTIME void
22962 SWIG_InitializeModule(void *clientdata) {
22963  size_t i;
22964  swig_module_info *module_head, *iter;
22965  int found, init;
22966 
22967  /* check to see if the circular list has been setup, if not, set it up */
22968  if (swig_module.next==0) {
22969  /* Initialize the swig_module */
22970  swig_module.type_initial = swig_type_initial;
22971  swig_module.cast_initial = swig_cast_initial;
22972  swig_module.next = &swig_module;
22973  init = 1;
22974  } else {
22975  init = 0;
22976  }
22977 
22978  /* Try and load any already created modules */
22979  module_head = SWIG_GetModule(clientdata);
22980  if (!module_head) {
22981  /* This is the first module loaded for this interpreter */
22982  /* so set the swig module into the interpreter */
22983  SWIG_SetModule(clientdata, &swig_module);
22984  module_head = &swig_module;
22985  } else {
22986  /* the interpreter has loaded a SWIG module, but has it loaded this one? */
22987  found=0;
22988  iter=module_head;
22989  do {
22990  if (iter==&swig_module) {
22991  found=1;
22992  break;
22993  }
22994  iter=iter->next;
22995  } while (iter!= module_head);
22996 
22997  /* if the is found in the list, then all is done and we may leave */
22998  if (found) return;
22999  /* otherwise we must add out module into the list */
23000  swig_module.next = module_head->next;
23001  module_head->next = &swig_module;
23002  }
23003 
23004  /* When multiple interpreters are used, a module could have already been initialized in
23005  a different interpreter, but not yet have a pointer in this interpreter.
23006  In this case, we do not want to continue adding types... everything should be
23007  set up already */
23008  if (init == 0) return;
23009 
23010  /* Now work on filling in swig_module.types */
23011 #ifdef SWIGRUNTIME_DEBUG
23012  printf("SWIG_InitializeModule: size %d\n", swig_module.size);
23013 #endif
23014  for (i = 0; i < swig_module.size; ++i) {
23015  swig_type_info *type = 0;
23016  swig_type_info *ret;
23017  swig_cast_info *cast;
23018 
23019 #ifdef SWIGRUNTIME_DEBUG
23020  printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
23021 #endif
23022 
23023  /* if there is another module already loaded */
23024  if (swig_module.next != &swig_module) {
23025  type = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, swig_module.type_initial[i]->name);
23026  }
23027  if (type) {
23028  /* Overwrite clientdata field */
23029 #ifdef SWIGRUNTIME_DEBUG
23030  printf("SWIG_InitializeModule: found type %s\n", type->name);
23031 #endif
23032  if (swig_module.type_initial[i]->clientdata) {
23033  type->clientdata = swig_module.type_initial[i]->clientdata;
23034 #ifdef SWIGRUNTIME_DEBUG
23035  printf("SWIG_InitializeModule: found and overwrite type %s \n", type->name);
23036 #endif
23037  }
23038  } else {
23039  type = swig_module.type_initial[i];
23040  }
23041 
23042  /* Insert casting types */
23043  cast = swig_module.cast_initial[i];
23044  while (cast->type) {
23045  /* Don't need to add information already in the list */
23046  ret = 0;
23047 #ifdef SWIGRUNTIME_DEBUG
23048  printf("SWIG_InitializeModule: look cast %s\n", cast->type->name);
23049 #endif
23050  if (swig_module.next != &swig_module) {
23051  ret = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, cast->type->name);
23052 #ifdef SWIGRUNTIME_DEBUG
23053  if (ret) printf("SWIG_InitializeModule: found cast %s\n", ret->name);
23054 #endif
23055  }
23056  if (ret) {
23057  if (type == swig_module.type_initial[i]) {
23058 #ifdef SWIGRUNTIME_DEBUG
23059  printf("SWIG_InitializeModule: skip old type %s\n", ret->name);
23060 #endif
23061  cast->type = ret;
23062  ret = 0;
23063  } else {
23064  /* Check for casting already in the list */
23065  swig_cast_info *ocast = SWIG_TypeCheck(ret->name, type);
23066 #ifdef SWIGRUNTIME_DEBUG
23067  if (ocast) printf("SWIG_InitializeModule: skip old cast %s\n", ret->name);
23068 #endif
23069  if (!ocast) ret = 0;
23070  }
23071  }
23072 
23073  if (!ret) {
23074 #ifdef SWIGRUNTIME_DEBUG
23075  printf("SWIG_InitializeModule: adding cast %s\n", cast->type->name);
23076 #endif
23077  if (type->cast) {
23078  type->cast->prev = cast;
23079  cast->next = type->cast;
23080  }
23081  type->cast = cast;
23082  }
23083  cast++;
23084  }
23085  /* Set entry in modules->types array equal to the type */
23086  swig_module.types[i] = type;
23087  }
23088  swig_module.types[i] = 0;
23089 
23090 #ifdef SWIGRUNTIME_DEBUG
23091  printf("**** SWIG_InitializeModule: Cast List ******\n");
23092  for (i = 0; i < swig_module.size; ++i) {
23093  int j = 0;
23094  swig_cast_info *cast = swig_module.cast_initial[i];
23095  printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
23096  while (cast->type) {
23097  printf("SWIG_InitializeModule: cast type %s\n", cast->type->name);
23098  cast++;
23099  ++j;
23100  }
23101  printf("---- Total casts: %d\n",j);
23102  }
23103  printf("**** SWIG_InitializeModule: Cast List ******\n");
23104 #endif
23105 }
23106 
23107 /* This function will propagate the clientdata field of type to
23108 * any new swig_type_info structures that have been added into the list
23109 * of equivalent types. It is like calling
23110 * SWIG_TypeClientData(type, clientdata) a second time.
23111 */
23112 SWIGRUNTIME void
23114  size_t i;
23115  swig_cast_info *equiv;
23116  static int init_run = 0;
23117 
23118  if (init_run) return;
23119  init_run = 1;
23120 
23121  for (i = 0; i < swig_module.size; i++) {
23122  if (swig_module.types[i]->clientdata) {
23123  equiv = swig_module.types[i]->cast;
23124  while (equiv) {
23125  if (!equiv->converter) {
23126  if (equiv->type && !equiv->type->clientdata)
23127  SWIG_TypeClientData(equiv->type, swig_module.types[i]->clientdata);
23128  }
23129  equiv = equiv->next;
23130  }
23131  }
23132  }
23133 }
23134 
23135 #ifdef __cplusplus
23136 #if 0
23137 {
23138  /* c-mode */
23139 #endif
23140 }
23141 #endif
23142 
23143 
23144 
23145 #ifdef __cplusplus
23146 extern "C" {
23147 #endif
23148 
23149  /* Python-specific SWIG API */
23150 #define SWIG_newvarlink() SWIG_Python_newvarlink()
23151 #define SWIG_addvarlink(p, name, get_attr, set_attr) SWIG_Python_addvarlink(p, name, get_attr, set_attr)
23152 #define SWIG_InstallConstants(d, constants) SWIG_Python_InstallConstants(d, constants)
23153 
23154  /* -----------------------------------------------------------------------------
23155  * global variable support code.
23156  * ----------------------------------------------------------------------------- */
23157 
23158  typedef struct swig_globalvar {
23159  char *name; /* Name of global variable */
23160  PyObject *(*get_attr)(void); /* Return the current value */
23161  int (*set_attr)(PyObject *); /* Set the value */
23163  } swig_globalvar;
23164 
23165  typedef struct swig_varlinkobject {
23166  PyObject_HEAD
23169 
23170  SWIGINTERN PyObject *
23172 #if PY_VERSION_HEX >= 0x03000000
23173  return PyUnicode_InternFromString("<Swig global variables>");
23174 #else
23175  return PyString_FromString("<Swig global variables>");
23176 #endif
23177  }
23178 
23179  SWIGINTERN PyObject *
23181 #if PY_VERSION_HEX >= 0x03000000
23182  PyObject *str = PyUnicode_InternFromString("(");
23183  PyObject *tail;
23184  PyObject *joined;
23185  swig_globalvar *var;
23186  for (var = v->vars; var; var=var->next) {
23187  tail = PyUnicode_FromString(var->name);
23188  joined = PyUnicode_Concat(str, tail);
23189  Py_DecRef(str);
23190  Py_DecRef(tail);
23191  str = joined;
23192  if (var->next) {
23193  tail = PyUnicode_InternFromString(", ");
23194  joined = PyUnicode_Concat(str, tail);
23195  Py_DecRef(str);
23196  Py_DecRef(tail);
23197  str = joined;
23198  }
23199  }
23200  tail = PyUnicode_InternFromString(")");
23201  joined = PyUnicode_Concat(str, tail);
23202  Py_DecRef(str);
23203  Py_DecRef(tail);
23204  str = joined;
23205 #else
23206  PyObject *str = PyString_FromString("(");
23207  swig_globalvar *var;
23208  for (var = v->vars; var; var=var->next) {
23209  PyString_ConcatAndDel(&str,PyString_FromString(var->name));
23210  if (var->next) PyString_ConcatAndDel(&str,PyString_FromString(", "));
23211  }
23212  PyString_ConcatAndDel(&str,PyString_FromString(")"));
23213 #endif
23214  return str;
23215  }
23216 
23217  SWIGINTERN int
23219  char *tmp;
23220  PyObject *str = swig_varlink_str(v);
23221  fprintf(fp,"Swig global variables ");
23222  fprintf(fp,"%s\n", tmp = SWIG_Python_str_AsChar(str));
23224  Py_DECREF(str);
23225  return 0;
23226  }
23227 
23228  SWIGINTERN void
23230  swig_globalvar *var = v->vars;
23231  while (var) {
23232  swig_globalvar *n = var->next;
23233  free(var->name);
23234  free(var);
23235  var = n;
23236  }
23237  }
23238 
23239  SWIGINTERN PyObject *
23241  PyObject *res = NULL;
23242  swig_globalvar *var = v->vars;
23243  while (var) {
23244  if (strcmp(var->name,n) == 0) {
23245  res = (*var->get_attr)();
23246  break;
23247  }
23248  var = var->next;
23249  }
23250  if (res == NULL && !PyErr_Occurred()) {
23251  PyErr_SetString(PyExc_NameError,"Unknown C global variable");
23252  }
23253  return res;
23254  }
23255 
23256  SWIGINTERN int
23257  swig_varlink_setattr(swig_varlinkobject *v, char *n, PyObject *p) {
23258  int res = 1;
23259  swig_globalvar *var = v->vars;
23260  while (var) {
23261  if (strcmp(var->name,n) == 0) {
23262  res = (*var->set_attr)(p);
23263  break;
23264  }
23265  var = var->next;
23266  }
23267  if (res == 1 && !PyErr_Occurred()) {
23268  PyErr_SetString(PyExc_NameError,"Unknown C global variable");
23269  }
23270  return res;
23271  }
23272 
23273  SWIGINTERN PyTypeObject*
23275  static char varlink__doc__[] = "Swig var link object";
23276  static PyTypeObject varlink_type;
23277  static int type_init = 0;
23278  if (!type_init) {
23279  const PyTypeObject tmp = {
23280  /* PyObject header changed in Python 3 */
23281 #if PY_VERSION_HEX >= 0x03000000
23282  PyVarObject_HEAD_INIT(NULL, 0)
23283 #else
23284  PyObject_HEAD_INIT(NULL)
23285  0, /* ob_size */
23286 #endif
23287  (char *)"swigvarlink", /* tp_name */
23288  sizeof(swig_varlinkobject), /* tp_basicsize */
23289  0, /* tp_itemsize */
23290  (destructor) swig_varlink_dealloc, /* tp_dealloc */
23291  (printfunc) swig_varlink_print, /* tp_print */
23292  (getattrfunc) swig_varlink_getattr, /* tp_getattr */
23293  (setattrfunc) swig_varlink_setattr, /* tp_setattr */
23294  0, /* tp_compare */
23295  (reprfunc) swig_varlink_repr, /* tp_repr */
23296  0, /* tp_as_number */
23297  0, /* tp_as_sequence */
23298  0, /* tp_as_mapping */
23299  0, /* tp_hash */
23300  0, /* tp_call */
23301  (reprfunc) swig_varlink_str, /* tp_str */
23302  0, /* tp_getattro */
23303  0, /* tp_setattro */
23304  0, /* tp_as_buffer */
23305  0, /* tp_flags */
23306  varlink__doc__, /* tp_doc */
23307  0, /* tp_traverse */
23308  0, /* tp_clear */
23309  0, /* tp_richcompare */
23310  0, /* tp_weaklistoffset */
23311 #if PY_VERSION_HEX >= 0x02020000
23312  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */
23313 #endif
23314 #if PY_VERSION_HEX >= 0x02030000
23315  0, /* tp_del */
23316 #endif
23317 #if PY_VERSION_HEX >= 0x02060000
23318  0, /* tp_version */
23319 #endif
23320 #ifdef COUNT_ALLOCS
23321  0,0,0,0 /* tp_alloc -> tp_next */
23322 #endif
23323  };
23324  varlink_type = tmp;
23325  type_init = 1;
23326 #if PY_VERSION_HEX < 0x02020000
23327  varlink_type.ob_type = &PyType_Type;
23328 #else
23329  if (PyType_Ready(&varlink_type) < 0)
23330  return NULL;
23331 #endif
23332  }
23333  return &varlink_type;
23334  }
23335 
23336  /* Create a variable linking object for use later */
23337  SWIGINTERN PyObject *
23339  swig_varlinkobject *result = PyObject_NEW(swig_varlinkobject, swig_varlink_type());
23340  if (result) {
23341  result->vars = 0;
23342  }
23343  return ((PyObject*) result);
23344  }
23345 
23346  SWIGINTERN void
23347  SWIG_Python_addvarlink(PyObject *p, char *name, PyObject *(*get_attr)(void), int (*set_attr)(PyObject *p)) {
23349  swig_globalvar *gv = (swig_globalvar *) malloc(sizeof(swig_globalvar));
23350  if (gv) {
23351  size_t size = strlen(name)+1;
23352  gv->name = (char *)malloc(size);
23353  if (gv->name) {
23354  strncpy(gv->name,name,size);
23355  gv->get_attr = get_attr;
23356  gv->set_attr = set_attr;
23357  gv->next = v->vars;
23358  }
23359  }
23360  v->vars = gv;
23361  }
23362 
23363  SWIGINTERN PyObject *
23365  static PyObject *_SWIG_globals = 0;
23366  if (!_SWIG_globals) _SWIG_globals = SWIG_newvarlink();
23367  return _SWIG_globals;
23368  }
23369 
23370  /* -----------------------------------------------------------------------------
23371  * constants/methods manipulation
23372  * ----------------------------------------------------------------------------- */
23373 
23374  /* Install Constants */
23375  SWIGINTERN void
23376  SWIG_Python_InstallConstants(PyObject *d, swig_const_info constants[]) {
23377  PyObject *obj = 0;
23378  size_t i;
23379  for (i = 0; constants[i].type; ++i) {
23380  switch(constants[i].type) {
23381  case SWIG_PY_POINTER:
23382  obj = SWIG_InternalNewPointerObj(constants[i].pvalue, *(constants[i]).ptype,0);
23383  break;
23384  case SWIG_PY_BINARY:
23385  obj = SWIG_NewPackedObj(constants[i].pvalue, constants[i].lvalue, *(constants[i].ptype));
23386  break;
23387  default:
23388  obj = 0;
23389  break;
23390  }
23391  if (obj) {
23392  PyDict_SetItemString(d, constants[i].name, obj);
23393  Py_DECREF(obj);
23394  }
23395  }
23396  }
23397 
23398  /* -----------------------------------------------------------------------------*/
23399  /* Fix SwigMethods to carry the callback ptrs when needed */
23400  /* -----------------------------------------------------------------------------*/
23401 
23402  SWIGINTERN void
23403  SWIG_Python_FixMethods(PyMethodDef *methods,
23404  swig_const_info *const_table,
23405  swig_type_info **types,
23406  swig_type_info **types_initial) {
23407  size_t i;
23408  for (i = 0; methods[i].ml_name; ++i) {
23409  const char *c = methods[i].ml_doc;
23410  if (c && (c = strstr(c, "swig_ptr: "))) {
23411  int j;
23412  swig_const_info *ci = 0;
23413  const char *name = c + 10;
23414  for (j = 0; const_table[j].type; ++j) {
23415  if (strncmp(const_table[j].name, name,
23416  strlen(const_table[j].name)) == 0) {
23417  ci = &(const_table[j]);
23418  break;
23419  }
23420  }
23421  if (ci) {
23422  void *ptr = (ci->type == SWIG_PY_POINTER) ? ci->pvalue : 0;
23423  if (ptr) {
23424  size_t shift = (ci->ptype) - types;
23425  swig_type_info *ty = types_initial[shift];
23426  size_t ldoc = (c - methods[i].ml_doc);
23427  size_t lptr = strlen(ty->name)+2*sizeof(void*)+2;
23428  char *ndoc = (char*)malloc(ldoc + lptr + 10);
23429  if (ndoc) {
23430  char *buff = ndoc;
23431  strncpy(buff, methods[i].ml_doc, ldoc);
23432  buff += ldoc;
23433  strncpy(buff, "swig_ptr: ", 10);
23434  buff += 10;
23435  SWIG_PackVoidPtr(buff, ptr, ty->name, lptr);
23436  methods[i].ml_doc = ndoc;
23437  }
23438  }
23439  }
23440  }
23441  }
23442  }
23443 
23444 #ifdef __cplusplus
23445 }
23446 #endif
23447 
23448 /* -----------------------------------------------------------------------------*
23449  * Partial Init method
23450  * -----------------------------------------------------------------------------*/
23451 
23452 #ifdef __cplusplus
23453 extern "C"
23454 #endif
23455 
23456 SWIGEXPORT
23457 #if PY_VERSION_HEX >= 0x03000000
23458 PyObject*
23459 #else
23460 void
23461 #endif
23462 SWIG_init(void) {
23463  PyObject *m, *d, *md;
23464 #if PY_VERSION_HEX >= 0x03000000
23465  static struct PyModuleDef SWIG_module = {
23466 # if PY_VERSION_HEX >= 0x03020000
23467  PyModuleDef_HEAD_INIT,
23468 # else
23469  {
23470  PyObject_HEAD_INIT(NULL)
23471  NULL, /* m_init */
23472  0, /* m_index */
23473  NULL, /* m_copy */
23474  },
23475 # endif
23476  (char *) SWIG_name,
23477  NULL,
23478  -1,
23479  SwigMethods,
23480  NULL,
23481  NULL,
23482  NULL,
23483  NULL
23484  };
23485 #endif
23486 
23487 #if defined(SWIGPYTHON_BUILTIN)
23488  static SwigPyClientData SwigPyObject_clientdata = {
23489  0, 0, 0, 0, 0, 0, 0
23490  };
23491  static PyGetSetDef this_getset_def = {
23492  (char *)"this", &SwigPyBuiltin_ThisClosure, NULL, NULL, NULL
23493  };
23494  static SwigPyGetSet thisown_getset_closure = {
23495  (PyCFunction) SwigPyObject_own,
23496  (PyCFunction) SwigPyObject_own
23497  };
23498  static PyGetSetDef thisown_getset_def = {
23499  (char *)"thisown", SwigPyBuiltin_GetterClosure, SwigPyBuiltin_SetterClosure, NULL, &thisown_getset_closure
23500  };
23501  PyObject *metatype_args;
23502  PyTypeObject *builtin_pytype;
23503  int builtin_base_count;
23504  swig_type_info *builtin_basetype;
23505  PyObject *tuple;
23506  PyGetSetDescrObject *static_getset;
23507  PyTypeObject *metatype;
23508  SwigPyClientData *cd;
23509  PyObject *public_interface, *public_symbol;
23510  PyObject *this_descr;
23511  PyObject *thisown_descr;
23512  int i;
23513 
23514  (void)builtin_pytype;
23515  (void)builtin_base_count;
23516  (void)builtin_basetype;
23517  (void)tuple;
23518  (void)static_getset;
23519 
23520  /* metatype is used to implement static member variables. */
23521  metatype_args = Py_BuildValue("(s(O){})", "SwigPyObjectType", &PyType_Type);
23522  assert(metatype_args);
23523  metatype = (PyTypeObject *) PyType_Type.tp_call((PyObject *) &PyType_Type, metatype_args, NULL);
23524  assert(metatype);
23525  Py_DECREF(metatype_args);
23526  metatype->tp_setattro = (setattrofunc) &SwigPyObjectType_setattro;
23527  assert(PyType_Ready(metatype) >= 0);
23528 #endif
23529 
23530  /* Fix SwigMethods to carry the callback ptrs when needed */
23531  SWIG_Python_FixMethods(SwigMethods, swig_const_table, swig_types, swig_type_initial);
23532 
23533 #if PY_VERSION_HEX >= 0x03000000
23534  m = PyModule_Create(&SWIG_module);
23535 #else
23536  m = Py_InitModule((char *) SWIG_name, SwigMethods);
23537 #endif
23538  md = d = PyModule_GetDict(m);
23539  (void)md;
23540 
23542 
23543 #ifdef SWIGPYTHON_BUILTIN
23544  SwigPyObject_stype = SWIG_MangledTypeQuery("_p_SwigPyObject");
23545  assert(SwigPyObject_stype);
23546  cd = (SwigPyClientData*) SwigPyObject_stype->clientdata;
23547  if (!cd) {
23548  SwigPyObject_stype->clientdata = &SwigPyObject_clientdata;
23549  SwigPyObject_clientdata.pytype = SwigPyObject_TypeOnce();
23550  } else if (SwigPyObject_TypeOnce()->tp_basicsize != cd->pytype->tp_basicsize) {
23551  PyErr_SetString(PyExc_RuntimeError, "Import error: attempted to load two incompatible swig-generated modules.");
23552 # if PY_VERSION_HEX >= 0x03000000
23553  return NULL;
23554 # else
23555  return;
23556 # endif
23557  }
23558 
23559  /* All objects have a 'this' attribute */
23560  this_descr = PyDescr_NewGetSet(SwigPyObject_type(), &this_getset_def);
23561  (void)this_descr;
23562 
23563  /* All objects have a 'thisown' attribute */
23564  thisown_descr = PyDescr_NewGetSet(SwigPyObject_type(), &thisown_getset_def);
23565  (void)thisown_descr;
23566 
23567  public_interface = PyList_New(0);
23568  public_symbol = 0;
23569  (void)public_symbol;
23570 
23571  PyDict_SetItemString(md, "__all__", public_interface);
23572  Py_DECREF(public_interface);
23573  for (i = 0; SwigMethods[i].ml_name != NULL; ++i)
23574  SwigPyBuiltin_AddPublicSymbol(public_interface, SwigMethods[i].ml_name);
23575  for (i = 0; swig_const_table[i].name != 0; ++i)
23576  SwigPyBuiltin_AddPublicSymbol(public_interface, swig_const_table[i].name);
23577 #endif
23578 
23580 
23581 
23582  import_array();
23583 
23584  SWIG_Python_SetConstant(d, "PLESC_SET_RGB",SWIG_From_int((int)(1)));
23585  SWIG_Python_SetConstant(d, "PLESC_ALLOC_NCOL",SWIG_From_int((int)(2)));
23586  SWIG_Python_SetConstant(d, "PLESC_SET_LPB",SWIG_From_int((int)(3)));
23587  SWIG_Python_SetConstant(d, "PLESC_EXPOSE",SWIG_From_int((int)(4)));
23588  SWIG_Python_SetConstant(d, "PLESC_RESIZE",SWIG_From_int((int)(5)));
23589  SWIG_Python_SetConstant(d, "PLESC_REDRAW",SWIG_From_int((int)(6)));
23590  SWIG_Python_SetConstant(d, "PLESC_TEXT",SWIG_From_int((int)(7)));
23591  SWIG_Python_SetConstant(d, "PLESC_GRAPH",SWIG_From_int((int)(8)));
23592  SWIG_Python_SetConstant(d, "PLESC_FILL",SWIG_From_int((int)(9)));
23593  SWIG_Python_SetConstant(d, "PLESC_DI",SWIG_From_int((int)(10)));
23594  SWIG_Python_SetConstant(d, "PLESC_FLUSH",SWIG_From_int((int)(11)));
23595  SWIG_Python_SetConstant(d, "PLESC_EH",SWIG_From_int((int)(12)));
23596  SWIG_Python_SetConstant(d, "PLESC_GETC",SWIG_From_int((int)(13)));
23597  SWIG_Python_SetConstant(d, "PLESC_SWIN",SWIG_From_int((int)(14)));
23598  SWIG_Python_SetConstant(d, "PLESC_DOUBLEBUFFERING",SWIG_From_int((int)(15)));
23599  SWIG_Python_SetConstant(d, "PLESC_XORMOD",SWIG_From_int((int)(16)));
23600  SWIG_Python_SetConstant(d, "PLESC_SET_COMPRESSION",SWIG_From_int((int)(17)));
23601  SWIG_Python_SetConstant(d, "PLESC_CLEAR",SWIG_From_int((int)(18)));
23602  SWIG_Python_SetConstant(d, "PLESC_DASH",SWIG_From_int((int)(19)));
23603  SWIG_Python_SetConstant(d, "PLESC_HAS_TEXT",SWIG_From_int((int)(20)));
23604  SWIG_Python_SetConstant(d, "PLESC_IMAGE",SWIG_From_int((int)(21)));
23605  SWIG_Python_SetConstant(d, "PLESC_IMAGEOPS",SWIG_From_int((int)(22)));
23606  SWIG_Python_SetConstant(d, "PLESC_PL2DEVCOL",SWIG_From_int((int)(23)));
23607  SWIG_Python_SetConstant(d, "PLESC_DEV2PLCOL",SWIG_From_int((int)(24)));
23608  SWIG_Python_SetConstant(d, "PLESC_SETBGFG",SWIG_From_int((int)(25)));
23609  SWIG_Python_SetConstant(d, "PLESC_DEVINIT",SWIG_From_int((int)(26)));
23610  SWIG_Python_SetConstant(d, "PLESC_GETBACKEND",SWIG_From_int((int)(27)));
23611  SWIG_Python_SetConstant(d, "PLESC_BEGIN_TEXT",SWIG_From_int((int)(28)));
23612  SWIG_Python_SetConstant(d, "PLESC_TEXT_CHAR",SWIG_From_int((int)(29)));
23613  SWIG_Python_SetConstant(d, "PLESC_CONTROL_CHAR",SWIG_From_int((int)(30)));
23614  SWIG_Python_SetConstant(d, "PLESC_END_TEXT",SWIG_From_int((int)(31)));
23615  SWIG_Python_SetConstant(d, "PLESC_START_RASTERIZE",SWIG_From_int((int)(32)));
23616  SWIG_Python_SetConstant(d, "PLESC_END_RASTERIZE",SWIG_From_int((int)(33)));
23617  SWIG_Python_SetConstant(d, "PLESC_ARC",SWIG_From_int((int)(34)));
23618  SWIG_Python_SetConstant(d, "PLESC_GRADIENT",SWIG_From_int((int)(35)));
23619  SWIG_Python_SetConstant(d, "PLESC_MODESET",SWIG_From_int((int)(36)));
23620  SWIG_Python_SetConstant(d, "PLESC_MODEGET",SWIG_From_int((int)(37)));
23621  SWIG_Python_SetConstant(d, "PLESC_FIXASPECT",SWIG_From_int((int)(38)));
23622  SWIG_Python_SetConstant(d, "PLESC_IMPORT_BUFFER",SWIG_From_int((int)(39)));
23623  SWIG_Python_SetConstant(d, "PLESC_APPEND_BUFFER",SWIG_From_int((int)(40)));
23624  SWIG_Python_SetConstant(d, "PLESC_FLUSH_REMAINING_BUFFER",SWIG_From_int((int)(41)));
23625  SWIG_Python_SetConstant(d, "PLTEXT_FONTCHANGE",SWIG_From_int((int)(0)));
23626  SWIG_Python_SetConstant(d, "PLTEXT_SUPERSCRIPT",SWIG_From_int((int)(1)));
23627  SWIG_Python_SetConstant(d, "PLTEXT_SUBSCRIPT",SWIG_From_int((int)(2)));
23628  SWIG_Python_SetConstant(d, "PLTEXT_BACKCHAR",SWIG_From_int((int)(3)));
23629  SWIG_Python_SetConstant(d, "PLTEXT_OVERLINE",SWIG_From_int((int)(4)));
23630  SWIG_Python_SetConstant(d, "PLTEXT_UNDERLINE",SWIG_From_int((int)(5)));
23631  SWIG_Python_SetConstant(d, "ZEROW2B",SWIG_From_int((int)(1)));
23632  SWIG_Python_SetConstant(d, "ZEROW2D",SWIG_From_int((int)(2)));
23633  SWIG_Python_SetConstant(d, "ONEW2B",SWIG_From_int((int)(3)));
23634  SWIG_Python_SetConstant(d, "ONEW2D",SWIG_From_int((int)(4)));
23635  SWIG_Python_SetConstant(d, "PLSWIN_DEVICE",SWIG_From_int((int)(1)));
23636  SWIG_Python_SetConstant(d, "PLSWIN_WORLD",SWIG_From_int((int)(2)));
23637  SWIG_Python_SetConstant(d, "PL_X_AXIS",SWIG_From_int((int)(1)));
23638  SWIG_Python_SetConstant(d, "PL_Y_AXIS",SWIG_From_int((int)(2)));
23639  SWIG_Python_SetConstant(d, "PL_Z_AXIS",SWIG_From_int((int)(3)));
23640  SWIG_Python_SetConstant(d, "PL_OPT_ENABLED",SWIG_From_int((int)(0x0001)));
23641  SWIG_Python_SetConstant(d, "PL_OPT_ARG",SWIG_From_int((int)(0x0002)));
23642  SWIG_Python_SetConstant(d, "PL_OPT_NODELETE",SWIG_From_int((int)(0x0004)));
23643  SWIG_Python_SetConstant(d, "PL_OPT_INVISIBLE",SWIG_From_int((int)(0x0008)));
23644  SWIG_Python_SetConstant(d, "PL_OPT_DISABLED",SWIG_From_int((int)(0x0010)));
23645  SWIG_Python_SetConstant(d, "PL_OPT_FUNC",SWIG_From_int((int)(0x0100)));
23646  SWIG_Python_SetConstant(d, "PL_OPT_BOOL",SWIG_From_int((int)(0x0200)));
23647  SWIG_Python_SetConstant(d, "PL_OPT_INT",SWIG_From_int((int)(0x0400)));
23648  SWIG_Python_SetConstant(d, "PL_OPT_FLOAT",SWIG_From_int((int)(0x0800)));
23649  SWIG_Python_SetConstant(d, "PL_OPT_STRING",SWIG_From_int((int)(0x1000)));
23650  SWIG_Python_SetConstant(d, "PL_PARSE_PARTIAL",SWIG_From_int((int)(0x0000)));
23651  SWIG_Python_SetConstant(d, "PL_PARSE_FULL",SWIG_From_int((int)(0x0001)));
23652  SWIG_Python_SetConstant(d, "PL_PARSE_QUIET",SWIG_From_int((int)(0x0002)));
23653  SWIG_Python_SetConstant(d, "PL_PARSE_NODELETE",SWIG_From_int((int)(0x0004)));
23654  SWIG_Python_SetConstant(d, "PL_PARSE_SHOWALL",SWIG_From_int((int)(0x0008)));
23655  SWIG_Python_SetConstant(d, "PL_PARSE_OVERRIDE",SWIG_From_int((int)(0x0010)));
23656  SWIG_Python_SetConstant(d, "PL_PARSE_NOPROGRAM",SWIG_From_int((int)(0x0020)));
23657  SWIG_Python_SetConstant(d, "PL_PARSE_NODASH",SWIG_From_int((int)(0x0040)));
23658  SWIG_Python_SetConstant(d, "PL_PARSE_SKIP",SWIG_From_int((int)(0x0080)));
23659  SWIG_Python_SetConstant(d, "PL_FCI_MARK",SWIG_From_int((int)(0x80000000)));
23660  SWIG_Python_SetConstant(d, "PL_FCI_IMPOSSIBLE",SWIG_From_int((int)(0x00000000)));
23661  SWIG_Python_SetConstant(d, "PL_FCI_HEXDIGIT_MASK",SWIG_From_int((int)(0xf)));
23662  SWIG_Python_SetConstant(d, "PL_FCI_HEXPOWER_MASK",SWIG_From_int((int)(0x7)));
23663  SWIG_Python_SetConstant(d, "PL_FCI_HEXPOWER_IMPOSSIBLE",SWIG_From_int((int)(0xf)));
23664  SWIG_Python_SetConstant(d, "PL_FCI_FAMILY",SWIG_From_int((int)(0x0)));
23665  SWIG_Python_SetConstant(d, "PL_FCI_STYLE",SWIG_From_int((int)(0x1)));
23666  SWIG_Python_SetConstant(d, "PL_FCI_WEIGHT",SWIG_From_int((int)(0x2)));
23667  SWIG_Python_SetConstant(d, "PL_FCI_SANS",SWIG_From_int((int)(0x0)));
23668  SWIG_Python_SetConstant(d, "PL_FCI_SERIF",SWIG_From_int((int)(0x1)));
23669  SWIG_Python_SetConstant(d, "PL_FCI_MONO",SWIG_From_int((int)(0x2)));
23670  SWIG_Python_SetConstant(d, "PL_FCI_SCRIPT",SWIG_From_int((int)(0x3)));
23671  SWIG_Python_SetConstant(d, "PL_FCI_SYMBOL",SWIG_From_int((int)(0x4)));
23672  SWIG_Python_SetConstant(d, "PL_FCI_UPRIGHT",SWIG_From_int((int)(0x0)));
23673  SWIG_Python_SetConstant(d, "PL_FCI_ITALIC",SWIG_From_int((int)(0x1)));
23674  SWIG_Python_SetConstant(d, "PL_FCI_OBLIQUE",SWIG_From_int((int)(0x2)));
23675  SWIG_Python_SetConstant(d, "PL_FCI_MEDIUM",SWIG_From_int((int)(0x0)));
23676  SWIG_Python_SetConstant(d, "PL_FCI_BOLD",SWIG_From_int((int)(0x1)));
23677  SWIG_Python_SetConstant(d, "PL_MAXKEY",SWIG_From_int((int)(16)));
23678  SWIG_Python_SetConstant(d, "PL_MASK_SHIFT",SWIG_From_int((int)(0x1)));
23679  SWIG_Python_SetConstant(d, "PL_MASK_CAPS",SWIG_From_int((int)(0x2)));
23680  SWIG_Python_SetConstant(d, "PL_MASK_CONTROL",SWIG_From_int((int)(0x4)));
23681  SWIG_Python_SetConstant(d, "PL_MASK_ALT",SWIG_From_int((int)(0x8)));
23682  SWIG_Python_SetConstant(d, "PL_MASK_NUM",SWIG_From_int((int)(0x10)));
23683  SWIG_Python_SetConstant(d, "PL_MASK_ALTGR",SWIG_From_int((int)(0x20)));
23684  SWIG_Python_SetConstant(d, "PL_MASK_WIN",SWIG_From_int((int)(0x40)));
23685  SWIG_Python_SetConstant(d, "PL_MASK_SCROLL",SWIG_From_int((int)(0x80)));
23686  SWIG_Python_SetConstant(d, "PL_MASK_BUTTON1",SWIG_From_int((int)(0x100)));
23687  SWIG_Python_SetConstant(d, "PL_MASK_BUTTON2",SWIG_From_int((int)(0x200)));
23688  SWIG_Python_SetConstant(d, "PL_MASK_BUTTON3",SWIG_From_int((int)(0x400)));
23689  SWIG_Python_SetConstant(d, "PL_MASK_BUTTON4",SWIG_From_int((int)(0x800)));
23690  SWIG_Python_SetConstant(d, "PL_MASK_BUTTON5",SWIG_From_int((int)(0x1000)));
23691  SWIG_Python_SetConstant(d, "PL_MAXWINDOWS",SWIG_From_int((int)(64)));
23692  SWIG_Python_SetConstant(d, "PL_NOTSET",SWIG_From_int((int)((-42))));
23693  SWIG_Python_SetConstant(d, "PLESC_DOUBLEBUFFERING_ENABLE",SWIG_From_int((int)(1)));
23694  SWIG_Python_SetConstant(d, "PLESC_DOUBLEBUFFERING_DISABLE",SWIG_From_int((int)(2)));
23695  SWIG_Python_SetConstant(d, "PLESC_DOUBLEBUFFERING_QUERY",SWIG_From_int((int)(3)));
23696  SWIG_Python_SetConstant(d, "PL_BIN_DEFAULT",SWIG_From_int((int)(0x0)));
23697  SWIG_Python_SetConstant(d, "PL_BIN_CENTRED",SWIG_From_int((int)(0x1)));
23698  SWIG_Python_SetConstant(d, "PL_BIN_NOEXPAND",SWIG_From_int((int)(0x2)));
23699  SWIG_Python_SetConstant(d, "PL_BIN_NOEMPTY",SWIG_From_int((int)(0x4)));
23700  SWIG_Python_SetConstant(d, "GRID_CSA",SWIG_From_int((int)(1)));
23701  SWIG_Python_SetConstant(d, "GRID_DTLI",SWIG_From_int((int)(2)));
23702  SWIG_Python_SetConstant(d, "GRID_NNI",SWIG_From_int((int)(3)));
23703  SWIG_Python_SetConstant(d, "GRID_NNIDW",SWIG_From_int((int)(4)));
23704  SWIG_Python_SetConstant(d, "GRID_NNLI",SWIG_From_int((int)(5)));
23705  SWIG_Python_SetConstant(d, "GRID_NNAIDW",SWIG_From_int((int)(6)));
23706  SWIG_Python_SetConstant(d, "PL_HIST_DEFAULT",SWIG_From_int((int)(0x00)));
23707  SWIG_Python_SetConstant(d, "PL_HIST_NOSCALING",SWIG_From_int((int)(0x01)));
23708  SWIG_Python_SetConstant(d, "PL_HIST_IGNORE_OUTLIERS",SWIG_From_int((int)(0x02)));
23709  SWIG_Python_SetConstant(d, "PL_HIST_NOEXPAND",SWIG_From_int((int)(0x08)));
23710  SWIG_Python_SetConstant(d, "PL_HIST_NOEMPTY",SWIG_From_int((int)(0x10)));
23711  SWIG_Python_SetConstant(d, "PL_POSITION_LEFT",SWIG_From_int((int)(0x1)));
23712  SWIG_Python_SetConstant(d, "PL_POSITION_RIGHT",SWIG_From_int((int)(0x2)));
23713  SWIG_Python_SetConstant(d, "PL_POSITION_TOP",SWIG_From_int((int)(0x4)));
23714  SWIG_Python_SetConstant(d, "PL_POSITION_BOTTOM",SWIG_From_int((int)(0x8)));
23715  SWIG_Python_SetConstant(d, "PL_POSITION_INSIDE",SWIG_From_int((int)(0x10)));
23716  SWIG_Python_SetConstant(d, "PL_POSITION_OUTSIDE",SWIG_From_int((int)(0x20)));
23717  SWIG_Python_SetConstant(d, "PL_POSITION_VIEWPORT",SWIG_From_int((int)(0x40)));
23718  SWIG_Python_SetConstant(d, "PL_POSITION_SUBPAGE",SWIG_From_int((int)(0x80)));
23719  SWIG_Python_SetConstant(d, "PL_LEGEND_NONE",SWIG_From_int((int)(0x1)));
23720  SWIG_Python_SetConstant(d, "PL_LEGEND_COLOR_BOX",SWIG_From_int((int)(0x2)));
23721  SWIG_Python_SetConstant(d, "PL_LEGEND_LINE",SWIG_From_int((int)(0x4)));
23722  SWIG_Python_SetConstant(d, "PL_LEGEND_SYMBOL",SWIG_From_int((int)(0x8)));
23723  SWIG_Python_SetConstant(d, "PL_LEGEND_TEXT_LEFT",SWIG_From_int((int)(0x10)));
23724  SWIG_Python_SetConstant(d, "PL_LEGEND_BACKGROUND",SWIG_From_int((int)(0x20)));
23725  SWIG_Python_SetConstant(d, "PL_LEGEND_BOUNDING_BOX",SWIG_From_int((int)(0x40)));
23726  SWIG_Python_SetConstant(d, "PL_LEGEND_ROW_MAJOR",SWIG_From_int((int)(0x80)));
23727  SWIG_Python_SetConstant(d, "PL_COLORBAR_LABEL_LEFT",SWIG_From_int((int)(0x1)));
23728  SWIG_Python_SetConstant(d, "PL_COLORBAR_LABEL_RIGHT",SWIG_From_int((int)(0x2)));
23729  SWIG_Python_SetConstant(d, "PL_COLORBAR_LABEL_TOP",SWIG_From_int((int)(0x4)));
23730  SWIG_Python_SetConstant(d, "PL_COLORBAR_LABEL_BOTTOM",SWIG_From_int((int)(0x8)));
23731  SWIG_Python_SetConstant(d, "PL_COLORBAR_IMAGE",SWIG_From_int((int)(0x10)));
23732  SWIG_Python_SetConstant(d, "PL_COLORBAR_SHADE",SWIG_From_int((int)(0x20)));
23733  SWIG_Python_SetConstant(d, "PL_COLORBAR_GRADIENT",SWIG_From_int((int)(0x40)));
23734  SWIG_Python_SetConstant(d, "PL_COLORBAR_CAP_NONE",SWIG_From_int((int)(0x80)));
23735  SWIG_Python_SetConstant(d, "PL_COLORBAR_CAP_LOW",SWIG_From_int((int)(0x100)));
23736  SWIG_Python_SetConstant(d, "PL_COLORBAR_CAP_HIGH",SWIG_From_int((int)(0x200)));
23737  SWIG_Python_SetConstant(d, "PL_COLORBAR_SHADE_LABEL",SWIG_From_int((int)(0x400)));
23738  SWIG_Python_SetConstant(d, "PL_COLORBAR_ORIENT_RIGHT",SWIG_From_int((int)(0x800)));
23739  SWIG_Python_SetConstant(d, "PL_COLORBAR_ORIENT_TOP",SWIG_From_int((int)(0x1000)));
23740  SWIG_Python_SetConstant(d, "PL_COLORBAR_ORIENT_LEFT",SWIG_From_int((int)(0x2000)));
23741  SWIG_Python_SetConstant(d, "PL_COLORBAR_ORIENT_BOTTOM",SWIG_From_int((int)(0x4000)));
23742  SWIG_Python_SetConstant(d, "PL_COLORBAR_BACKGROUND",SWIG_From_int((int)(0x8000)));
23743  SWIG_Python_SetConstant(d, "PL_COLORBAR_BOUNDING_BOX",SWIG_From_int((int)(0x10000)));
23744  SWIG_Python_SetConstant(d, "PL_DRAWMODE_UNKNOWN",SWIG_From_int((int)(0x0)));
23745  SWIG_Python_SetConstant(d, "PL_DRAWMODE_DEFAULT",SWIG_From_int((int)(0x1)));
23746  SWIG_Python_SetConstant(d, "PL_DRAWMODE_REPLACE",SWIG_From_int((int)(0x2)));
23747  SWIG_Python_SetConstant(d, "PL_DRAWMODE_XOR",SWIG_From_int((int)(0x4)));
23748  SWIG_Python_SetConstant(d, "DRAW_LINEX",SWIG_From_int((int)(0x001)));
23749  SWIG_Python_SetConstant(d, "DRAW_LINEY",SWIG_From_int((int)(0x002)));
23750  SWIG_Python_SetConstant(d, "DRAW_LINEXY",SWIG_From_int((int)(0x003)));
23751  SWIG_Python_SetConstant(d, "MAG_COLOR",SWIG_From_int((int)(0x004)));
23752  SWIG_Python_SetConstant(d, "BASE_CONT",SWIG_From_int((int)(0x008)));
23753  SWIG_Python_SetConstant(d, "TOP_CONT",SWIG_From_int((int)(0x010)));
23754  SWIG_Python_SetConstant(d, "SURF_CONT",SWIG_From_int((int)(0x020)));
23755  SWIG_Python_SetConstant(d, "DRAW_SIDES",SWIG_From_int((int)(0x040)));
23756  SWIG_Python_SetConstant(d, "FACETED",SWIG_From_int((int)(0x080)));
23757  SWIG_Python_SetConstant(d, "MESH",SWIG_From_int((int)(0x100)));
23758 #if PY_VERSION_HEX >= 0x03000000
23759  return m;
23760 #else
23761  return;
23762 #endif
23763 }
23764 
#define MY_BLOCK_THREADS
SWIGRUNTIME void SWIG_TypeNewClientData(swig_type_info *ti, void *clientdata)
SWIGRUNTIME SwigPyClientData * SwigPyClientData_New(PyObject *obj)
SWIGINTERN char * SWIG_Python_str_AsChar(PyObject *str)
#define SWIG_PYBUFFER_SIZE
#define SWIG_TMPOBJ
SWIGINTERN PyObject * _wrap_plrandd(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plscolbg(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_PYTHON_THREAD_END_BLOCK
#define SWIG_STATIC_POINTER(var)
PyObject_HEAD void * ptr
SWIGINTERN PyObject * _wrap_plflush(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plsfam
Definition: plplot.h:819
SWIGINTERN PyObject * _wrap_plmapfill(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plw3d
Definition: plplot.h:864
static swig_type_info _swigt__p_f_int_double_p_char_int_p_void__void
SWIGINTERNINLINE int SWIG_CanCastAsInteger(double *d, double min, double max)
SWIGINTERN PyObject * _wrap_plbox(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plconfigtime(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
void cleanup_PLcGrid1(void)
static const char * name
Definition: tkMain.c:135
#define plpath
Definition: plplot.h:760
static swig_type_info _swigt__p_PLGraphicsIn
SWIGINTERN PyObject * _wrap_pltr1(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
PLPointer marshal_PLPointer(PyObject *input, int isimg)
SWIGRUNTIME const char * SWIG_UnpackData(const char *c, void *ptr, size_t sz)
PLFLT(* f2eval_func)(PLINT, PLINT, PLPointer)
#define plgxax
Definition: plplot.h:744
SWIGINTERN PyObject * _wrap_plscmap0n(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plgpage(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN void SWIG_Python_SetConstant(PyObject *d, const char *name, PyObject *obj)
#define SWIG_MangledTypeQuery(name)
#define plsstrm
Definition: plplot.h:837
#define NPY_PLINT
SWIGINTERN PyObject * _wrap_plot3dc(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * SwigPyObject_getattr(SwigPyObject *sobj, char *name)
PyTypeObject * pytype
PLINT plGetCursor(PLGraphicsIn *plg)
Definition: plpage.c:244
SWIGINTERN PyObject * _wrap_plstyl(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plspage
Definition: plplot.h:833
PyObject_HEAD swig_globalvar * vars
SWIGINTERN PyObject * _wrap_plstripa(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plGetCursor(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plvpor
Definition: plplot.h:862
struct swig_varlinkobject swig_varlinkobject
SWIGINTERN PyObject * _wrap_PLGraphicsIn_dX_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plOptUsage(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plscompression(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_pltimefmt(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * swig_varlink_getattr(swig_varlinkobject *v, char *n)
void do_pltr_callback(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer data)
SWIGINTERN PyObject * _wrap_plgvpd(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
struct swig_cast_info swig_cast_info
SWIGINTERN PyObject * _wrap_plwind(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
swig_type_info ** ptype
SWIGINTERN int SWIG_AsVal_unsigned_SS_int(PyObject *obj, unsigned int *val)
SWIGINTERN PyObject * _wrap_plptex(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plmtex3
Definition: plplot.h:773
#define plerry
Definition: plplot.h:712
SWIGINTERN PyObject * _wrap_PLGraphicsIn_wX_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plinit(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plsyax
Definition: plplot.h:854
inquiry lenfunc
SWIGINTERN PyObject * _wrap_plhist(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_AttributeError
SWIGRUNTIME swig_type_info * SWIG_TypeQueryModule(swig_module_info *start, swig_module_info *end, const char *name)
SWIGINTERN PyObject * SwigPyObject_acquire(PyObject *v, PyObject *SWIGUNUSEDPARM(args))
SWIGINTERN PyObject * _wrap_plspal1(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME PyObject * SWIG_PyInstanceMethod_New(PyObject *SWIGUNUSEDPARM(self), PyObject *SWIGUNUSEDPARM(func))
#define plschr
Definition: plplot.h:793
#define plsdev
Definition: plplot.h:810
getwritebufferproc writebufferproc
#define plgdev
Definition: plplot.h:725
static swig_type_info * swig_type_initial[]
#define SWIG_InstallConstants(d, constants)
#define SWIG_init
#define SWIG_IndexError
SWIGINTERN PyObject * _wrap_plseed(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
int min(int a, int b)
SWIGINTERN PyObject * _wrap_plgxax(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIGUNUSEDPARM(p)
SWIGINTERN PyObject * _wrap_plspause(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define pllegend
Definition: plplot.h:757
#define SWIG_Python_CallFunctor(functor, obj)
#define SWIG_DivisionByZero
SWIGINTERN PyObject * _wrap_plmap(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
static PyMethodDef SwigMethods[]
SWIGINTERN PyObject * _wrap_plcont(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plmesh(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plshade
Definition: plplot.h:823
struct swig_globalvar * next
#define plscompression
Definition: plplot.h:809
SWIGRUNTIME const char * SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name)
#define plarc
Definition: plplot.h:690
SWIGINTERN void SWIG_Python_addvarlink(PyObject *p, char *name, PyObject *(*get_attr)(void), int(*set_attr)(PyObject *p))
SWIGRUNTIME int SwigPyPacked_compare(SwigPyPacked *v, SwigPyPacked *w)
PLUINT PLUNICODE
Definition: plplot.h:194
SWIGINTERN PyObject * _wrap_plfamadv(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
static PLcGrid2 tmpGrid2
void cleanup_mapform(void)
#define plot3dc
Definition: plplot.h:775
static swig_type_info _swigt__p_f_int_p_q_const__double_p_q_const__double__void
SWIGINTERN PyObject * _wrap_plline(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plbox3(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plot3dcl
Definition: plplot.h:776
SWIGINTERN PyObject * _wrap_plmapline(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
void *(* swig_converter_func)(void *, int *)
SWIGINTERN PyObject * _wrap_plsetopt(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
static PLcGrid tmpGrid1
SWIGRUNTIMEINLINE int SWIG_Python_CheckImplicit(swig_type_info *ty)
#define pllsty
Definition: plplot.h:762
#define plsmin
Definition: plplot.h:830
#define plwind
Definition: plplot.h:869
#define plclear
Definition: plplot.h:698
#define plfill
Definition: plplot.h:714
#define plconfigtime
Definition: plplot.h:702
static swig_type_info _swigt__p_p_double
SWIGRUNTIME swig_type_info * SWIG_Python_TypeQuery(const char *type)
SWIGINTERN PyObject * _wrap_plbin(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plsurf3dl
Definition: plplot.h:850
SWIGINTERN PyObject * _wrap_plsdev(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
PyObject_HEAD void * pack
SWIGINTERN PyObject * _wrap_plscmap1l(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_POINTER_NEW
void do_ct_callback(PLFLT x, PLFLT y, PLFLT *xt, PLFLT *yt, PLPointer data)
void plmapline(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy, PLINT_VECTOR plotentries, PLINT nplotentries)
Definition: plmap.c:628
SWIGRUNTIME PyObject * SwigPyObject_repr(SwigPyObject *v, PyObject *args)
#define plbtime
Definition: plplot.h:696
SWIGRUNTIME PyObject * SWIG_Python_NewPointerObj(PyObject *self, void *ptr, swig_type_info *type, int flags)
SWIGRUNTIMEINLINE PyObject * _SWIG_This(void)
SWIGINTERN PyObject * _wrap_plctime(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define pl_setcontlabelparam
Definition: plplot.h:688
static swig_module_info swig_module
SWIGRUNTIMEINLINE const char * SWIG_TypeName(const swig_type_info *ty)
SWIGINTERN PyObject * _wrap_plpsty(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_TypeError
#define plscolbg
Definition: plplot.h:806
#define SWIG_BUFFER_SIZE
swig_dycast_func dcast
struct swig_cast_info * cast
#define plfont
Definition: plplot.h:717
static PyObject * swig_this
SWIGINTERN PyObject * _wrap_plspage(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plstyl
Definition: plplot.h:848
SWIGINTERN PyObject * _wrap_plsdidev(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plpoly3
Definition: plplot.h:781
struct swig_globalvar swig_globalvar
static PLINT Alen
#define plimage
Definition: plplot.h:752
swig_type_info * type
SWIGINTERN PyObject * _wrap_PLGraphicsIn_subwindow_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plfontld
Definition: plplot.h:718
SWIGRUNTIMEINLINE PyObject * SWIG_Python_NewPackedObj(void *ptr, size_t sz, swig_type_info *type)
#define plscolbga
Definition: plplot.h:807
SWIGINTERN PyObject * _wrap_PLGraphicsIn_button_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define Py_NotImplemented
#define plbin
Definition: plplot.h:692
static swig_type_info _swigt__p_int
SWIGRUNTIME PyTypeObject * SwigPyPacked_type(void)
SWIGINTERN PyObject * _wrap_plMinMax2dGrid(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
ct_func marshal_ct(PyObject *input)
#define plsdiori
Definition: plplot.h:813
#define SWIG_Python_ConvertPtr(obj, pptr, type, flags)
SWIGRUNTIME PyTypeObject * SwigPyPacked_TypeOnce(void)
SWIGINTERN PyObject * _wrap_plend1(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIGEXPORT
SWIGINTERN PyObject * _wrap_pljoin(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
void plmeridians(PLMAPFORM_callback mapform, PLFLT dlong, PLFLT dlat, PLFLT minlong, PLFLT maxlong, PLFLT minlat, PLFLT maxlat)
Definition: plmap.c:742
#define plparseopts
Definition: plplot.h:777
SWIGRUNTIME int SWIG_Python_AddErrMesg(const char *mesg, int infront)
#define SWIG_IOError
void plmaptex(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLFLT dx, PLFLT dy, PLFLT just, PLCHAR_VECTOR text, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy, PLINT plotentry)
Definition: plmap.c:673
#define plsym
Definition: plplot.h:855
#define plscmap1
Definition: plplot.h:797
SWIGINTERN PyObject * _wrap_plbtime(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plinit
Definition: plplot.h:754
SWIGINTERN void SWIG_Python_InstallConstants(PyObject *d, swig_const_info constants[])
SWIGINTERN PyObject * swig_varlink_repr(swig_varlinkobject *SWIGUNUSEDPARM(v))
#define plctime
Definition: plplot.h:705
#define pltimefmt
Definition: plplot.h:858
#define plscmap1n
Definition: plplot.h:801
SWIGINTERN PyObject * _wrap_plscmap1(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME swig_type_info * SWIG_MangledTypeQueryModule(swig_module_info *start, swig_module_info *end, const char *name)
SWIGINTERN PyObject * _wrap_plsfont(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
swig_type_info * ty
SWIGINTERN PyObject * _wrap_plbop(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
static swig_type_info _swigt__p_unsigned_int
#define plbop
Definition: plplot.h:693
void(* mapform_func)(PLINT, PLFLT *, PLFLT *)
SWIGRUNTIMEINLINE PyObject * SWIG_Python_ExceptionType(swig_type_info *desc)
static PLINT Ylen
static swig_type_info _swigt__p_f_double_double__int
PyObject * python_label
SWIGRUNTIME char * SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz)
SWIGINTERN int SWIG_AsVal_double(PyObject *obj, double *val)
#define plsdiplt
Definition: plplot.h:814
#define plsvect
Definition: plplot.h:851
#define plscmap1a
Definition: plplot.h:798
#define plssub
Definition: plplot.h:838
#define SWIG_DelNewMask(r)
#define SWIG_NewPointerObj(ptr, type, flags)
SWIGINTERN PyObject * _wrap_plsmin(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_PLGraphicsIn_string_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plmtex3(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plpoin3(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_POINTER_OWN
SWIGRUNTIME const char * SWIG_TypePrettyName(const swig_type_info *type)
static swig_cast_info _swigc__p_p_double[]
SWIGINTERN PyObject * _wrap_plgcol0(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
PyArrayObject * pltr_xg
void * PLPointer
Definition: plplot.h:202
#define plspal1
Definition: plplot.h:835
#define plsetopt
Definition: plplot.h:818
SWIGINTERN PyObject * _wrap_plenv(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_OLDOBJ
pltr_func marshal_pltr(PyObject *input)
static swig_cast_info _swigc__p_PLcGrid2[]
#define plmeshc
Definition: plplot.h:770
SWIGINTERN PyObject * _wrap_plshades(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plgcompression
Definition: plplot.h:724
SWIGINTERN PyObject * _wrap_plot3d(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plpath(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plszax
Definition: plplot.h:856
#define plvsta
Definition: plplot.h:863
SWIGINTERN PyObject * _wrap_PLGraphicsIn_state_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_TypeQuery(name)
SWIGINTERN PyObject * _wrap_PLGraphicsIn_wY_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plgfam(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * SWIG_Python_str_FromChar(const char *c)
#define SWIG_Python_str_DelForPy3(x)
PyMappingMethods as_mapping
SWIGINTERN void swig_varlink_dealloc(swig_varlinkobject *v)
SWIGINTERNINLINE PyObject * SWIG_FromCharPtrAndSize(const char *carray, size_t size)
SWIGINTERN int swig_varlink_setattr(swig_varlinkobject *v, char *n, PyObject *p)
#define plgpage
Definition: plplot.h:735
#define plaxes
Definition: plplot.h:691
#define SWIG_OK
SWIGRUNTIMEINLINE int SwigPyPacked_Check(PyObject *op)
#define SWIG_GetModule(clientdata)
#define plsori
Definition: plplot.h:832
SWIGINTERN PyObject * _wrap_plpoin(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_IsTmpObj(r)
SWIGINTERN PyObject * _wrap_plfont(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_pllightsource(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_pleop(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME void SWIG_TypeClientData(swig_type_info *ti, void *clientdata)
SWIGRUNTIME void SwigPyPacked_dealloc(PyObject *v)
#define SWIG_as_voidptrptr(a)
#define SWIGINTERNINLINE
SWIGINTERN PyObject * _wrap_plgdidev(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plgdiplt
Definition: plplot.h:728
SWIGINTERN PyObject * _wrap_plmtex(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plvsta(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plscmap0a
Definition: plplot.h:795
#define SWIG_PY_BINARY
static swig_cast_info _swigc__p_double[]
SWIGINTERN PyObject * SwigPyObject_own(PyObject *v, PyObject *args)
PLINT ny
Definition: plplot.h:533
#define SWIG_RuntimeError
struct swig_type_info swig_type_info
#define plfamadv
Definition: plplot.h:713
SWIGRUNTIME int SWIG_Python_ConvertPtrAndOwn(PyObject *obj, void **ptr, swig_type_info *ty, int flags, int *own)
static swig_type_info _swigt__p_p_char
#define SWIG_BUILTIN_TP_INIT
#define PyString_AsStringAndSize(obj, s, len)
SWIGINTERN PyObject * _wrap_plscol0a(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plend
Definition: plplot.h:706
SWIGINTERN PyObject * _wrap_plglevel(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_ConvertPtr(obj, pptr, type, flags)
SWIGINTERN PyObject * _wrap_plstring(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_Python_str_FromFormat
SWIGRUNTIME int SWIG_Python_ConvertPacked(PyObject *obj, void *ptr, size_t sz, swig_type_info *ty)
SWIGINTERN PyObject * _wrap_plmkstrm(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_new_PLGraphicsIn(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plsyax(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plsmem
Definition: plplot.h:828
#define plgfont
Definition: plplot.h:733
static swig_cast_info _swigc__p_f_int_double_p_char_int_p_void__void[]
#define plend1
Definition: plplot.h:707
#define SWIG_POINTER_NOSHADOW
int PLINT
Definition: plplot.h:174
#define plenv0
Definition: plplot.h:709
SWIGINTERN PyObject * _wrap_PLGraphicsIn_type_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
PyObject * python_f2eval
#define PySequence_Size
SWIGINTERN PyObject * _wrap_pltr2(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plgcolbga(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plgdiori
Definition: plplot.h:727
SWIGRUNTIME void SWIG_Python_SetModule(swig_module_info *swig_module)
static PyObject * PyString_FromFormat(const char *fmt,...)
#define plshades
Definition: plplot.h:825
PLINT PLBOOL
Definition: plplot.h:197
getcharbufferproc charbufferproc
SWIGINTERN PyObject * _wrap_plsmema(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
PLcGrid * marshal_PLcGrid1(PyObject *input, int isimg)
SWIGINTERN PyObject * _wrap_plscmap1_range(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plssym
Definition: plplot.h:839
static swig_const_info swig_const_table[]
PLFLT_NC_MATRIX yg
Definition: plplot.h:532
#define pljoin
Definition: plplot.h:755
#define plgzax
Definition: plplot.h:746
SWIGINTERN PyObject * _wrap_PLGraphicsIn_dX_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_name
SWIGRUNTIME int SWIG_Python_ConvertFunctionPtr(PyObject *obj, void **ptr, swig_type_info *ty)
SWIGINTERN PyObject * _wrap_plgdev(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plsvpa(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plgfam
Definition: plplot.h:730
void do_mapform_callback(PLINT n, PLFLT *x, PLFLT *y)
SWIGINTERN PyObject * _wrap_pl_setcontlabelformat(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plsmem(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
static swig_type_info _swigt__p_char
intargfunc ssizeargfunc
#define SWIG_AddNewMask(r)
PLINT ny
Definition: plplot.h:521
#define plgdidev
Definition: plplot.h:726
#define SWIG_fail
SWIGINTERN PyObject * _wrap_plmapstring(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plstar
Definition: plplot.h:840
SWIGINTERN PyObject * _wrap_plstring3(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyTypeObject * swig_varlink_type(void)
SWIGRUNTIME void SWIG_Python_DestroyModule(void *vptr)
SWIGRUNTIME int SWIG_TypeNameComp(const char *f1, const char *l1, const char *f2, const char *l2)
static swig_type_info _swigt__p_PLcGrid
SWIGINTERN PyObject * _wrap_plerry(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME int SwigPyObject_compare(SwigPyObject *v, SwigPyObject *w)
SWIGINTERN int SWIG_AsVal_long(PyObject *obj, long *val)
#define plcpstrm
Definition: plplot.h:704
SWIGINTERN PyObject * _wrap_plparseopts(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plimagefr
Definition: plplot.h:753
#define plcalc_world
Definition: plplot.h:697
SWIGINTERN PyObject * _wrap_plxormod(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
PyNumberMethods as_number
SWIGRUNTIME char * SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz)
#define plsfnam
Definition: plplot.h:821
#define plhist
Definition: plplot.h:747
SWIGINTERN PyObject * _wrap_plfill3(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plsdimap(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_SystemError
SWIGINTERN PyObject * _wrap_plgcol0a(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME swig_type_info * SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr)
SWIGINTERN PyObject * _wrap_plResetOpts(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plSetUsage(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plslabelfunc(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
static PyObject * PyBool_FromLong(long ok)
#define plgchr
Definition: plplot.h:719
#define SWIG_OverflowError
SWIGINTERN PyObject * _wrap_plimage(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME void * SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int SWIGUNUSEDPARM(argnum), int flags)
SWIGINTERN PyObject * _wrap_plsurf3d(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
struct swig_module_info * next
void(* pltr_func)(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer)
static swig_cast_info _swigc__p_f_double_double_p_double_p_double_p_void__void[]
SWIGINTERN PyObject * _wrap_PLGraphicsIn_keysym_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plsdidev
Definition: plplot.h:811
SWIGINTERN int SWIG_AsVal_unsigned_SS_long(PyObject *obj, unsigned long *val)
#define plspal0
Definition: plplot.h:834
SWIGRUNTIME PyObject * SwigPyObject_New(void *ptr, swig_type_info *ty, int own)
SWIGINTERN int SWIG_Python_UnpackTuple(PyObject *args, const char *name, Py_ssize_t min, Py_ssize_t max, PyObject **objs)
plSetUsage
Definition: plplotc.py:8413
#define plfill3
Definition: plplot.h:715
SWIGINTERN PyObject * _wrap_plmeridians(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plsmema
Definition: plplot.h:829
SWIGINTERN PyObject * _wrap_plgyax(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERNINLINE PyObject * SWIG_From_int(int value)
swig_converter_func converter
#define PySequence_Fast_GET_ITEM
SWIGINTERN PyObject * _wrap_PLGraphicsIn_pY_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * SWIG_Python_AppendOutput(PyObject *result, PyObject *obj)
SWIGINTERN PyObject * _wrap_plfill(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_MemoryError
SWIGRUNTIME PyObject * SWIG_Python_TypeCache(void)
#define plseed
Definition: plplot.h:816
PLFLT_NC_FE_POINTER yg
Definition: plplot.h:520
#define plstring
Definition: plplot.h:843
plOptUsage
Definition: plplotc.py:8417
SWIGRUNTIME PyObject * SwigPyObject_richcompare(SwigPyObject *v, SwigPyObject *w, int op)
#define plstransform
Definition: plplot.h:842
#define plvect
Definition: plplot.h:860
SWIGINTERN PyObject * _wrap_plgchr(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
PyBufferProcs as_buffer
PyObject * python_ct
int(* set_attr)(PyObject *)
SWIGRUNTIME void SWIG_PropagateClientData(void)
#define SWIG_SetModule(clientdata, pointer)
SWIGINTERN PyObject * _wrap_plgradient(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
static swig_type_info _swigt__p_double
SWIGINTERN PyObject * SWIG_Python_InitShadowInstance(PyObject *args)
#define SWIG_exception_fail(code, msg)
intintargfunc ssizessizeargfunc
#define SWIG_PYTHON_THREAD_BEGIN_BLOCK
#define plscmap1la
Definition: plplot.h:800
SWIGINTERN PyObject * _wrap_plsxwin(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plgfnam
Definition: plplot.h:732
#define SWIG_TYPE_TABLE_NAME
SWIGRUNTIME char * SWIG_PackData(char *c, void *ptr, size_t sz)
SWIGINTERN PyObject * _wrap_plscolbga(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plcont
Definition: plplot.h:703
#define plsxax
Definition: plplot.h:853
#define plstart
Definition: plplot.h:841
plClearOpts
Definition: plplotc.py:8405
SWIGINTERN int SWIG_AsCharPtrAndSize(PyObject *obj, char **cptr, size_t *psize, int *alloc)
#define SWIG_NEWOBJ
SWIGRUNTIME void SwigPyClientData_Del(SwigPyClientData *data)
#define pleop
Definition: plplot.h:710
#define plmesh
Definition: plplot.h:769
#define plhlsrgb
Definition: plplot.h:751
swig_type_info ** types
SWIGRUNTIMEINLINE PyObject * SWIG_Py_Void(void)
getsegcountproc segcountproc
#define PyInt_FromSize_t(x)
#define plsmaj
Definition: plplot.h:827
PLINT nx
Definition: plplot.h:533
SWIGINTERN PyObject * _wrap_plsym(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
static swig_cast_info _swigc__p_unsigned_int[]
static PyMethodDef swigobject_methods[]
SWIGINTERN PyObject * _wrap_plfontld(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_pltext(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
static swig_cast_info _swigc__p_f_double_double__int[]
SWIGINTERN PyObject * _wrap_plgfnam(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
static swig_type_info _swigt__p_PLcGrid2
SWIGINTERN PyObject * SWIG_Python_newvarlink(void)
SWIGINTERN PyObject * _wrap_plenv0(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plcol1
Definition: plplot.h:700
#define pllab
Definition: plplot.h:756
#define pllightsource
Definition: plplot.h:758
#define PyObject_DEL
SWIGINTERN PyObject * _wrap_PLGraphicsIn_pX_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN void SWIG_Python_SetErrorMsg(PyObject *errtype, const char *msg)
SWIGRUNTIME PyObject * SwigPyObject_format(const char *fmt, SwigPyObject *v)
#define SWIG_RUNTIME_VERSION
#define plbox
Definition: plplot.h:694
pl_setcontlabelformat
Definition: tclgen_s.h:1
void do_label_callback(PLINT axis, PLFLT value, char *string, PLINT len, PLPointer data)
SWIGINTERN PyObject * _wrap_plgfont(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define pltext
Definition: plplot.h:857
SWIGRUNTIME PyTypeObject * SwigPyObject_TypeOnce(void)
SWIGINTERN PyObject * _wrap_plvpor(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_CAST_NEW_MEMORY
SWIGINTERN PyObject * _wrap_plsdiori(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN swig_type_info * SWIG_pchar_descriptor(void)
plMinMax2dGrid
Definition: plplotc.py:8421
#define plwidth
Definition: plplot.h:868
SWIGRUNTIMEINLINE int SwigPyObject_Check(PyObject *op)
#define plgver
Definition: plplot.h:741
#define SWIG_POINTER_IMPLICIT_CONV
PyObject * python_pltr
SWIGINTERN PyObject * _wrap_plline3(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME swig_cast_info * SWIG_TypeCheck(const char *c, swig_type_info *ty)
SWIGINTERN PyObject * _wrap_plcol1(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERNINLINE PyObject * SWIG_From_unsigned_SS_int(unsigned int value)
#define plscol0a
Definition: plplot.h:805
SWIGINTERN PyObject * SwigPyObject_disown(PyObject *v, PyObject *SWIGUNUSEDPARM(args))
#define plptex3
Definition: plplot.h:785
#define plsdiplz
Definition: plplot.h:815
void cleanup_PLcGrid2(void)
SWIGINTERN PyObject * _wrap_plvpas(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
static char buf[200]
Definition: tclAPI.c:873
#define SWIG_NewClientData(obj)
#define SWIG_ERROR
#define plspause
Definition: plplot.h:836
SWIGINTERN PyObject * _wrap_PLGraphicsIn_pY_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plgcmap1_range(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME PyObject * SwigPyObject_next(PyObject *v, PyObject *SWIGUNUSEDPARM(args))
#define PyOS_snprintf
#define plline3
Definition: plplot.h:761
SWIGINTERN PyObject * _wrap_PLGraphicsIn_pX_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plstripd
Definition: plplot.h:847
#define plgfci
Definition: plplot.h:731
SWIGINTERN int SWIG_AsVal_int(PyObject *obj, int *val)
#define plgspa
Definition: plplot.h:739
#define plgcolbg
Definition: plplot.h:722
#define plstripc
Definition: plplot.h:846
SWIGINTERN PyObject * _wrap_plgzax(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_NewPackedObj(ptr, sz, type)
SWIGINTERN PyObject * _wrap_plstart(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME swig_module_info * SWIG_Python_GetModule(void *SWIGUNUSEDPARM(clientdata))
#define plstripa
Definition: plplot.h:845
SWIGINTERN PyObject * _wrap_plgfci(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plrgbhls(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plstring3
Definition: plplot.h:844
void cleanup_PLPointer(void)
SWIGINTERN PyObject * _wrap_plshade(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME int SWIG_TypeEquiv(const char *nb, const char *tb)
PyObject *(* get_attr)(void)
#define plvpas
Definition: plplot.h:861
SWIGINTERN PyObject * _wrap_plsfnam(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plgdiplt(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_delete_PLGraphicsIn(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIMEINLINE const char * SwigPyObject_GetDesc(PyObject *self)
SWIGINTERN PyObject * _wrap_plw3d(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN int PyModule_AddObject(PyObject *m, char *name, PyObject *o)
destructor freefunc
#define SWIG_ValueError
PySequenceMethods as_sequence
#define plsfont
Definition: plplot.h:822
void plmapfill(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy, PLINT_VECTOR plotentries, PLINT nplotentries)
Definition: plmap.c:695
#define PyObject_GenericGetAttr
SWIGINTERN PyObject * swig_varlink_str(swig_varlinkobject *v)
SWIGRUNTIME SwigPyObject * SWIG_Python_GetSwigThis(PyObject *pyobj)
static PLINT Xlen
SWIGRUNTIME PyObject * SwigPyObject_append(PyObject *v, PyObject *next)
#define plpsty
Definition: plplot.h:783
#define MY_UNBLOCK_THREADS
SWIGINTERN PyObject * _wrap_plszax(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plstransform(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME swig_type_info * SwigPyPacked_UnpackData(PyObject *obj, void *ptr, size_t size)
struct swig_module_info swig_module_info
struct swig_type_info *(* swig_dycast_func)(void **)
static PLFLT value(double n1, double n2, double hue)
Definition: plctrl.c:1209
SWIGINTERN PyObject * _wrap_plvasp(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plgvpd
Definition: plplot.h:742
#define plpoin
Definition: plplot.h:779
#define plgriddata
Definition: plplot.h:738
static swig_type_info _swigt__p_f_double_double_p_double_p_double_p_void__void
#define plgvpw
Definition: plplot.h:743
SWIGINTERN PyObject * _wrap_plerrx(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME void SWIG_Python_SetSwigThis(PyObject *inst, PyObject *swig_this)
SWIGINTERN PyObject * _wrap_plschr(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIGTYPE_p_PLGraphicsIn
void(* label_func)(PLINT, PLFLT, char *, PLINT, PLPointer)
#define SWIG_IsOK(r)
SWIGINTERN PyObject * _wrap_PLGraphicsIn_dY_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plstar(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plpoly3(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_PLGraphicsIn_type_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
int max(int a, int b)
SWIGINTERN PyObject * _wrap_plimagefr(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plgcompression(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME int SWIG_Python_ArgFail(int argnum)
SWIGINTERN PyObject * _wrap_plgcolbg(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plclear(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
void cleanup_pltr(void)
SWIGRUNTIME void SwigPyObject_dealloc(PyObject *v)
static swig_cast_info _swigc__p_f_int_p_double_p_double__void[]
#define SWIG_CheckState(r)
SWIGINTERN PyObject * _wrap_plsstrm(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
PyArrayObject * pltr_yg
static swig_type_info * swig_types[15]
#define t_output_helper
SWIGINTERN PyObject * _wrap_plscol0(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plssym(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plmkstrm
Definition: plplot.h:771
#define PL_UNUSED(x)
Definition: plplot.h:128
intintobjargproc ssizessizeobjargproc
#define SWIG_InternalNewPointerObj(ptr, type, flags)
float PLFLT
Definition: plplot.h:157
SWIGINTERN PyObject * _wrap_plcalc_world(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plscol0
Definition: plplot.h:804
SWIGRUNTIME PyObject * SwigPyPacked_New(void *ptr, size_t size, swig_type_info *ty)
#define plxormod
Definition: plplot.h:870
SWIGINTERN PyObject * _wrap_plscolor(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define Py_TYPE(op)
#define plflush
Definition: plplot.h:716
#define plerrx
Definition: plplot.h:711
void cleanup_ct(void)
#define plgcol0a
Definition: plplot.h:721
SWIGINTERN int SWIG_AsCharArray(PyObject *obj, char *val, size_t size)
static swig_cast_info * swig_cast_initial[]
SWIGRUNTIME PyObject * SWIG_This(void)
getreadbufferproc readbufferproc
#define plgcolbga
Definition: plplot.h:723
#define myArray_ContiguousFromObject
SWIGRUNTIME PyObject * SWIG_Python_ErrorType(int code)
PLINT(* defined_func)(PLFLT, PLFLT)
static swig_cast_info _swigc__p_PLGraphicsIn[]
SWIGRUNTIME PyObject * SwigPyObject_oct(SwigPyObject *v)
#define SWIG_ArgError(r)
SWIGINTERN PyObject * _wrap_plgspa(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plcpstrm(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_pllegend(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plgyax
Definition: plplot.h:745
SWIGINTERN PyObject * _wrap_PLGraphicsIn_subwindow_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plsesc
Definition: plplot.h:817
SWIGINTERN PyObject * _wrap_PLGraphicsIn_dY_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plsfci(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plenv
Definition: plplot.h:708
int Py_ssize_t
#define SWIG_newvarlink()
struct swig_cast_info * next
SWIGINTERN PyObject * _wrap_plmaptex(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plsori(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
PLcGrid2 * marshal_PLcGrid2(PyObject *input, int isimg)
static swig_type_info _swigt__p_f_int_p_double_p_double__void
SWIGINTERN PyObject * _wrap_plot3dcl(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_POINTER_DISOWN
#define plgcmap1_range
Definition: plplot.h:803
SWIGINTERN PyObject * _wrap_plcol0(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME int SWIG_Python_AcquirePtr(PyObject *obj, int own)
#define plcol0
Definition: plplot.h:699
SWIGINTERN PyObject * _wrap_pllsty(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plbox3
Definition: plplot.h:695
SWIGRUNTIME PyObject * SwigPyPacked_str(SwigPyPacked *v)
SWIGINTERN int swig_varlink_print(swig_varlinkobject *v, FILE *fp, int SWIGUNUSEDPARM(flags))
SWIGINTERN PyObject * _wrap_pllab(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_From_double
#define plcolorbar
Definition: plplot.h:701
static swig_cast_info _swigc__p_PLcGrid[]
static long PyNumber_AsSsize_t(PyObject *x, void *SWIGUNUSEDPARM(exc))
swig_type_info * ty
intobjargproc ssizeobjargproc
SWIGRUNTIME PyObject * SwigPyObject_long(SwigPyObject *v)
SWIGINTERN PyObject * _wrap_plhlsrgb(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plglevel
Definition: plplot.h:734
PLFLT_NC_FE_POINTER xg
Definition: plplot.h:520
SWIGINTERN PyObject * _wrap_plreplot(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plpoin3
Definition: plplot.h:780
SWIGINTERN PyObject * _wrap_plsmaj(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plwidth(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plscmap0n
Definition: plplot.h:796
SWIGRUNTIME void SWIG_Python_TypeError(const char *type, PyObject *obj)
#define plscolor
Definition: plplot.h:808
#define plsvpa
Definition: plplot.h:852
SWIGINTERN PyObject * _wrap_plprec(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plsurf3dl(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plarc(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
static tclMatrixXtnsnDescr * tail
Definition: tclMatrix.c:461
#define plpat
Definition: plplot.h:778
SWIGINTERN PyObject * _wrap_PLGraphicsIn_button_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plscmap1_range
Definition: plplot.h:802
void(* ct_func)(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer)
SWIGRUNTIME PyObject * SwigPyPacked_repr(SwigPyPacked *v)
#define SWIGINTERN
struct swig_cast_info * prev
#define SWIG_IsNewObj(r)
#define plgcol0
Definition: plplot.h:720
SWIGRUNTIMEINLINE void * SWIG_TypeCast(swig_cast_info *ty, void *ptr, int *newmemory)
SWIGINTERN PyObject * _wrap_plcolorbar(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME void SWIG_InitializeModule(void *clientdata)
PyObject * python_mapform
#define plreplot
Definition: plplot.h:787
swig_cast_info ** cast_initial
#define SWIGRUNTIMEINLINE
SWIGINTERN PyObject * _wrap_plgstrm(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plvect(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_as_voidptr(a)
void(* fill_func)(PLINT, const PLFLT *, const PLFLT *)
SWIGINTERN PyObject * _wrap_plptex3(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME PyObject * SWIG_Python_NewShadowInstance(SwigPyClientData *data, PyObject *swig_this)
#define SWIGTYPE_p_int
SWIGINTERN PyObject * _wrap_PLGraphicsIn_state_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME void SWIG_Python_AddErrorMsg(const char *mesg)
#define plscmap1l
Definition: plplot.h:799
void plmap(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy)
Definition: plmap.c:599
#define plprec
Definition: plplot.h:782
#define plptex
Definition: plplot.h:784
SWIGINTERN PyObject * _wrap_PLGraphicsIn_wY_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plline
Definition: plplot.h:759
SWIGINTERN PyObject * _wrap_plscmap0a(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN void SWIG_Python_FixMethods(PyMethodDef *methods, swig_const_info *const_table, swig_type_info **types, swig_type_info **types_initial)
PLFLT_NC_MATRIX xg
Definition: plplot.h:532
SWIGINTERN void SWIG_Python_SetErrorObj(PyObject *errtype, PyObject *obj)
SWIGRUNTIME swig_cast_info * SWIG_TypeCheckStruct(swig_type_info *from, swig_type_info *ty)
enum callback_type pltr_type
SWIGINTERN PyObject * _wrap_plgvpw(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_SyntaxError
#define plgradient
Definition: plplot.h:737
PLFLT do_f2eval_callback(PLINT x, PLINT y, PLPointer data)
SWIGRUNTIME int SwigPyPacked_print(SwigPyPacked *v, FILE *fp, int SWIGUNUSEDPARM(flags))
swig_type_info ** type_initial
SWIGINTERN PyObject * _wrap_plscmap0(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIGRUNTIME
SWIGINTERN PyObject * _wrap_plspal0(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN int SWIG_AsVal_char(PyObject *obj, char *val)
static swig_cast_info _swigc__p_p_char[]
SWIGINTERN PyObject * _wrap_plmeshc(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define NPY_PLFLT
SWIGINTERN PyObject * _wrap_pladv(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define pladv
Definition: plplot.h:689
SWIGINTERN PyObject * _wrap_plstripd(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME PyObject * SwigPyObject_hex(SwigPyObject *v)
SWIGINTERN PyObject * _wrap_plsfam(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIGTYPE_p_double
SWIGINTERN PyObject * _wrap_plgra(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plvasp
Definition: plplot.h:859
#define plrandd
Definition: plplot.h:786
#define SWIG_PY_POINTER
SWIGINTERN PyObject * _wrap_plsxax(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIG_AddCast(r)
SWIGRUNTIME const char * SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name)
#define plscmap0
Definition: plplot.h:794
SWIGINTERN PyObject * _wrap_plssub(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
void plmapstring(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLCHAR_VECTOR string, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy, PLINT_VECTOR plotentries, PLINT nplotentries)
Definition: plmap.c:650
#define plgstrm
Definition: plplot.h:740
SWIGINTERN PyObject * _wrap_plaxes(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define SWIGTYPE_p_unsigned_int
#define plsfci
Definition: plplot.h:820
SWIGINTERN PyObject * _wrap_plgdiori(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_pl_setcontlabelparam(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
static swig_cast_info _swigc__p_f_int_p_q_const__double_p_q_const__double__void[]
char string[PL_MAXKEY]
Definition: plplot.h:452
plResetOpts
Definition: plplotc.py:8409
SWIGINTERN PyObject * _wrap_plgver(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plmtex
Definition: plplot.h:772
static swig_cast_info _swigc__p_int[]
#define plrgbhls
Definition: plplot.h:792
#define plsurf3d
Definition: plplot.h:849
mapform_func marshal_mapform(PyObject *input)
#define plgra
Definition: plplot.h:736
SWIGINTERN PyObject * _wrap_plscmap1n(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plsdiplz(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_PLGraphicsIn_keysym_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plClearOpts(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plsdimap
Definition: plplot.h:812
struct swig_const_info swig_const_info
SWIGINTERN PyObject * _wrap_plgriddata(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME PyTypeObject * SwigPyObject_type(void)
SWIGINTERN PyObject * _wrap_plend(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_PLGraphicsIn_string_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plpat(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGRUNTIME int SWIG_TypeCmp(const char *nb, const char *tb)
SWIGINTERN PyObject * SWIG_globals(void)
static swig_cast_info _swigc__p_char[]
#define plot3d
Definition: plplot.h:774
SWIGINTERN PyObject * _wrap_plstripc(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plsvect(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plsesc(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_plsdiplt(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_PLGraphicsIn_wX_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
#define plslabelfunc
Definition: plplot.h:826
PLINT nx
Definition: plplot.h:521
SWIGINTERN PyObject * _wrap_plscmap1a(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
PyArrayObject * myIntArray_ContiguousFromObject(PyObject *in, int type, int mindims, int maxdims)
SWIGINTERN PyObject * _wrap_plscmap1la(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * _wrap_pltr0(PyObject *SWIGUNUSEDPARM(self), PyObject *args)
SWIGINTERN PyObject * PLGraphicsIn_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args)